- Команда fdisk. Управление разделами жёсткого диска
- Просмотр всех разделов диска
- Просмотр разделов заданного диска
- Командный режим
- Удаление раздела
- Создание нового раздела
- Форматирование раздела
- Проверка размера раздела
- Исправление нумерации в таблице разделов
- Флаг загрузочного раздела
- Заключение
- Команда fdisk в Linux
- Опции и синтаксис fdisk
- Примеры использования команды fdisk
- 2. Интерактивный режим
- 3. Просмотр таблицы разделов
- 4. Создание таблицы разделов
- 5. Создание разделов
- 6. Тип раздела
- 7. Удаление раздела
- 8. Загрузочный раздел
- 9. Применение изменений
- Выводы
Команда fdisk. Управление разделами жёсткого диска
fdisk (сокращение от “format disk“, форматировать диск) — это наиболее распространенная утилита командной строки для работы с дисками в Linux/Unix системах. При помощи этой команды можно просматривать, создавать, удалять, изменять, копировать и перемещать разделы на жёстком диске, используя простой интерфейс текстовых меню.
Это очень полезный инструмент для выделения пространства для новых разделов, организации пространства на новых дисках, реорганизации старых дисков, а также копирования или перемещения данных на новых дисков. Он позволяет создавать до четырех первичных разделов и некоторое количество логических (расширенных) разделов в зависимости от размера жесткого диска в вашей системе.
Мы рассмотрим ряд базовых команд fdisk для управления таблицей разделов в Linux. Для запуска команды fdisk нужно обладать root-привилегиями (или использовать sudo), иначе будет выведена ошибка “command not found”.
Просмотр всех разделов диска
Для просмотра всех доступных разделов используется опция -l (listing — перечисление). Разделы перечисляются по именам, например, /dev/sda , /dev/sdb или /dev/sdc .
Просмотр разделов заданного диска
Для просмотра всех разделов заданного жесткого диска укажите опцию -l с именем устройства. Например, следующая команда отобразит все разделы диска /dev/sda :
Командный режим
Чтобы войти в командный режим, просто введите fdisk с именем жёсткого диска, например, /dev/sda , как показано ниже:
Для получения списка команд, которые fdisk может выполнить на диске, введите “m”. Рассмотрим значение этих команд.
a toggle a bootable flag — сделать диск загрузочным
b edit bsd disklabel — редактировать bsd-метку диска
c toggle the dos compatibility flag — установить флаг совместимости с DOS
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 — создать новую пустую таблицу разделов DOS
p print the partition table — вывести таблицу разделов (аналогична fdisk -l)
q quit without saving changes — выйти без сохранения
s create a new empty Sun disklabel — создать новую метку диска Sun
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) — дополнительные функции (только для экспертов)
Удаление раздела
Допустим, нам нужно удалить определенный раздел, например, /dev/sda4, с определенного жёсткого диска, например, /dev/sda. Сначала нужно зайти в командный режим:
Затем введите d для удаления раздела. После этого у вас будет запрошен номер раздела для удаления с диска /dev/xvdb. Для удаления раздела номер 2 (то есть, /dev/xvdb2) нужно ввести соответствующую цифру, 2. Затем нужно ввести команду w, чтобы записать таблицу на диск и выйти.
Как мы видим раздел /dev/xvdb2 был удален.
Внимание : будьте осторожны с этой командой, потому что удаление раздела полностью уничтожит все данные на нем.
Создание нового раздела
Войдите в командный режим и введите “n”:
При создании нового раздела нужно выбрать одну из двух опций: extended для логического раздела или primary для первичного и нажать, соответственно, e или p . Затем потребуется ввести номера первого и последнего цилиндра раздела (либо смещение в цилиндрах или размер). Лучше всего оставить заданное по умолчанию значение первого цилиндра и ввести нужный размер раздела, например, “+5000M”, что означает размер 5000 мегабайт. После создания раздела нужно нажать w для сохранения изменений в таблице разделов.
Теперь мы видим на диске /dev/xvdb два раздела.
Также при создании раздела можно указать размер раздела с помощью опции +size
Форматирование раздела
После создания нового раздела не забудьте отформатировать его командой mkfs. Для этого выполните следующую команду:
где в ключе -t указываем тип файловой системы в которую мы хотим отформатировать наш раздел.
Проверка размера раздела
Когда раздел отформатирован, проверьте его размер при помощи опции -s (размер отображается в блоках). Так можно узнать размер любого заданного устройства:
Исправление нумерации в таблице разделов
Если вы удалили логический раздел, возможны ошибки вида ‘partition out of order‘ (нарушение порядка разделов) или ‘Partition table entries are not in disk order‘ (записи таблицы разделов не соответствуют порядку дисков). Допустим у нас диск со следующими разделами
Например, при удалении трёх логических разделов xvdb2, xvdb3 и xvdb4 и создании нового раздела можно предположить, что его имя будет xvdb2. Однако, система создаст раздел xvdb3. Это происходит потому, что после удаления раздела xvdb5 будет перемещена на место xvdb2, а свободное пространство — перераспределено в конец.
Для исправления подобных проблем и назначения вновь созданному разделу имени xvdb2 нужно перейти в режим дополнительных функций ( x ) и выполнить экспертную команду ( f) :
Естественно, после выполнения команды ( f) нужно сохранить изменения командой ( w) . После исправления порядка разделов сообщения об ошибках должны прекратиться.
Флаг загрузочного раздела
Чтобы включить или отключить на заданном разделе флаг загрузочного раздела (отображается символом ‘*’ в таблице разделов), нужно выполнить следующие действия.
fdisk -l /dev/xvda
Вы увидите на диске /dev/sda1 флаг загрузочного раздела (звёздочка ‘*’)
Далее введите команду « a» для снятия флага загрузочного раздела, а затем введите номер раздела (в данном случае 1 для /dev/sda1). Флаг загрузочного раздела будет снят, символ звёздочки (*) пропадет.
Для назначения загрузочного диска нужно также использовать опцию «a». Например назначим загрузочным диск xvda2
Заключение
Мы рассмотрели базовые возможности команды fdisk, необходимые для работы с разделами. Более подробную информацию, в том числе об экспертных командах, доступ к которым осуществляется командой x , можно получить на соответствующей man-странице ( man fdisk ).
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Источник
Команда fdisk в Linux
В Linux существует множество способов разметки диска, создания на нём разделов и просмотра уже существующих. Это утилиты parted и cfdisk в терминале и графическая утилита gparted. Однако сегодня мы поговорим про самую простую утилиту для разметки диска в терминале — fdisk.
Именно она используется чаще всего, если надо посмотреть как диски и разделы доступны на компьютере. Далее рассмотрим основные опции утилиты, её синтаксис, а также примеры использования.
Опции и синтаксис fdisk
Синтаксис утилиты ничем не отличается от других команд Linux:
$ fdisk опции устройство
Ей надо передать опции, согласно действия, которое вы хотите выполнить, а также раздел диска или устройство к которому эти действия надо применить. Давайте теперь рассмотрим опции fdisk:
- -B, —protect-boot — не стирать первые 512 байт диска чтобы не повредить загрузочную запись;
- -L, —color — настройка цветного вывода, возможные значения auto, never или always;
- -l, —list — вывести все разделы на выбранных устройствах или если устройств не задано, то на всех устройствах;
- -o, —output — указывает какие поля данных надо показывать в выводе программы, доступные поля рассмотрим ниже;
- -u, —units — настраивает формат вывода размера разделов, доступные значения: cylinders, sectors, по умолчанию используется sectors;
- -w, —wipe — режим стирания файловой системы или RAID с диска, возможные значения auto, never или always по умолчанию используется auto;
- -W, —wipe-partition — режим стирания файловой системы или RAID из только что созданного раздела. Возможные значения аналогичны предыдущей опции;
- -h, —help — показать справку по утилите;
- -v, —version — опция выводит версию утилиты.
Опции используются для настройки работы утилиты, мы рассмотрели только самые главные, которые могут вам пригодится, теперь перейдём к командам:
- a — включение или выключения флага boot для раздела;
- d — удалить раздел;
- F — показать свободное место;
- l — вывести список известных типов разделов;
- n — создать новый раздел;
- p — вывести таблицу разделов;
- t — изменение типа раздела;
- i — вывести информацию о разделе;
- I и O — записать или загрузить разметку в файл сценария sfdisk;
- w — записать новую таблицу разделов на диск;
- q — выйти без сохранения;
- g — создать пустую таблицу разделов GPT;
- o — создать пустую таблицу разделов MBR.
Теперь вы знаете основные опции и команды fdisk, давайте рассмотрим использование программы.
Примеры использования команды fdisk
1. Список дисков и разделов
Чтобы посмотреть список доступных вам дисков и разделов на них используйте опцию -l:
Утилита покажет все блочные устройства. На снимке есть /dev/sda, это обычный жесткий диск и /dev/nvme0n1 — это M.2 накопитель, а также там есть есть несколько /dev/loop* устройств, созданных ядром, которые лучше не трогать.
2. Интерактивный режим
Большинство операций fdisk по разметке дисков выполняются в интерактивном режиме. Чтобы запустить fdisk в интерактивном режиме передайте утилите блочное устройство которое надо разметить. В моём примере, это /dev/nvme0n1:
sudo fdisk /dev/nvme0n1
Вам не обязательно возвращаться к этой статье, когда вы захотите снова поработать с программой, посмотреть доступные команды можно выполнив команду m:
3. Просмотр таблицы разделов
Чтобы посмотреть текущий тип таблицы разделов, а также доступные разделы на диске используйте команду p:
В данном примере на диске уже есть несколько разделов, а таблица разделов используется MBR (dos).
4. Создание таблицы разделов
Давайте создадим новую таблицу разделов GPT. Для этого используйте команду g. Для таблицы разделов MBR нам бы понадобилась команда o.
5. Создание разделов
Чтобы создать раздел используйте команду n. Команда спросит какой номер раздела надо присвоить этому разделу, затем спросит сектор начала раздела, эти значения можно оставить по умолчанию, так как утилита предлагает минимальные доступные. Далее надо указать размер раздела. Это можно сделать тремя способами:
- указать количество секторов раздела;
- указать последний сектор раздела;
- указать размер раздела в килобайтах, мегабайтах или гигабайтах, обозначения стандартные K,M,G.
Давайте создадим три раздела разными способами:
Первый раздел создадим с помощью обычных единиц измерения. Перед ними надо ставить плюс, так как это место, которое добавляется к первому сектору раздела.
Во втором способе укажем размер раздела в секторах. Для получения раздела размером 1 гигабайт нам понадобится примерно 2 000 000 секторов. По умолчанию размер сектора 512 байт, поэтому 2 000 000 * 512 получится примерно 1024 000 000 байт:
И в третьем способе с помощью калькулятора добавим к первому сектору раздела те же два миллиона:
На этом создание разделов fdisk завершено. А вот форматирование разделов в fdisk невозможно, для этого придется воспользоваться утилитой mkfs.
6. Тип раздела
Кроме обычных разделов для пользовательских файлов существуют и другие типы разделов, например раздел EFI, BIOS boot, Windows Recovery, Linux swap, этот тип влияет на назначение раздела, например, раздел EFI не будет использоваться пока для него не будет выбран правильный тип. Чтобы изменить тип раздела используйте команду t:
Для вывода всех доступных типов и их номеров используйте команду L:
Для выхода из списка разделов нажмите q, а затем просто наберите номер нужного типа:
7. Удаление раздела
Чтобы удалить раздел выполните команду d, а затем введите его номер:
Вот так просто выполняется удаление.
8. Загрузочный раздел
При загрузке компьютера с диска, на котором используется таблица разделов MBR, BIOS ищет раздел, отмеченный как загрузочный и начинает искать загрузчик именно на нём. Чтобы сделать раздел загрузочным если он ещё не загрузочный или наоборот сделать его не загрузочным используйте команду a:
Загрузочность отмечается звездочкой в выводе команды p. В таблице разделов GPT для записи загрузчика используется раздел с типом BIOS boot, а флага загрузочности здесь уже нет.
9. Применение изменений
Все изменения, которые вы сейчас вносили, ещё не записаны на диск. Для их записи надо выполнить команду w:
После записи изменений программа завершится.
Выводы
В этой статье мы рассмотрели как пользоваться fdisk в Linux, как создавать разделы с помощью этой утилиты, а также как выбрать тип диска. Несмотря на все возможности утилиты намного удобнее пользоваться gparted или же cfdisk если надо разметить диск в терминале. Последнюю мы разберем в одной из следующих статей.
Источник