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