В дистрибутивах 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.