Введение / Зачем это нужно
Разметка диска — базовый навык любого системного администратора Linux. Утилита fdisk десятилетиями остаётся стандартом для управления таблицами разделов благодаря минимализму и точности. С её помощью вы сможете безопасно подготовить новый накопитель под сервер, добавить место для резервных копий или переразметировать внешний диск. После выполнения этого гайда вы будете уверенно работать с MBR и GPT, избегать потери данных и правильно применять изменения на уровне ядра.
Требования / Подготовка
Перед началом работы убедитесь, что соблюдены следующие условия:
- Права суперпользователя (
sudo) или прямой доступ кroot. - Утилита
fdisk(входит в пакетutil-linuxи предустановлена почти во всех дистрибутивах). - Чёткое понимание, какой физический диск вы изменяете. Ошибка в выборе устройства необратимо удалит данные.
- Актуальная резервная копия. Любые операции с таблицей разделов несут технический риск.
⚠️ Важно: Никогда не запускайте
fdiskна смонтированных системных разделах, особенно если это/dev/sdaили/dev/nvme0n1. Для работы с системными дисками используйте Live-USB.
Шаг 1: Определение устройства
Откройте терминал и выведите список всех блочных устройств:
lsblk
Обратите внимание на столбцы NAME и SIZE. Найдите накопитель без точек монтирования в столбце MOUNTPOINT. Это и будет ваш целевой диск (например, /dev/sdb или /dev/nvme1n1). Запомните его имя — далее мы будем обозначать его как /dev/sdX.
Шаг 2: Запуск утилиты и выбор схемы разделов
Запустите fdisk с повышенными привилегиями:
sudo fdisk /dev/sdX
Если диск абсолютно новый или очищенный, по умолчанию может применяться устаревшая схема MBR. Для современных дисков и накопителей объёмом более 2 ТБ лучше использовать GPT. В интерактивном приглашении введите:
g
Утилита создаст пустую таблицу разделов GPT и подтвердит действие. Для старых систем, требующих MBR, используйте команду o вместо g.
Шаг 3: Создание нового раздела
В командной строке утилиты введите:
n
Программа запросит параметры. Следуйте подсказкам:
- Номер раздела: оставьте значение
1по умолчанию. - Первый сектор: нажмите
Enter. Утилита автоматически выберет оптимально выровненную позицию. - Последний сектор или размер: укажите нужный объём в формате
+[размер]G/M/T(например,+200G) или нажмитеEnterдля использования всего свободного места.
Для быстрой проверки структуры таблицы введите p. Вы увидите новый раздел с типом Linux filesystem и корректными границами.
Шаг 4: Запись изменений и выход
Пока вы находитесь внутри fdisk, все манипуляции существуют исключительно в оперативной памяти. Чтобы физически изменить таблицу разделов на диске, введите:
w
Система запишет структуру, отправит уведомление ядру и автоматически завершит работу. Если на этом этапе вы заметили ошибку, нажмите q — изменения будут проигнорированы, а диск останется нетронутым.
Проверка результата
После успешной записи ядро может не сразу подхватить новую геометрию диска. Обновите таблицу блочных устройств вручную:
sudo partprobe /dev/sdX
Убедитесь, что раздел появился в файловой системе ядра:
lsblk -f /dev/sdX
Вы должны увидеть строку /dev/sdX1 с указанным размером и типом linux. Теперь раздел готов к созданию файловой системы (например, sudo mkfs.ext4 /dev/sdX1) и последующему монтированию через /etc/fstab.
Возможные проблемы
- Устройство занято (Device or resource busy). Утилита откажется работать, если на диске активны тома. Размонтируйте их командой
sudo umount /dev/sdX*. Если разделы критически важны для работающей ОС, перейдите в режим восстановления или загрузитесь с Live-носителя. - Предупреждение о выравнивании секторов. Если
fdiskсообщает о misaligned partitions, никогда не задавайте границы вручную. Всегда нажимайтеEnterдля выбора предложенных секторов — современные SSD и HDD требуют выравнивания по 1 МиБ для сохранения скорости и ресурса ячеек. - Ошибка синхронизации ядра (failed to reload partition table). Возникает при фоновом сканировании диска антивирусами или службами мониторинга. Остановите лишние процессы, выполните
sudo blockdev --rereadpt /dev/sdXили перезагрузите сервер для применения таблицы.