Linux Debian Storage CLI Filesystem Reliability

💽 Работа с новыми дисками и создание разделов в Linux (fdisk, parted)

Применимо для: RedOS, Astra Linux, Ubuntu
Подходит для любых современных систем с ядром Linux.


📑 Содержание


🧭 Введение

При добавлении новых физических дисков в систему (например, после установки или апгрейда сервера), они изначально не размечены — на них нет таблицы разделов и файловой системы.
Перед использованием таких дисков необходимо:

  1. Определить диск в системе.
  2. Создать таблицу разделов (GPT или MBR).
  3. Создать нужное количество разделов.
  4. Отформатировать их в нужную файловую систему.
  5. При необходимости — смонтировать и добавить автоподключение в /etc/fstab.

🔍 Проверка подключённых дисков

Посмотреть все устройства хранения данных:

lsblk

Пример вывода:

NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
sda           8:0    0   5.5T  0 disk
sdb           8:16   0   5.5T  0 disk
nvme0n1     259:0    0 476.9G  0 disk
├─nvme0n1p1 259:1    0   600M  0 part /boot/efi
├─nvme0n1p2 259:2    0     1G  0 part /boot
└─nvme0n1p3 259:3    0   70G   0 part /

💡 Новые “чистые” диски отображаются без подразделов (part).


🧱 Типы таблиц разделов

Тип Поддержка Объём дисков Совместимость
MBR Устаревший стандарт ≤ 2 ТБ Подходит для старых BIOS
GPT Современный стандарт > 2 ТБ Поддерживается UEFI и всеми современными дистрибутивами

⚠️ Для дисков больше 2 ТБ обязательно использовать GPT.


⚙️ Создание разделов с помощью fdisk

fdisk — базовая консольная утилита для работы с таблицами разделов.

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

sudo fdisk /dev/sda

Интерактивный процесс:

Command (m for help): g       ← создаём таблицу разделов GPT
Command (m for help): n       ← создаём новый раздел
Partition number (1-128, default 1): 1
First sector (2048-...): <Enter>   ← начало (по умолчанию)
Last sector (...): <Enter>         ← до конца диска
Command (m for help): w       ← сохранить и выйти

Проверка результата:

lsblk /dev/sda
sda
└─sda1

⚙️ Создание разделов с помощью parted

parted — современная альтернатива fdisk, особенно для дисков >2 ТБ.

sudo parted /dev/sda

Пример команд:

(parted) mklabel gpt
(parted) mkpart primary ext4 0% 100%
(parted) name 1 data_disk
(parted) quit

💬 Пояснение каждой команды

Команда Назначение
mklabel gpt Создаёт таблицу разделов GPT (очищает диск полностью).
mkpart primary ext4 0% 100% Создаёт первичный раздел типа ext4 на весь диск.
name 1 data_disk Присваивает разделу 1 имя data_disk (видно в lsblk).
quit Выход и сохранение изменений.

Обновляем таблицу разделов:

sudo partprobe

🧾 Проверка созданных разделов

lsblk

Пример:

sda           8:0    0   5.5T  0 disk
└─sda1        8:1    0   5.5T  0 part

🗃️ Форматирование раздела

Создаём файловую систему:

sudo mkfs.ext4 -L data_disk /dev/sda1

💾 Популярные файловые системы

ФС Особенности Применение
ext4 Стабильная, надёжная Основная для Linux
xfs Высокая скорость при больших файлах Серверы, архивы
btrfs Снапшоты, контроль целостности Десктоп, тестовые среды
ntfs Совместимость с Windows Внешние диски
exfat/vfat Кросс-платформенные Флешки, переносные HDD

Примеры:

mkfs.xfs /dev/sda1
mkfs.btrfs /dev/sda1
mkfs.ntfs /dev/sda1

📂 Монтирование раздела

Создаём точку монтирования и монтируем:

sudo mkdir -p /mnt/data
sudo mount /dev/sda1 /mnt/data

Проверяем:

df -h /mnt/data

🔁 Автомонтирование при загрузке

Найдите UUID раздела:

sudo blkid /dev/sda1

Пример:

/dev/sda1: LABEL="data_disk" UUID="a1b2c3d4-e5f6-7890-1234-567890abcdef" TYPE="ext4"

Редактируем /etc/fstab:

sudo nano /etc/fstab

Добавляем строку:

UUID=a1b2c3d4-e5f6-7890-1234-567890abcdef /mnt/data ext4 defaults 0 2

Проверяем:

sudo mount -a

✅ Если ошибок нет — автоподключение работает.


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

Рассмотрим диск /dev/sdb (1 ТБ). Создадим 3 раздела:

Раздел Размер Назначение ФС
/dev/sdb1 700 ГБ Основные данные ext4
/dev/sdb2 64 ГБ swap linux-swap
/dev/sdb3 Остаток (~236 ГБ) резервное хранилище xfs

Разметка:

sudo parted /dev/sdb
(parted) mklabel gpt
(parted) mkpart primary ext4 0% 70%
(parted) mkpart primary linux-swap 70% 94%
(parted) mkpart primary xfs 94% 100%
(parted) name 1 main_data
(parted) name 2 swap_area
(parted) name 3 backup_store
(parted) quit

💡 Использование процентов — удобно, не нужно считать сектора.


Форматирование разделов и активация swap

sudo mkfs.ext4 -L main_data /dev/sdb1
sudo mkswap -L swap_area /dev/sdb2
sudo mkfs.xfs -L backup_store /dev/sdb3
sudo swapon /dev/sdb2

Проверка:

lsblk /dev/sdb
sdb
├─sdb1 700G
├─sdb2 64G [SWAP]
└─sdb3 236G

🗑️ Удаление и переразметка диска

⚠️ Убедитесь, что разделы не смонтированы!

  1. Отмонтировать:
sudo umount /mnt/data
  1. Удалить разделы:
sudo fdisk /dev/sda
Command (m for help): d
Partition number (1-128, default 1): 1
Command (m for help): w
  1. Проверка:
lsblk

💡 Особенности по системам

ОС Утилиты Особенности
RedOS fdisk, parted, mkfs.ext4 Команды аналогичны RHEL/CentOS/Rocky
Astra Linux fdisk, parted, gparted, mkfs.ext4 SELinux может блокировать монтирование
Ubuntu/Debian fdisk, parted, lsblk, mkfs.ext4 Часто используется LVM и LUKS

🔧 Полезные команды

# Просмотр информации о дисках
lsblk
sudo fdisk -l

# Проверка ФС
sudo fsck /dev/sda1

# UUID всех разделов
blkid

# Проверка монтирования
mount | grep sda1

# Просмотр активных swap
swapon --show

✅ Итог

Теперь вы умеете:

💬 Советы:

Хочешь, чтобы я это сделал? ```