Comment puis-je déterminer si un répertoire donné sur une machine Linux provient d'un lecteur monté NFS ou non?
Comment puis-je déterminer si un répertoire donné sur une machine Linux provient d'un lecteur monté NFS ou non?
Réponses:
Vous pouvez utiliser df -t nfs <directory>
, ce qui produira une sortie comme
$ df /home/aland/ -t nfs
Filesystem 1K-blocks Used Available Use% Mounted on
nfs_oscar:/home 1255425376 874128064 316496736 74% /home
si le répertoire est lié au montage NFS, et rien sinon:
$ df /root/ -t nfs
Filesystem 1K-blocks Used Available Use% Mounted on
Edit: plus simple: df -T <directory>
(drapeau -P
est utilisé pour désactiver la mise en forme assez pour faciliter tail
ING et awk
ING):
$ df /home/aland/ -TP | tail -n -1 | awk '{print $2}'
nfs
Vous pouvez utiliser l' stat
utilitaire avec -f
pour indiquer que vous recherchez des informations sur le système de fichiers.
Par exemple:
$ stat -f -c %T .
ext2/ext3
$ stat -f -c %T /sys
sysfs
$ stat -f -c %T /proc
proc
$ if [[ $(stat -f -c %T /proc) == proc ]] ; then echo Good ; fi
Good
(Voir la page de manuel pour les différentes options de formatage. Désolé, je n'ai pas de montage NFS à portée de main.)
Je voudrais simplement utiliser l'outil par défaut mountpoint
:
NAME
mountpoint - see if a directory is a mountpoint
SYNOPSIS
mountpoint [-d|-q] directory
Puisque vous parlez spécifiquement de NFS
, cela signifie que vous avez également accès à showmount
, sauf que cela fonctionne dans l’inverse (à partir d’un hôte au lieu d’un répertoire):
NAME
showmount - show mount information for an NFS server
SYNOPSIS
showmount [ -adehv ] [ --all ] [ --directories ] [ --exports ] [ --help ] [ --version ] [ host ]