
Первое, что необходимо сделать после установки нового SSD или жёсткого диска, — это разбить его на разделы. Чтобы диск можно было отформатировать и хранить на нём файлы, на нём должен быть хотя бы один раздел.
В Linux существует несколько инструментов, которые можно использовать для создания разделов, но наиболее часто используемым из них является fdisk .
В этой статье мы поговорим о команде fdisk .
fdisk — это утилита командной строки с управлением через меню, которая позволяет создавать и изменять таблицы разделов на жестком диске.
Имейте в виду, что fdisk — опасный инструмент, и его следует использовать с особой осторожностью. Только пользователи с правами root или sudo могут управлять таблицами разделов.
Список разделов
Чтобы вывести таблицу разделов устройства, выполните команду fdisk с опцией -l , указав после неё имя устройства. Например, чтобы вывести таблицу разделов и разделы /dev/sda , выполните:
fdisk -l /dev/sda
Если в качестве аргумента не указано устройство, fdisk выведет таблицы разделов всех устройств, перечисленных в файле /proc/partitions :
fdisk -l
Disk /dev/nvme0n1: 232.91 GiB, 250059350016 bytes, 488397168 sectors Disk model: Samsung SSD 960 EVO 250GB Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: gpt Disk identifier: 6907D1B3-B3AB-7E43-AD20-0707A656A1B5 Device Start End Sectors Size Type /dev/nvme0n1p1 2048 1050623 1048576 512M EFI System /dev/nvme0n1p2 1050624 34605055 33554432 16G Linux swap /dev/nvme0n1p3 34605056 488397134 453792079 216.4G Linux filesystem Disk /dev/sda: 465.78 GiB, 500107862016 bytes, 976773168 sectors Disk model: WDC WD5000AAKS-0 Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0x0001cca3 Device Boot Start End Sectors Size Id Type /dev/sda1 2048 976771071 976769024 465.8G 83 Linux
Вывод выше показывает текущие таблицы разделов всех устройств, подключенных к вашей системе. Как правило, имена устройств SATA имеют формат /dev/sd[az] , а имена устройств NVMe — формат /dev/nvme[1-9]n[1-9] .
Создание таблицы разделов
Чтобы начать разбиение диска на разделы, запустите fdisk , указав имя устройства. В этом примере мы будем работать с /dev/sdb :
fdisk /dev/sdb
Командная строка изменится, и откроется диалоговое окно fdisk , в котором вы сможете вводить команды:
Welcome to fdisk (util-linux 2.34). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Command (m for help):
Изменения, внесённые в таблицу разделов, не вступят в силу, пока вы не запишете их с помощью команды w . Вы можете выйти из диалогового окна fdisk без сохранения изменений с помощью команды q .
Чтобы получить список всех доступных команд, введите m :
m

