Ich suche nach einem Befehl, um zu prüfen, ob ein NFS-Ordner soft gemountet ist. Meine fstab lautet:
10.10.1.3:/home/share3 /home/share3 nfs soft 0 0
Antwort1
Obwohl ich wahrscheinlich verwendet hätte mount
(wie beschrieben inAntwort von walinator) ich selbst, laut der man mount
wir uns die Angewohnheit abgewöhnen sollten:
The listing. The listing mode is maintained for backward compatibility only. For more robust and customizable output use findmnt(8), espe‐ cially in your scripts.
Der findmnt
Befehl bietet auch etwas mehr Flexibilität – Sie können beispielsweise direkt nach Quelle oder Ziel suchen (ohne dies tun zu müssen grep
) und nur die dateisystemspezifischen Optionen ausgeben. Vergleichen Sie:
$ mount -t nfs | grep public
192.168.1.127:/c/public on /mnt/nfs/public type nfs (rw,relatime,vers=3,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=192.168.1.127,mountvers=3,mountport=3097,mountproto=udp,local_lock=none,addr=192.168.1.127)
Zu
$ findmnt -nM /mnt/nfs/public -oFS-OPTIONS
rw,vers=3,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=192.168.1.127,mountvers=3,mountport=3097,mountproto=udp,local_lock=none,addr=192.168.1.127
Ich glaube nicht, dass es (noch) eine Möglichkeit bietet, die Werte bestimmter Optionen direkt abzurufen, daher wäre hierfür immer noch ein „ grep
oder“ erforderlich.awk
$ findmnt -nM /mnt/nfs/public -oFS-OPTIONS | grep -qE '\bsoft\b' && echo "soft" || echo "hard"
hard
In Ihrem Fall wäre es
findmnt -nM /home/share3 -oFS-OPTIONS | grep -qE '\bsoft\b' && echo "soft" || echo "hard"
Antwort2
Mit dem Befehl können Sie mount
alle Ihre Halterungen anzeigen (oder ansehen /etc/mtab
), mit dem grep
Befehl Ihre spezifische Halterung auswählen und mit einem weiteren grep
nach Folgendem suchen soft
:
mount | grep /home/share3 | grep -q soft
if [[ $? -eq 0 ]] ; then
echo "/home/share3 is mounted with 'soft'"
else
echo "/home/share3 is not mounted with 'soft'"
fi