Менеджер логических томов (Logical Volume Manager) — менеджер логических томов операционных систем GNU/Linux и OS/2. Она позволяет создавать поверх физических разделов (или даже неразбитых винчестеров) логические тома, которые в самой системе будут видны как обычные блочные устройства с данными (т.е. как обычные разделы). Основные преимущества LVM в том, что во-первых одну группу логических томов можно создавать поверх любого количества физических разделов, а во-вторых размер логических томов можно легко менять прямо во время работы. Кроме того, LVM поддерживает механизм снапшотов, копирование разделов «на лету» и зеркалирование, подобное RAID-1.
Для LVM существует три группы утилит, предназначенных для работы с физическими томами (pv*), логическими группами (lg*) и логическими томами (lv*). Так, команда pvcreate создает физические тома, команда pvscan - сообщает об наличествующих, а команда pvdisplay выводит о них полную информацию. А тройки команд vgcreate, vgscan, vgdisplay и lvcreate, lvscan, lvdisplay проделывают то же для групп томов и логических томов, соответственно.
Удаление LVM (или отдельных его частей, например, логических томов или групп томов) происходит в обратной последовательности их создания:
# vgremove vz
# pvremove /dev/sda3
Создание LVM
# pvcreate /dev/sda3 # pvdisplay
# vgcreate -s 32M vz /dev/sda3
Команда vgcreate запускается с именем группы в качестве первого аргумента и имени файла устройства раздела - как аргумента второго. Имя группы - произвольно, в путях к файлам устройств физических томов при использовании devfs должна применяться полная нотация (как это вывела команда pvscan). По умолчанию тома нарезаются на физические блоки extent'ы размером 4 Мбайт. При желании иметь другой размер блока - это можно явно задать опцией -s ##m. Рекомендуется использовать extent'ы в 32 Мбайт, в этом случае максимальный размер любого из будущих логических томов ограничивается величиной 2 терабайта, если же остановиться на умолчальном extent'е, предел тома составил бы 256 Гбайт.
# lvcreate -l 10G -n tmp vz # lvcreate -l 100%FREE -n rest vz
# mkfs.ext4 /dev/vz/tmp # mkfs.ext4 /dev/vz/rest