Unter Linux ist es möglich, ein Gerät (eine Festplatte) per UUID oder Label zu mounten. Ich habe UUID eine Zeit lang verwendet, hauptsächlich, weil ich im IRC auf eine Diskussion gestoßen bin, in der es hieß, das Mounten per Label sei eine wirklich schreckliche Idee.
Ich verstehe nicht, warum das Mounten per Label eine schlechte Idee sein sollte, wenn man einen ziemlich eindeutigen Labelnamen wie 6581_var, 6502_root, 8580_home, DFF180_usr, 68030_boot, BFEC01_WD_Disk05 usw. wählt. ;)
Meine Fragen sind also:
- Warum ist es eine gute Idee, immer mit UUID zu mounten?
- Warum ist es eine schlechte Idee, immer mit UUID zu mounten?
- Warum ist es eine gute Idee, immer mit LABEL zu montieren?
- Warum ist es eine schlechte Idee, immer mit LABEL zu mounten?
- Gibt es einen Vorteil, wenn man bei Systemen, die systemd verwenden, das eine dem anderen vorzieht?!
- Was wird eher beschädigt? Ein LABEL oder eine UUID
- Wenn beispielsweise eine Festplatte ein Firmware-Upgrade erhält, kann das die UUID ändern?!
Antwort1
Antworten
- Frage 1-4: Das ist es nicht. Für den jeweiligen Zweck muss das richtige Werkzeug verwendet werden. Siehe unten.
- Frage Q5: Systeme, die systemd verwenden, sind weit genug entwickelt, um keinen Unterschied zu zeigen.
- Frage 6: Im Normalfall – keines von beiden. Sie werden beide an derselben Stelle gespeichert (Formatierungskopfzeile oder so) und durch denselben Mechanismus geändert.
- Frage 7: Nein. Die Partitions-UUID kann nur direkt (siehe unten) oder durch Neuformatierung (d. h. Erstellen einer neuen Formatierung) der Partition geändert werden.
Eigentlich
Angenommen, wir sprechen über die Formatierung von Partitionen (z. B. Dateisysteme)UUIDUndEtikett.
Es gibt auch Partitions-UUID und -Label - allgemeinTeil-UUIDUndTeilebezeichnung- wenn das Festplattenpartitionierungsschema sie unterstützt: z. B. GPT, aber nicht MBR. Sie können auch zur Identifizierung von Partitionen verwendet werden und können in einigen Fällen (siehe unten) die einzige Möglichkeit sein, dies zu tun.
BeideUUIDUndEtikettwerden mit Tools verwaltet, die speziell für die verwendete Partitionsformatierung bestimmt sind:
- ext2/3/4:
tune2fs
- FETT:
mlabel
- tauschen:
swaplabel
- LUKS:
cryptsetup luksUUID
- ...
Bitte beachten Sie, beideUUIDUndEtikettexistieren nur, wenn eine Partitionsformatierung existiert (und von Ihrem Kernel unterstützt wird) und die Formatierung unterstütztUUIDund/oderEtikettAttribute. Beispielsweise hat eine mit dm-crypt ohne LUKS-Erweiterung verschlüsselte Partition nichtUUIDUndEtikettda es keinen Header verwendet (aber das Dateisystem im verschlüsselten Container könnte beide haben). Dateisysteme der FAT-Familie unterstützen nichtUUID(sie haben stattdessen eine Seriennummer), unterstützen aberEtikett.
Die Hauptunterschiede zwischen der Verwendung von Label und UUID sind:
- UUIDist für niedrigere Ebene
- automatisch erstellt (ist immer vorhanden)
- automatisch verwaltet
- garantiert einzigartig (in den meisten Fällen)
- nicht menschenfreundlich
- Etikettist für höheres Niveau
- sollte explizit erstellt werden
- manuell verwaltet
- benutzerfreundlich (leicht zu merken und einzutippen)
Wenn Sie also keine Bezeichnungen für Partitionen verwalten möchten, ist die Wahl offensichtlich: UUID. Wenn Sie mehr Flexibilität und/oder Lesbarkeit für Ihre Systemkonfiguration benötigen, können Sie Bezeichnungen verwenden.
Zum Beispiel für geklonte oderautomatisch verwaltetSysteme mit Labels könnten besser geeignet sein: Nach dem Klonen des Systems könnten sich die UUIDs ändern. Wenn nicht für ext2/3/4 (hängt von der Klonmethode ab), ändern sie sich definitiv für LUKS-verschlüsselte Partitionen (wir müssen luksFormat
zumindest einen neuen Verschlüsselungsschlüssel erstellen). Verwenden Sie alsoEtikettin diesem Fall könnte es praktisch sein.
Außerdem mountet Udev Regel Wechseldatenträger, /media/<user>/<label>
wennEtikettbeendet. Wenn nicht, /media/<user>/<UUID>
wird stattdessen verwendet.