🧱 Настройка и расширение LVM в Linux
📑 Содержание
- Что такое LVM
- Структура и принципы работы
- Создание раздела под LVM
- Создание LVM (PV → VG → LV)
- Создание файловой системы и монтирование
- Автомонтирование через /etc/fstab
- Проверка состояния LVM
- Расширение LVM и файловой системы
- Добавление нового диска в группу
- Удаление LVM
- Под капотом LVM
- ASCII-схема расширения
- Полезные команды и советы
- Вывод
🔍 Что такое LVM
LVM (Logical Volume Manager) — подсистема Linux для гибкого управления дисковым пространством.
Она позволяет:
- объединять несколько физических дисков в одно логическое хранилище;
- изменять размеры разделов без перезагрузки;
- создавать снапшоты для резервного копирования;
- добавлять или убирать диски из группы на ходу.
Используется в RedOS, Astra Linux, Ubuntu, Debian и других системах корпоративного уровня.
🧩 Структура и принципы работы LVM
| Уровень | Назначение | Пример |
|---|---|---|
| PV (Physical Volume) | Физический том — реальный диск или раздел | /dev/sda1, /dev/sdb1 |
| VG (Volume Group) | Группа физических томов | vg_data |
| LV (Logical Volume) | Логический том (виртуальный раздел) | /dev/vg_data/lv_backup |
📊 Схема работы:
[ /dev/sdb1 + /dev/sdc1 ] → VG (vg_data)
↓
LV (lv_backup)
↓
Файловая система (ext4, xfs, btrfs)
💽 Создание раздела под LVM с помощью parted
sudo parted /dev/sdb
Пример последовательности:
(parted) mklabel gpt ← создаём таблицу GPT
(parted) mkpart primary 0% 100% ← создаём раздел
(parted) name 1 data_disk ← даём имя
(parted) set 1 lvm on ← включаем флаг LVM
(parted) print ← проверяем
(parted) quit ← выходим
💡 Альтернатива через
fdisk:Command (m for help): g Command (m for help): n Partition number (1-128, default 1): 1 First sector: <Enter> Last sector: <Enter> Command (m for help): w
После выхода появится раздел /dev/sdb1.
🏗️ Создание LVM (PV → VG → LV)
1️⃣ Инициализация физического тома
sudo pvcreate /dev/sdb1
sudo pvs
2️⃣ Создание группы томов
sudo vgcreate vg_data /dev/sdb1
sudo vgdisplay vg_data
3️⃣ Создание логического тома
sudo lvcreate -n lv_backup -L 100G vg_data
sudo lvs
📁 Создание файловой системы и монтирование
sudo mkfs.ext4 /dev/vg_data/lv_backup
sudo mkdir -p /mnt/data
sudo mount /dev/vg_data/lv_backup /mnt/data
df -h /mnt/data
⚙️ Автомонтирование через /etc/fstab
-
Узнаём UUID:
blkid /dev/vg_data/lv_backup -
Добавляем строку:
UUID=<указать_UUID> /mnt/data ext4 defaults 0 2 -
Проверяем:
sudo mount -a
🔎 Проверка состояния LVM
sudo pvs
sudo vgs
sudo lvs
📈 Расширение LVM и файловой системы
1️⃣ Добавляем новый PV
sudo pvcreate /dev/sdc1
sudo vgextend vg_data /dev/sdc1
2️⃣ Расширяем LV
sudo lvextend -l +100%FREE /dev/vg_data/lv_backup
3️⃣ Расширяем файловую систему
ext4:
sudo resize2fs /dev/vg_data/lv_backup
XFS:
sudo xfs_growfs /mnt/data
🧩 Добавление нового диска в существующую группу
Если добавлен диск /dev/sdb:
sudo parted /dev/sdb
(parted) mklabel gpt
(parted) mkpart primary 0% 100%
(parted) set 1 lvm on
(parted) quit
Затем:
sudo pvcreate /dev/sdb1
sudo vgextend vg_data /dev/sdb1
sudo lvextend -l +100%FREE /dev/vg_data/lv_backup
sudo resize2fs /dev/vg_data/lv_backup
🧹 Удаление LVM
sudo umount /mnt/data
sudo lvremove /dev/vg_data/lv_backup
sudo vgremove vg_data
sudo pvremove /dev/sdb1
🧠 Под капотом LVM
| Команда | Назначение |
|---|---|
pvcreate |
Инициализирует раздел под LVM |
vgcreate |
Создаёт группу логических томов |
vgextend |
Добавляет новый PV в существующую VG |
lvcreate |
Создаёт логический том |
lvextend |
Расширяет существующий логический том |
resize2fs / xfs_growfs |
Расширяет файловую систему |
lvremove, vgremove, pvremove |
Удаляют соответствующие объекты LVM |
📊 ASCII-схема: Расширение LVM (1 диск → 2 диска)
До:
┌────────────┐
│ /dev/sda1 │──┐
└────────────┘ │
│ → VG "vg_data"
├──► LV "lv_backup" (100G)
│
После добавления /dev/sdb1:
┌────────────┐ ┌────────────┐
│ /dev/sda1 │ │ /dev/sdb1 │
└────────────┘ └────────────┘
│ │
└──────┬────────┘
▼
VG "vg_data"
│
▼
LV "lv_backup" (расширен до 2TB)
│
▼
Файловая система (ext4 / xfs)
💡 Полезные советы
- Для серверов: LVM + XFS (высокая производительность)
- Для рабочих станций: LVM + ext4 (гибкость и стабильность)
- Для SSD: добавляйте
discardв/etc/fstab -
Проверяйте корректность перед перезагрузкой:
sudo mount -a -
Для резервного копирования:
sudo lvcreate -s -L 10G -n snapshot_backup /dev/vg_data/lv_backup
✅ Вывод
LVM — мощная система управления томами, позволяющая:
- масштабировать хранилища без потерь данных;
- объединять диски в единое пространство;
- создавать снапшоты и резервные копии;
- работать без перезагрузки.
Использование LVM — стандарт для современных серверных и корпоративных систем Linux.