Устройство диска
100%

Файловая система · Урок 3

Устройство диска

Узнайте, как блочные устройства, таблицы разделов, разделы и файловые системы образуют отдельные уровни хранилища.

Устройство хранения представляется как блочное устройство, например /dev/sda или /dev/nvme0n1. Оно может содержать таблицу разделов, записи которой описывают области, представленные дочерними блочными устройствами. В разделе затем может находиться файловая система, сигнатура swap, участник RAID, контейнер шифрования, физический том логических томов или другой формат данных.

Эти уровни независимы: таблица разделов есть не на каждом диске, файловая система — не в каждом разделе, а сама файловая система может находиться на логическом томе или целом устройстве.

Таблицы и границы разделов

Таблица разделов хранит начальные позиции, длины, идентификаторы типов и атрибуты конкретной схемы. Ядро читает её и создаёт блочные устройства разделов, например /dev/sda1 или /dev/nvme0n1p1.

В обычной компоновке границы разделов не должны пересекаться. Пространство вне всех записей считается нераспределённым с точки зрения таблицы, хотя там всё ещё могут оставаться старые сигнатуры или данные. Изменение таблицы не перемещает автоматически содержимое файловой системы вслед за новыми границами.

Что сообщает операционной системе, где начинаются и заканчиваются разделы диска?

Разметка MBR

Устаревшая схема DOS/MBR хранит основную таблицу в первом логическом секторе. В ней четыре записи основных разделов. Одна запись может описывать расширенный раздел — контейнер для связанной последовательности логических разделов, что позволяет получить более четырёх используемых областей.

При 32-битных адресах секторов и логических секторах по 512 байт распространённый предел MBR составляет около 2 ТиБ. Точная адресуемость зависит от размера сектора и поддержки инструментов. В MBR также нет резервных копий заголовка и таблицы и отдельных GUID разделов, имеющихся в GPT.

Какая конструкция MBR позволяет создать более четырёх используемых разделов?

Разметка GPT

GUID Partition Table, или GPT, использует 64-битные адреса логических блоков и обычно хранит основной заголовок и массив записей около начала диска, а резервные копии — около его конца. Защитная MBR не позволяет старому ПО, понимающему только MBR, принять диск за пустой.

Каждая запись GPT содержит GUID типа раздела и уникальный GUID раздела; поэтому у GPT не один-единственный тип разделов. Число доступных записей определяется выделенной таблицей и инструментами и обычно намного превышает четыре без расширенных и логических разделов.

GPT обычно применяется на загрузочных дисках UEFI, но схема разделов и режим загрузки прошивки — разные понятия. Системе UEFI также нужны подходящие загрузочные файлы и EFI System Partition; одна лишь GPT не делает диск загрузочным.

Какие идентификаторы содержит запись раздела GPT?

Структуры зависят от формата файловой системы

После разметки инструмент создания файловой системы записывает структуры, определённые этой системой. Во многих форматах есть понятия суперблоков, метаданных распределения, записей каталогов и экстентов или блоков данных, но их компоновка, избыточность и терминология различаются.

Например, файловые системы ext используют inode и группы блоков, а другие системы организуют метаданные с помощью иных деревьев или структур распределения. Не применяйте упрощённую схему «загрузочный блок, один суперблок, таблица inode, блоки данных» ко всем файловым системам.

Создаётся ли файловая система внутри раздела автоматически при создании самого раздела?

Изучение текущей компоновки

Перед любыми изменениями используйте представления только для чтения:

$ lsblk -o NAME,PATH,TYPE,SIZE,PTTYPE,PARTTYPE,FSTYPE,MOUNTPOINTS
$ sudo parted --list

PTTYPE описывает обнаруженную схему таблицы разделов, PARTTYPE — идентификатор типа раздела, а FSTYPE — обнаруженную сигнатуру содержимого. Обнаружение служит свидетельством, но не гарантирует, что содержимое исправно или его безопасно монтировать.

Имена устройств могут меняться, а устаревшие сигнатуры — сбивать обнаружение. До открытия любого инструмента разметки в режиме записи подтвердите модель, серийный номер, размер, транспорт, постоянные ссылки, активные монтирования, swap, RAID, LVM, шифрование и резервные копии.

Какое поле lsblk отличает обнаруженное содержимое файловой системы от схемы таблицы разделов?

Урок завершён

Вы завершили Устройство диска

Теперь вы можете отделять метаданные компоновки диска от хранящихся в нём форматов данных.

  • Определять целые устройства и их дочерние устройства разделов.

  • Связывать расширенные разделы MBR с устаревшим пределом четырёх записей.

  • Связывать GPT с резервными таблицами и отдельными GUID разделов.

  • Считать создание файловой системы отдельным от создания раздела действием.

  • Проверять каждый уровень хранилища и активного потребителя до изменений.

Сохраните прогресс

Создайте бесплатный аккаунт, чтобы сохранить этот урок и продолжить на любом устройстве.

Создать бесплатный аккаунт
Следующий Урок
Назад к Файловая система