Wenn ich die UUID einer Laufwerkspartition habe, wie kann ich dann über die Befehlszeile herausfinden, ob sie angehängt ist oder nicht?
command-line
mount
disk
partitions
Arronisch
quelle
quelle
tune2fs
.tune2fs -U random /dev/sdxx
. Dies funktioniert jedoch nicht für alle Arten von Partitionen.Antworten:
lsblk
könnte helfen. Es kann nur die UUID und den Einhängepunkt drucken. Überprüfen Sie daher anhand der UUID, ob der Einhängepunkt nicht leer ist:So:
Da Sie
lbslk
auf bestimmten Geräten arbeiten können, können Sie auch Folgendes tun:Bei der ersten Methode tritt kein Fehler auf, wenn diese UUID nicht von einer aktuell verbundenen Festplatte stammt. Bei der zweiten Methode
lsblk
wird ein Fehler ausgegeben, wenn er/dev/disk/by-uuid/$uuid
nicht vorhanden ist.quelle
Wenn Sie nur eine Zeile mit Ihrer UUID und Ihrem Einhängepunkt wünschen ($ UUID steht für Ihre UUID):
Der Bereitstellungspunkt ist leer, wenn er nicht bereitgestellt ist. Probieren Sie
lsblk -h
weitere Optionen aus.Verwenden Sie
awk
, um das Ergebnis auszudrucken. WennNF
(Anzahl der Felder) mehr als eins ist, bedeutet dies, dass es einen Einhängepunkt hat:quelle
Wenn Sie die Details ab wollen
mount
Ersetzen Sie
your-UUID-here
durch Ihre UUIDbesser lesbar:
Ausgabebeispiel:
Sie können einfach überprüfen, ob die Zeichenfolge nicht null ist und "eingehängt" ausgeben:
aber andere gaben bessere Möglichkeiten, das zu tun :)
quelle
Ubuntu verwendet einen
UDisks2
Daemon, der eine ganze Reihe von Informationen über Dateisysteme abfragt, und wir könnenudisksctl
seine Ausgabe verwenden und filtern, um einen schnellen und unsauberen Weg zu finden, um die benötigten Informationen zu finden:Was Sie oben sehen, wird im Grunde UUIDs von Dateisystemen und deren Mountpunkten drucken. Durch visuelle Prüfung können Sie jetzt herausfinden, welche UUID aktiviert ist und welche nicht.
quelle
Meine Lösung
procfs
daher keine seltsamen Formatierungsprobleme bei der Befehlsausgabequelle
Aufbauend auf den hervorragenden Antworten, die ich auf diese Frage erhalten habe, wurde mir klar, dass es viel einfacher ist, mit Gerätenamen zu arbeiten. So rufen Sie den Gerätenamen von der UUID ab:
Was bedeutet, dass ich schnell ableiten kann, ob es gemountet ist, indem ich die Ausgabe von
df
:Oder indem Sie den Code in Murus Antwort verwenden , der den zusätzlichen Vorteil hat, mir mitzuteilen, wo das Laufwerk eingebunden ist:
quelle
Mit dem
df
Befehl können Sie die bereitgestellten Dateisysteme und ihren Bereitstellungspunkt anzeigen. Hier ist ein Beispiel von meinem Computer ... die Partitionsdb3
, auf der ich ein anderes System installiert habe, ist nicht gemountet, daher nicht aufgelistet (Partitionen sind neu beschriftet, daher werden Namen anstelle von UUIDs angezeigt):quelle
df
?Wenn es einen Link namens "
the_UUID
" in/dev/disk/by-uuid/
der Partition gibt, wird gemountet. Auf meinem Ubuntu 14.04.5 (YMMV):quelle
dmesg
und/var/log/kern.log*
. Es hört sich so an, als ob das System mit dem Dateisystem auf der Partition nicht zufrieden ist und es nicht mounten kann. Eine mögliche Ursache ist der Windows-Ruhezustand./dev/disks/by-uuid/
Verzeichnis angezeigt wird, solange es nicht gemountet ist, aber verbunden und eingeschaltet ist ./dev/disk/by-uuid
und seine Gegenstücke enthalten alle UUIDs / IDs / Labels der angeschlossenen Geräte, die udev bekannt sind, unabhängig von ihrem Bereitstellungsstatus.