Управление дисками (fdisk)
Введение и меры предосторожности
ВНИМАНИЕ: Деструктивная операция!
`fdisk` — это мощный инструмент, который напрямую изменяет структуру вашего диска. Неправильное использование может привести к полной и необратимой потере всех данных на диске. Перед началом работы:
- Убедитесь, что у вас есть резервная копия всех важных данных.
- Дважды проверьте имя диска (например, `/dev/sdb`, а не `/dev/sda`), чтобы не отформатировать системный диск.
`fdisk` — это стандартная утилита командной строки Linux для создания и управления таблицами разделов диска. Она поддерживает как старый формат MBR (Master Boot Record), так и современный GPT (GUID Partition Table).
Пошаговое руководство: разметка нового диска
Шаг 1: Идентификация диска
Используйте `lsblk` для просмотра блочных устройств. Новый, неразмеченный диск обычно не будет иметь подразделов.
lsblk
Предположим, наш новый диск — `/dev/sdb`.
Шаг 2: Запуск fdisk
Запустите fdisk в интерактивном режиме для нужного диска.
sudo fdisk /dev/sdb
Шаг 3: Работа в интерактивном режиме (основные команды)
После запуска fdisk вы попадаете в его командную строку. Вот основные команды:
m— показать меню помощи со всеми командами.p— показать текущую таблицу разделов. Полезно для просмотра текущего состояния диска.g— (Рекомендуется) создать новую, пустую таблицу разделов GPT. Это современный стандарт, снимающий ограничения MBR (диски > 2ТБ, до 128 разделов).o— создать новую, пустую таблицу разделов MBR. Используйте только для совместимости со старыми системами.n— создать новый раздел. Утилита спросит номер раздела, первый и последний сектор. Можно указать размер, например, `+50G`.d— удалить раздел. Утилита спросит номер раздела для удаления.t— изменить тип раздела. Полезно для создания разделов под LVM (`Linux LVM`) или swap (`Linux swap`). Команда `L` выведет список всех доступных типов.w— (Важно!) записать изменения на диск и выйти. Все сделанные вами изменения станут постоянными.q— выйти без сохранения изменений. Безопасный способ отменить все, что вы сделали.
Шаг 4: Обновление информации в ядре
После записи изменений (`w`), ядро Linux может не сразу "увидеть" новую таблицу разделов. Чтобы сообщить ядру об изменениях без перезагрузки, используйте `partprobe`.
sudo partprobe /dev/sdb
Шаг 5: Создание файловой системы
Теперь, когда раздел создан (например, `/dev/sdb1`), его нужно отформатировать, то есть создать на нем файловую систему. `ext4` — отличный выбор по умолчанию.
sudo mkfs.ext4 /dev/sdb1
После этого раздел готов к монтированию. Информацию о монтировании смотрите в соответствующей вкладке.
Пример сессии: создание одного раздела на весь диск
Ниже приведен полный пример команд и ответов в `fdisk` для разметки диска `/dev/sdb` с одним разделом типа "Linux filesystem" с использованием GPT.
$ sudo fdisk /dev/sdb
Welcome to fdisk (util-linux 2.37.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Device does not contain a recognized partition table.
Command (m for help): g
Created a new GPT disklabel (GUID: ...).
Command (m for help): n
Partition number (1-128, default 1): <ENTER>
First sector (2048-..., default 2048): <ENTER>
Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-..., default ...): <ENTER>
Created a new partition 1 of type 'Linux filesystem' and of size ...
Command (m for help): p
Disk /dev/sdb: ... GiB, ... bytes, ... sectors
...
Disklabel type: gpt
Disk identifier: ...
Device Start End Sectors Size Type
/dev/sdb1 2048 ... ... ...G Linux filesystem
Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.