Если вы разбиваете новый диск на разделы, перед созданием разделов необходимо создать таблицу разделов. Пропустите этот шаг, если на устройстве уже есть таблица разделов, и вы хотите её сохранить.
fdisk поддерживает несколько схем разбиения диска. MBR и GPT — два самых популярных стандарта схем разбиения диска, которые по-разному хранят информацию о разделах на диске. GPT — более новый стандарт, позволяющий использовать MBR и имеющий множество преимуществ. Основные моменты, которые следует учитывать при выборе стандарта разбиения диска:
- Используйте MBR для загрузки диска в устаревшем режиме BIOS.
- Используйте GPT для загрузки диска в режиме UEFI.
- Стандарт MBR поддерживает создание разделов на диске размером до 2 ТБ. Если у вас диск размером 2 ТБ или больше, используйте GPT.
- MBR имеет ограничение в 4 основных раздела. Если вам нужно больше разделов, один из основных разделов можно сделать расширенным и добавить дополнительные логические разделы. GPT позволяет создать до 128 разделов. GPT не поддерживает расширенные и логические разделы.
В этом примере мы будем использовать таблицу разделов GPT.
Введите g , чтобы создать новую пустую таблицу разделов GPT:
g
Вывод будет выглядеть примерно так:
Created a new GPT disklabel (GUID: 4649EE36-3013-214E-961C-51A9187A7503).
Следующим шагом будет создание новых разделов.
Мы создадим два раздела: первый размером 100 ГиБ, а второй займёт всё оставшееся место на диске.
Выполните команду n , чтобы создать новый раздел:
n
Вам будет предложено ввести номер раздела. Нажмите «Enter», чтобы использовать значение по умолчанию ( 1 ):
Partition number (1-128, default 1):
Далее команда попросит вас указать первый сектор. Обычно рекомендуется использовать значения по умолчанию для первого сектора. Нажмите «Enter», чтобы использовать значение по умолчанию ( 2048 ):
First sector (2048-500118158, default 2048):
В следующем запросе вам потребуется ввести номер последнего сектора. Вы можете указать абсолютное значение для последнего сектора или относительно начального сектора, используя символ «+» после размера раздела. Размер может быть указан в кибибайтах (K), мебибайтах (M), гибибайтах (G), тебибайтах (T) или пебибайтах (P).
Введите +100G , чтобы установить размер раздела 100 ГиБ:
Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-500118158, default 500118158): +100G
Created a new partition 1 of type 'Linux filesystem' and of size 100 GiB.
По умолчанию тип нового раздела — «Файловая система Linux», что подходит для большинства случаев. Чтобы изменить тип, нажмите l , чтобы получить список типов разделов, а затем нажмите t чтобы изменить тип.
Давайте создадим второй раздел, который займет оставшееся место на диске:
n
Используйте значения по умолчанию для номера раздела, первого и последнего секторов. Это позволит создать раздел, который будет использовать всё доступное пространство на диске.
Partition number (2-128, default 2): First sector (209717248-625142414, default 209717248): Last sector, +/-sectors or +/-size{K,M,G,T,P} (209717248-625142414, default 625142414):
После завершения создания разделов используйте команду p для отображения новой таблицы разделов:
p
Disk /dev/sdb: 298.9 GiB, 320072933376 bytes, 625142448 sectors Disk model: nal USB 3.0 Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 4096 bytes / 4096 bytes Disklabel type: gpt Disk identifier: F8365250-AF58-F74E-B592-D56E3A5DEED1 Device Start End Sectors Size Type /dev/sdb1 2048 209717247 209715200 100G Linux filesystem /dev/sdb2 209717248 625142414 415425167 198.1G Linux filesystem
Если вы хотите удалить раздел, используйте команду d .
Сохраните изменения, выполнив команду w :
p
Команда запишет таблицу на диск и выйдет из меню fdisk .
The partition table has been altered. Calling ioctl() to re-read partition table. Syncing disks.
Ядро прочитает таблицу разделов устройства без необходимости перезагрузки системы.
Активация разделов
Теперь, когда разделы созданы, следующим шагом будет форматирование разделов и монтирование их в дерево каталогов системы.
Отформатируем оба раздела в ext4:
sudo mkfs.ext4 -F /dev/sdb1sudo mkfs.ext4 -F /dev/sdb2
mke2fs 1.45.5 (07-Jan-2020) Creating filesystem with 51928145 4k blocks and 12984320 inodes Filesystem UUID: 63a3457e-c3a1-43f4-a0e6-01a7dbe7dfed Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000, 7962624, 11239424, 20480000, 23887872 Allocating group tables: done Writing inode tables: done Creating journal (262144 blocks): done Writing superblocks and filesystem accounting information: done
В этом примере разделы будут монтироваться в каталоги /mnt/audio и /mnt/video .
Создайте точки монтирования с помощью mkdir :
sudo mkdir -p /mnt/audio /mnt/video
Смонтируйте новый раздел:
sudo mount /dev/sdb1 /mnt/audiosudo mount /dev/sdb2 /mnt/video
Разделы будут оставаться смонтированными до тех пор, пока вы их не размонтируете или не выключите компьютер. Чтобы автоматически монтировать раздел при запуске системы Linux, укажите точку монтирования в файле /etc/fstab .
Вот и всё! Теперь вы можете использовать новые разделы для хранения своих файлов.
Заключение
fdisk — это утилита командной строки для создания схем разделов. Для получения дополнительной информации о команде fdisk введите man fdisk в терминале.
Если у вас есть вопросы или пожелания, не стесняйтесь оставлять комментарии.
Связанные руководства