Что такое LVM и зачем расширять диск без простоя
LVM (Logical Volume Manager) — слой абстракции между физическими дисками и файловой системой. Вместо прямого монтирования раздела LVM собирает один или несколько дисков в группу томов (volume group), а затем нарезает из неё логические тома (logical volume) любого размера. Главное преимущество для VDS: после увеличения размера диска в панели хостинг-провайдера логический том и файловую систему расширяют «на лету», без остановки сервисов и перезагрузки.
Без LVM для увеличения раздела обычно требуется остановка сервисов, пересоздание таблицы разделов или перенос данных. С LVM это несколько команд на работающей системе.
Проверка текущей конфигурации LVM
Перед расширением стоит посмотреть, из чего состоит текущая структура:
lsblk
pvs
vgs
lvs
pvs показывает физические тома (physical volume), vgs — группы томов с общим размером и свободным местом, lvs — логические тома с точками монтирования. Команда lsblk нужна для проверки нового размера диска на уровне блочного устройства после увеличения в панели хостинга.
Шаг 1: увеличение диска на уровне системы
После увеличения диска в панели хостинг-провайдера (у ZevsHost.net это делается в клиентской панели без перезагрузки VDS) ядру сообщают об изменении размера:
echo 1 > /sys/class/block/sda/device/rescan
partprobe /dev/sda
lsblk
При использовании раздела (например, /dev/sda3) с LVM внутри раздел расширяют командой growpart:
apt install -y cloud-guest-utils
growpart /dev/sda 3
После этого lsblk показывает увеличенный размер раздела /dev/sda3.
Шаг 2: расширение physical volume и logical volume
LVM получает сигнал о том, что физический том стал больше:
pvresize /dev/sda3
vgs
Поле VFree в выводе vgs показывает новое свободное место в группе томов. Далее расширяют логический том — на всё доступное место (-l +100%FREE) или на конкретный размер:
lvextend -l +100%FREE /dev/mapper/vgname-root
Имя логического тома уточняют командой lvs — оно отличается в зависимости от дистрибутива и способа создания VDS.
Шаг 3: расширение файловой системы
Увеличение логического тома не меняет размер файловой системы автоматически — её расширяют отдельной командой в зависимости от типа ФС:
| Файловая система | Команда расширения |
|---|---|
| ext4 | resize2fs /dev/mapper/vgname-root |
| xfs | xfs_growfs / |
Обе команды выполняются на смонтированной, работающей файловой системе — простой не требуется. Результат проверяют так:
df -h /
Типичные ошибки при расширении LVM
Самая частая проблема — пропуск шага с growpart или partprobe: тогда pvresize не видит нового места, потому что раздел в таблице разделов остался прежнего размера. Вторая ошибка — путаница с именем устройства: lvextend и resize2fs указывают на один и тот же logical volume, видный в lvs в колонке LV Path. Когда место после увеличения диска так и не появилось, диагностику начинают заново со статьи про поиск того, что занимает место на диске — свободное место может уже быть, просто файловую систему забыли расширить.
Итог: чек-лист расширения диска на LVM
- Увеличьте диск в панели хостинга, затем выполните
partprobeи, при необходимости,growpart. - Проверьте структуру:
pvs,vgs,lvs. - Расширьте физический том:
pvresize /dev/sdaN. - Расширьте логический том:
lvextend -l +100%FREE /dev/mapper/имя. - Расширьте файловую систему:
resize2fsдля ext4 илиxfs_growfsдля xfs. - Проверьте результат командой
df -hи настройте мониторинг ресурсов VDS для контроля следующего заполнения диска.