(6 Antworten)
Vor 3 Jahren geschlossen.
So prüfen Sie, ob ein bestimmtes Verzeichnis auf dem Linux-Rechner gemountet ist.
Zum Beispiel gibt es einen Ordner namens test, ich möchte prüfen, ob er gemountet ist oder nicht.
Akzeptierte Antwort:
Wenn Sie überprüfen möchten, ob es sich um den Einhängepunkt eines Dateisystems handelt, ist das der mountpoint Befehl (auf den meisten Linux-basierten Systemen) ist für:
if mountpoint -q -- "$dir"; then
printf '%sn' "$dir is a mount point"
fi
Dazu prüft es, ob . und .. dieselbe Gerätenummer haben (st_dev in stat() Ergebnis). Wenn Sie also den mountpoint nicht haben Befehl, könnten Sie Folgendes tun:
perl -le '$dir = shift; exit(1) unless
(@a = stat "$dir/." and @b = stat "$dir/.." and
($a[0] != $b[0] || $a[1] == $b[1]))' "$dir"
Wie mountpoint , wird für / true zurückgegeben auch wenn / ist kein Einhängepunkt (wie in einer chroot Gefängnis) oder false für einen Einhängepunkt einer Bindung Mount desselben Dateisystems in sich selbst.
Im Gegensatz zu mountpoint , bei symbolischen Links wird überprüft, ob das Ziel des symbolischen Links ein Einhängepunkt ist.