fdisk
В дистрибутивах Linux на KVM и OpenVZ VPS, fdisk является лучшим инструментом для управления разделами диска. Fdisk является текстовой утилитой, довольно проста в работе и зачастую находится в пакете вместе с самим дистрибутивом. Используя fdisk, вы можете создать новый раздел, удалить или изменить существующий раздел.
При помощи этой утилиты вы можете создать максимум четыре первичных раздела, и любое количество логических разделов, в зависимости от размера диска.
Имейте в виду, что любое изменение раздела может привести к потере всей информации на нем.
Использование утилиты
Для начала работы с fdisk используется команда формата fdisk <drive>, где <drive> — имя устройства, которому необходимо выделить раздел. Например, команда fdisk /dev/sda по умолчанию выберет первый диск на SATA-контроллере. При необходимости создать разделы Linux на нескольких устройствах, придётся выполнять fdisk для каждого из них.
Для проверки количества устройств подключённых к SATA-контроллеру можно применить команду
ls /dev | grep sd
Например:
[root] # ls /dev | grep sd
sda
sdb
Начинаем работу: выбираем нужный диск
[root] # fdisk /dev/sda
Утилита поприветствует вас и предложит ввести команду:
Command (m for help):
Для примера вызовем список команд:
Command (m for help): m
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition
l list known partition types
m print this menu
n add a new partition
o create a new empty DOS partition table
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)
Command (m for help):
Ниже перевод значений команд на русский:
a установить/снять флаг загрузочного раздела (утилит запросит номер раздела)
b редактировать bsd метку диска
c переключить флаг совместимости с dos
d удалить раздел
l список известных типов разделов
m показать это меню
n добавить новый раздел
o создать новую пустую таблицу разделов в стиле DOS
p показать существующую таблицу разделов
q выйти без сохранения изменений
s создать новый раздел с меткой Sun
t изменить метку типа раздела
u изменить отображение/запись блоков
v проверить таблицу разделов
w сохранить изменения и выйти
x дополнительные возможности (только для экспертов)
Команда fdisk –l выведет список существующих разделов, если таковые существуют.
Для просмотра разделов одного выбранного диска используйте такой вариант этой же команды:
fdisk -l /dev/sda
Приступаем к созданию разделов:
Для начала создадим boot
Command (m for help): n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Программа спрашивает тип раздела. Первичный или логический соответственно. Выбираем первичный и его номер:
Command (m for help): n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
Partition number (1-4, default 1): 1
Далее, программа спросит о размещении начала раздела(специалисты рекомендуют создавать загрузочный раздел ближе к началу диска):
Command (m for help): n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
Partition number (1-4, default 1): 1
First sector (4096-784932712): 4096
Утилита спросит размер будущего раздела: номер начального и номер конечного цилиндра или размер раздела
Command (m for help): n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
Partition number (1-4, default 1): 1
First sector (4096-784932712): 4096
Last sector, +sectors or +size{K,M,G} (4096-784932712, default 784932712): +100M
Раздел готов, о чем нам сообщит программа:
Command (m for help): n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
Partition number (1-4, default 1): 1
First sector (4096-784932712): 4096
Last sector, +sectors or +size{K,M,G} (4096-784932712, default 784932712): +100M
Partition 1 of type Linux and of size 100 MiB is set
Таким же образом создаём своп-раздел и раздел под программы и библиотеки:
Command (m for help): n
Partition type:
p primary (1 primary, 0 extended, 3 free)
e extended
Select (default p): p
Partition number (1-4, default 2): 2
First sector (196876-784932712): 196876
Last sector, +sectors or +size{K,M,G} (196876-784932712, default 784932712): +8G
Partition 2 of type Linux and of size 8 GiB is set
Раздел для свопа создаём из расчёта ОЗУх2 если размер ОЗУ меньше 6 гигабайт и ОЗУх1 если больше.
Command (m for help): n
Partition type:
p primary (2 primary, 0 extended, 2 free)
e extended
Select (default p): p
Partition number (1-4, default 3): 3
First sector (2882342-784932712): 2882342
Last sector, +sectors or +size{K,M,G} (2882342-784932712, default 784932712): +40G
Partition 3 of type Linux and of size 40 GiB is set
Создаем расширеный раздел из которого будем создавать логические:
Command (m for help): n
Partition type:
p primary (2 primary, 0 extended, 2 free)
e extended
Select (default p): p
Partition number (1-4, default 3): 3
First sector (1684378-784932712): 1684378
Last sector, +sectors or +size{K,M,G} (1684378-784932712, default 784932712): 784932712
Partition 4 of type Linux and of size 204 GiB is set
Создаем 2 логических раздела :
Command (m for help): n
All primary partitions are in use
Adding logical partition 5
First sector (1684378-784932712): 1684378
Last sector, +sectors or +size{K,M,G} (1684378-784932712, default 784932712): +100G
Partition 5 of type Linux and of size 100 GiB is set
Command (m for help): n
All primary partitions are in use
Adding logical partition 5
First sector (392466356-784932712): 392466356
Last sector, +sectors or +size{K,M,G} (392466356-784932712, default 784932712): +104G
Partition 5 of type Linux and of size 104 GiB is set
Также мы дожны обязательно установить флаг загрузочного раздела и изменить метку своп-раздела:
Command (m for help): a
Partition number (1-6): 1
Меняем метку свопа (для того чтобы узнать нужный HEX-код, в поле «Hex code (type L to list codes):» введите большую L).
Command (m for help): t
Partition number (1-4): 2
Hex code (type L to list codes): 82
Changed system type of partition 2 to 82 (Linux swap)
Command (m for help): p
Сохраняем изменения и выходим.
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.