Практически одновременно с внедрением udev в обиход вошли диски с интерфейсом SATA — именно тогда прежние IDE-накопители стали обычно называть PATA-дисками. Будучи не совсем настоящими IDE, SATA-диски также воспринимались системой (почти) как SCSI, и файлы их устройств именовались аналогично — /dev/sda, /dev/sdb и так далее. Правда, издревле за поддержку интерфейсов ATA и SCSI в Linux отвечали разные подсистемы ядра. А тут, с появлением дисков SATA, к ним присоединилась поначалу ещё одна подсистема, предназначенная для поддержки нового интерфейса.

Однако очень скоро была разработана объединённая подсистема ATA-SCSI, поддерживающая любые накопители — PATA, SATA, eSATA, SCSI, SAS, USB. И в ней номенклатура накопителей в Linux вроде бы полностью унифицировалась. Вне зависимости от типа их интерфейса, внешнего или внутреннего исполнения, файл дискового устройства стал выглядеть как /dev/sd?, далее маркируясь литерами в порядке подключения:

  • сначала к внутренним SATA-разъёмам,
  • затем к дополнительному PATA-разъёму,
  • и наконец, к внешним разъёмам eSATA и USB.

Правила нумерации разделов на дисках при использовании разметки в стиле msdos остались без изменения:

  • файлы устройств первичных разделов, включая и тот, которому присвоен идентификатор расширенного, носят имена (например) от /dev/sda1 до /dev/sda4;
  • логические разделы в Extended partition по прежнему именуются от /dev/sda5 и далее.

А при начавшей распространяться схеме разметки GPT с именами дисковых разделов стало и того проще: они получали просто сквозную нумерацию, без всякой зауми с расширенными разделами и логическими разделами в них.

Однако очередные коррективы в номенклатуру накопителей внесло появление интерфейса SATA-III: она оказалась зависимой от его реализации в чипсетах материнских плат или внешних контроллеров. Правда, с последними всё более или менее ясно — подсоединённые к ним накопители получали следующие литеры после чипсетных. Также не возникало сложностей и с чипсетами AMD, поддерживающими SATA-III (в южных мостах, начиная с SB 850): поскольку все шесть каналов в них равноценны, то и накопители на них маркируются литерами по порядку подсоединения.

Сложнее с чипсетами Intel 7-й серии: в них из шести каналов только два поддерживают SATA-III, остальные же — SATA-II. И последовательность устройств к тому же зависит от режима работы SATA-контроллера. В режиме эмуляции IDE диск на первом канале SATA-III получает имя /dev/sda, диск на первом канале SATA-II — /dev/sdb, диск на втором канале SATA-III — /dev/sdc. Диски на остальных каналах SATA-II маркируются в алфавитном порядке.

При переключении же SATA-контроллера в «родной» режим AHCI маркировка дисков становится сквозной: /dev/sda и /dev/sdb — диски на каналах SATA-III, /dev/sdc и так далее — на каналах SATA-II.

Отмеченные разночтения в именовании накопителей в десктопных конфигурациях с одним-двумя дисками обычно не создают проблем для пользователя, хотя при добавлении новых накопителей или «перетасовке» имеющихся могут возникнуть некоторые осложнения, требующие перенастройки загрузчика и (или) правки файла /etc/fstab. Потенциально проблемным может быть и обновление системы, о чём, например, инсталлятор openSUSE и предупреждает. Однако на практике я с этим приходилось сталкиваться не часто.

А вот для ZFS однозначность именования задействованных в её пулах накопителей оказывается, как мы увидим со временем, критически важной. Пользуясь случаем, отмечу, что эта проблема возникает лишь в ZFS on Linux — в силу запутанности и изменчивости именований устройств в этой операционке. В реализациях ZFS для Solaris и FreeBSD спокойно используются «исторические» имена устройств, которые не менялись с самого зарождения этих систем и идентифицируют накопители однозначно.

Так что использование «верхнего уровня» имён устройств рекомендуется в ZFS on Linux только при разработке и тестировании. Но тут впору вспомнить, что, кроме использования «верхнего уровня» их имён, возможны и другие модели. Вскользь об этом упоминалось в Новелле о разметке диска и в наброске о настройке Partitioner’а. Настало время осветить эту тему подробнее.


Назад | Рассказы о ZFS | Вперёд