LVM (Logical Volume Manager)

Тема дорожной карты · Linux & Unix Fundamentals

LVM добавляет уровень логических томов поверх физических дисков: можно менять размер, делать снапшоты и страйпинг без переразметки. Стек выглядит так: physical volumes (pvcreate) → volume groups (vgcreate) → logical volumes (lvcreate). Расширение тома: lvextend -r -L +20G (флаг -r сразу растит и файловую систему); уменьшать можно только ext4 (после umount и fsck) — XFS уменьшать нельзя. Используйте lvcreate -s для copy-on-write снапшотов перед рискованными операциями и следите за заполнением снапшота, иначе он станет недействительным. Команды lvs, vgs, pvs — read-only инструменты осмотра.

Как это работает

LVM (Logical Volume Manager) имеет слои: физические диски → разделы (fdisk, parted, gdisk) → опционально LVM (PV/VG/LV) или RAID (mdadm) → файловые системы (mkfs.ext4, mkfs.xfs) → монтирования (в /etc/fstab для persistence). df -h — свободное место; du -sh * — что его жрёт; lsblk — дерево блочных устройств; blkid — UUID. SSD выигрывают от discard или еженедельного fstrim. iostat и iotop — поиск I/O-боттлнеков.

Когда применять

LVM — на серверах, где может понадобиться рост ёмкости или снапшоты; пропустите на ноутах или single-purpose VM. RAID — для избыточности на bare metal; в облаке блок-стор сам справляется (gp3 на AWS, network-ssd на Yandex Cloud). Всегда /etc/fstab с UUID (не /dev/sda1 — имена девайсов меняются после reboot в некоторых конфигах). Алёрты на disk-full — до того, как кусает.

Типичные ошибки

Ловушки LVM (Logical Volume Manager): опечатка dd if=/dev/zero of=/dev/sda (мгновенная потеря данных — осторожно с /dev/-путями); resize смонтированной FS в неверном порядке (сначала раздел, потом FS — или LVM, где порядок менее ломкий); игнор исчерпания inode до ENOSPC, несмотря на свободные GB в df; непонимание, что rm файла, открытого процессом, не освобождает место (lsof | grep deleted).

Связанные понятия

Полезные ресурсы