# Управление дисками (fdisk)

Введение и меры предосторожности

ВНИМАНИЕ: Деструктивная операция!

`fdisk` — это мощный инструмент, который напрямую изменяет структуру вашего диска. Неправильное использование может привести к полной и необратимой потере всех данных на диске. Перед началом работы:

`fdisk` — это стандартная утилита командной строки Linux для создания и управления таблицами разделов диска. Она поддерживает как старый формат MBR (Master Boot Record), так и современный GPT (GUID Partition Table).

Пошаговое руководство: разметка нового диска

Шаг 1: Идентификация диска

Используйте `lsblk` для просмотра блочных устройств. Новый, неразмеченный диск обычно не будет иметь подразделов.

lsblk

Предположим, наш новый диск — `/dev/sdb`.

Шаг 2: Запуск fdisk

Запустите fdisk в интерактивном режиме для нужного диска.

sudo fdisk /dev/sdb

Шаг 3: Работа в интерактивном режиме (основные команды)

После запуска fdisk вы попадаете в его командную строку. Вот основные команды:

Шаг 4: Обновление информации в ядре

После записи изменений (`w`), ядро Linux может не сразу "увидеть" новую таблицу разделов. Чтобы сообщить ядру об изменениях без перезагрузки, используйте `partprobe`.

sudo partprobe /dev/sdb

Шаг 5: Создание файловой системы

Теперь, когда раздел создан (например, `/dev/sdb1`), его нужно отформатировать, то есть создать на нем файловую систему. `ext4` — отличный выбор по умолчанию.

sudo mkfs.ext4 /dev/sdb1

После этого раздел готов к монтированию. Информацию о монтировании смотрите в соответствующей вкладке.

Пример сессии: создание одного раздела на весь диск

Ниже приведен полный пример команд и ответов в `fdisk` для разметки диска `/dev/sdb` с одним разделом типа "Linux filesystem" с использованием GPT.

$ sudo fdisk /dev/sdb

Welcome to fdisk (util-linux 2.37.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Device does not contain a recognized partition table.

Command (m for help): g
Created a new GPT disklabel (GUID: ...).

Command (m for help): n
Partition number (1-128, default 1): <ENTER>
First sector (2048-..., default 2048): <ENTER>
Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-..., default ...): <ENTER>

Created a new partition 1 of type 'Linux filesystem' and of size ...

Command (m for help): p
Disk /dev/sdb: ... GiB, ... bytes, ... sectors
...
Disklabel type: gpt
Disk identifier: ...

Device      Start   End Sectors  Size Type
/dev/sdb1    2048   ...     ...  ...G Linux filesystem

Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.