Крепление с помощью UUID или LABEL

В Linux можно смонтировать устройство (диск) по UUID или метке. Некоторое время я использовал UUID, главным образом потому, что меня привлекли к обсуждению IRC о том, что монтирование по меткам было действительно ужасной идеей.

Я не понимаю, почему монтирование по метке было бы плохой идеей, если бы было выбрано довольно уникальное имя метки, такое как 6581_var, 6502_root, 8580_home, DFF180_usr, 68030_boot, BFEC01_WD_Disk05. так далее....;)

Итак, мои вопросы:

  1. Почему стоит всегда монтировать с UUID?
  2. Почему плохая идея всегда монтировать с UUID?
  3. Почему стоит всегда монтировать с LABEL?
  4. Почему плохая идея всегда монтировать с LABEL?
  5. Есть ли преимущество в выборе одного из другого для систем, использующих systemd?
  6. Что может быть испорчено? ЭТИКЕТКА или UUID
  7. Если диск, например, получает обновление прошивки, может ли это изменить UUID?!

1 ответ

Решение

ответы

  • Q1-4: это не так. Правильный инструмент должен использоваться для конкретной цели. Увидеть ниже.
  • В5: Система, использующая systemd, достаточно развита, чтобы не показывать никакой разницы.
  • Q6: в общем случае - нет. Они оба хранятся в одном месте (форматирование заголовка или около того) и изменяются одним и тем же механизмом.
  • Q7: Нет. UUID раздела может быть изменен только напрямую (см. Ниже) или путем переформатирования (т.е. создания нового форматирования) раздела.

На самом деле

Предполагая, что мы говорим о форматировании разделов (например, файловая система), UUID и Label.

Существуют также разделы UUID и Label, обычно называемые partUUID и partlabel, если их поддерживает схема разбиения диска: например, GPT, но не MBR. Они также могут быть использованы для идентификации раздела и, в некоторых случаях (см. Ниже), могут быть единственным способом сделать это.

И UUID, и Label управляются с помощью инструментов, специфичных для используемого форматирования раздела:

  • ext2 / 3/4: tune2fs
  • ЖИР: mlabel
  • своп: swaplabel
  • LUKS: cryptsetup luksUUID
  • ...

Обратите внимание, что UUID и Label существуют, только если существует форматирование раздела (и поддерживается вашим ядром), и форматирование поддерживает атрибуты UUID и / или Label. Например, раздел, зашифрованный с помощью dm-crypt без расширения LUKS, не имеет UUID и метки, так как не использует никаких заголовков (но файловая система внутри зашифрованного контейнера может иметь их оба). Файловые системы семейства FAT не поддерживают UUID (вместо них есть серийный номер), но поддерживают Label.

Основные различия между использованием Label и UUID:

  • UUID для нижнего уровня
    • создается автоматически (всегда существует)
    • управляется автоматически
    • гарантированно будет уникальным (в большинстве случаев)
    • не дружелюбный человек
  • Метка для более высокого уровня
    • должен быть создан явно
    • управляемый вручную
    • дружелюбный (легко запомнить и напечатать)

Поэтому, если вы не собираетесь управлять метками для раздела (ов), выбор очевиден - UUID. Если вам нужна большая гибкость и / или удобочитаемость для конфигурации вашей системы - вы можете использовать метки.

Например, для клонированных или автоматически управляемых систем использование меток может быть более подходящим: после клонирования системы UUID могут измениться. Если не для ext2/3/4 (зависит от метода клонирования), он определенно изменится для LUKS-зашифрованных разделов (нам нужно сделать luksFormat хотя бы создать новый ключ шифрования). Так что использование Label в этом случае может быть удобным.

Также правило Udev монтирует съемные носители в /media/<user>/<label> если ярлык выходит. Если не - /media/<user>/<UUID> используется вместо

Другие вопросы по тегам