Новелла тридцатая, из которой дамы и кавалеры узнают о номенклатуре накопителей дисковых накопителей

Разметка диска — это, как уже говорилось неоднократно, один из самых ответственных моментов в ходе установки Linux. Однако прежде чем перейти к этому вопросу, необходимо ознакомиться с номенклатурой дисковых накопителей.

Диски и их разделы в Linux (и всех других UNIX-подобных системах) предстают перед пользователем как файлы особого типа — файлы устройств. Имена таких файлов формируются по определенным правилам. Правда, за время существования Linux правила эти менялись неоднократно, но к настоящему времени как-будто бы устоялись.

Ныне для всех дисков, вне зависимости от их интерфейса, принята такая номенклатура: /dev/sda, /dev/sdb и так далее. Здесь /dev — это каталог, предназначенный для специально для хранения файлов устройств, так что собственно имена дисковых устройств — sda, sdb и так далее, в порядке подключения к разъёмам SATA, каналам PATA, шине SCSI.

Эта же номенклатура распространяется также на внешние накопители — мобильные винчестеры с интерфейсами eSTA, USB и FireWire, USB-флэш-драйвы, встроенные и сменные носители цифровых камер: каждый из них в момент подключении маркируется следующей свободной литерой. Лишь для оптических приводов сделано исключение — соответствующие им файлы устройств выглядят как /dev/sr0.

Именование дисков по файлам их устройств позволяет системе идентифицировать их почти однозначно. Однако теоретически возможны ситуации, влекущие неопределённость, например, переключение дисков на другие разъёмы. К тому же система при опделелении дисков оперирует не именами их файлов, а внутренними уникальными идентификаторами — UUID. Они представляют собой зубодробительно длинную (128-битную) последовательность цифр, представляемых обычно в шестнадцатеричной системе, выглядящую примерно так:

$ ls /dev/disk/by-uuid
36914198-668f-43c7-a02b-3e80ce44e575
...

Она генерируется автоматически по неким правилам, в Linux’е определяемым библиотекой libuuid. Астрономическое количество возможных сочетаний цифр практически гарантирует уникальность UUID в течении ближайщих миллиардов лет. А поскольку, согласно классикам, до конца света этих лет остаётся всего-навсего миллиард, то лимита уникальности хватит с хорошим запасом. Хотя возможно и повторное использование того же UUID — но уже осознанно, в определённых целях, и это тема совсем других новелл.

Идентификация по UUID применима не только к дискам, но и ко всем остальным без исключения устройствам, почему и получила такое имя (Universally Unique Identifier — Универсальный Уникальный ИДентификатор; так и хочется добавить — и генералиссимус).

Кроме того, идентификация дисков возможна также по их ID, получаемым от BIOS’а, что выглядит примерно так:

$ ls /dev/disk/by-id
dev/disk/by-id/ata-SAMSUNG_HN-M500MBB_S2RSJ9CBA14251
...

Здесь идентификатор присваивается производителем устройства, который и обязан следить за его уникальностью.

Наконец, последний способ идентификации накопителей — с помощью указания пути к ним. Выглядить это так:

$ ls /dev/disk/by-path
pci-0000:00:1f.2-scsi-0:0:0:0
...

На практике последние два способа идентификации встречаются редко. По крайней мере, до недавнего времени мне с ними сталкивать не приходилось. Но вот инсталлятор openSUSE, как мы вскоре узнаем, предоставляет выбор между любым из перечисленных методов. Хотя я таки до сих пор не предсталяю ситуации, когда может понадобиться идентификация через ID BIOS’а или по указанию пути.


Назад | К содержанию | Вперёд