Монтировать по UUID или МЕТКЕ

Монтировать по UUID или МЕТКЕ

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

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

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

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

решение1

Ответы

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

На самом деле

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

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

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

  • доб2/3/4:tune2fs
  • ТОЛСТЫЙ:mlabel
  • менять:swaplabel
  • ЛЮКС:cryptsetup luksUUID
  • ...

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

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

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

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

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

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

Связанный контент