Ділимо диски рідним fdisk’ом

Що таке fdisk? fdisk – це консольна утиліта в Linux/Unix-системах, яка дозволяє створювати та видаляти, копіювати та переміщати, змінювати розміри розділів та виводити інформацію про розділи жорстких дисків.

Більш-менш детальну роботу з нею ми розглянемо у цій статті. Але перед тим, як ми почнемо розби вати диск на розділи, треба розуміти такі, начебто не зовсім зрозумілі речі, як “первинний розділ, розширений розділ, MBR, GPT”. Спробуймо розібратися у всьому цьому простою мовою.

Купивши новий жорсткий диск і застромивши його в комп’ютер, ми можемо помітити, що він ніяк у нас не відобразився і ми не можемо з ним працювати. Чому? Та все тому, що операційній системі потрібно розуміти, в які області можна записувати інформацію на цьому диску. Для того, щоб система розуміла це, диск потрібно розмітити на частини – розділи диска (або один великий розділ для диска, залежно від вимог). Кожному такому розділу в системі Windows можна присвоїти літеру (D, E, F…) і використовувати його як самостійний, незалежний диск у системі. На даний момент у нас є лише два способи розмітки дисків – це MBR та GPT.

MBR розшифровується як “Master Boot Record” – головний завантажувальний запис. Цей стандарт був придуманий ще далекого 1983 року і працює з будь-якими операційними системами. Він має розмір 512 байт, розташовується на початку диска і містить інформацію про завантажувач та таблицю розділів на диску. Структура MBR така, що під розділи відведено 4 записи, відповідно ми можемо створити лише 4 розділи. Крім того, максимальний розмір диска підтримуваного MBR становить 2TB. На зміну MBR прийшов GPT з рядом своїх переваг, але про нього ми поговоримо якось потім.

MBR дозволяє нам створити в загальній сумі 4 розділи на диску: або 4 первинні розділи, або 3 первинні і один розширений. Більшість операційних систем потребують первинного розділу для встановлення. Також у ньому, зазвичай, розташовуються програми та дані користувача. Розширений розділ потрібен тоді, коли потрібно більше розділів, ніж 4. Кількість розділів обмежується лише розміром самого диска. У розширеному розділі створюються логічні розділи. Тобто розширений розділ, це, по суті, такий контейнер, в якому розташовуються логічні розділи.

Логічні розділи майже ніяк не відрізняються від первинних. У них можуть розміщуватися програми та дані користувача. Зазвичай при встановленні операційної системи розбивають диск на первинний раділ, в якому буде сама система і програми і один розширений розділ з необхідною кількістю логічних дисків для даних користувача. По теоретичній частині, напевно, все. Тепер перейдемо до практики. Давайте подивимося, які у нас є диски та розділи. Для цього виконаємо команду sudo fdisk з параметром -l.

Бачимо приблизно таку картину.

Якщо введемо sudo fdisk та ім’я диска, то отримаємо інформацію про розділи конкретного диска.

У нас є два диски: sda та sdb. sda у нас розмічений та використовується, а ось з sdb ми і працюватимемо. Як бачимо, розмір у нього 20Gb. Щоб почати працювати з диском, потрібно його вибрати. Зробимо це командою sudo fdisk/dev/sdb.

Далі тиснемо m для виведення довідки і бачимо параметри, з якими ми можемо працювати.


Тут ми можемо додавати, змінювати, видаляти розділи, змінювати тип розділу, переглядати розділи, ставити прапори завантаження і т.д. Для прикладу розмічатимемо диск, як під систему (створимо первинний і розширений розділи, створимо локальний диск у розширеному розділі).


Тиснемо n, щоб створити новий розділ. Тип розділу вибираємо p, тобто первинний. Далі вказуємо номер розділу (від 1 до 4 природно) та розмір. Початок розділу, тобто перший сектор fdisk благородно обчислює сам, нам потрібно вказати бажаний розмір від цього сектора. Вказувати можна у кілобайтах, мегабайтах, терабайтах.

У разі, якщо розмір розділу буде 2Gb, тому пишемо +2G. Все, перший розділ створено. За аналогією створимо ще один первинний розділ на 10G. Щоб подивитися, які розділи у нас є на даний момент, натискаємо ‘p’.


Бачимо обидва наші розділи. Щоб подивитися, скільки нерозміченого простору у нас залишилося, тиснемо ‘F’.


Залишилось 8 гігабайт. Створимо розширений розділ і в ньому всі 8 гігабайт віддамо логічному розділу. Знову тиснемо ‘n’, вибираємо ‘e’, тобто розширений розділ. Номер розділу fdisk підставить сам. Далі вказуємо розмір. Якщо в полі Last sector ми нічого не вкажемо, то fdisk забере весь доступний простір під розділ.

Зараз нам так і потрібно, тож нічого не вказуємо. Хоча можемо написати +8G. Таким чином, ми створили розширений розділ. Як би контейнер розміром 8 гігабайт і тепер у цьому контейнері створюватимемо логічний розділ.


Знову тиснемо ‘n’ і fdisk повідомляє, що весь простір вже зайнятий, первинні розділи ми створювати вже не можемо, тому буде створено логічний розділ. У полі Last sector також нічого не вказуємо, так хочемо віддати розділу весь доступний простір. Тиснемо ‘p’ і спостерігаємо загальну картину.


Бачимо усі створені нами розділи. sdb1 – 2G, sdb2 – 10G, sdb3 – розширений розділ (контейнер на 8 гіг) та sdb5 – логічний розділ на тих самих 8 гіг. Запитайте, чому після sdb3 одразу йде sdb5? Справа в тому, що розділи від 1 до 4 заздалегідь зарезервовані для основних розділів. Логічні розділи завжди починаються із 5.

Встановимо прапор завантажувального розділу для sdb1. Це ніби мітка, яка вказує, що з цього розділу можливе завантаження ОС. У випадку з ОС Linux ми припускаємо, що тут розміщуватимемося розділ /boot і файли завантажувача. Для цього тиснемо ‘a’ і вказуємо номер розділу. Номер розділу, це цифра після sdb. Так як ми хочемо зробити sdb1 завантажувальним, пишемо 1.

Бачимо, що біля /dev/sdb1 з’явилася зірочка, яка саме повідомляє нам, що цей розділ позначений як завантажувальний.

Тепер спробуємо видалити розділ sdb5. Для цього тиснемо ‘d’ і вказуємо 5. Все. Розділ видалено.

Кожен розділ має ще такий параметр, як id. Це ніби мітка цього розділу. Наприклад id 5 це позначка розширеного розділу. id 83 мітка Linux-розділу. Щоб переглянути список усіх доступних тегів тиснемо ‘l’.


Таких міток у шістнадцятковому форматі досить багато. Давайте змінимо тип розділу на sdb2, наприклад NTFS. Припускатимемо, що тут будуть дані ОС Windows. Тиснемо ‘t’ і вказуємо номер розділу 2. Далі вказуємо код тієї мітки, яку хочемо. У нашому випадку для NTFS код 86. Як бачимо, тип розділу став іншим.


Щоб зберегти все, що ми наробили, тиснемо ‘w’. Після розбиття диска на розділи ми все ще не зможемо користуватися ним. Для цього потрібно створити у розділі файлову систему. Але про це поговоримо в іншій статті.

На цьому все. Сподіваюся, стаття була для вас корисною.