Это старая версия документа.
Содержание
Linux Volume Manager (LVM)
Linux Volume Manager (LVM) - это очень мощная система управления томами с данными для Linux. Она позволяет создавать поверх физических разделов (или даже неразбитых винчестеров) логические тома, которые в самой системе будут видны как обычные блочные устройства с данными (т.е. как обычные разделы). Основные преимущества LVM в том, что во-первых одну группу логических томов можно создавать поверх любого количества физических разделов, а во-вторых размер логических томов можно легко менять прямо во время работы. Кроме того, LVM поддерживает механизм снапшотов, копирование разделов «на лету» и зеркалирование, подобное RAID-1.
sudo lvm
. Команда help
покажет список команд.
Создание и удаление
Как уже отмечалось, LVM строится на основе разделов жёсткого диска и/или целых жёстких дисков. На каждом из дисков/разделов должен быть создан физический том (physical volume). К примеру, мы используем для LVM диск sda и раздел sdb2:
pvcreate /dev/sda pvcreate /dev/sdb2
На этих физических томах создаём группу томов, которая будет называться, скажем, vg1:
vgcreate -s 32M vg1 /dev/sda /dev/sdb2
Посмотрим информацию о нашей группе томов:
vgdisplay vg1
Групп можно создать несколько, каждая со своим набором томов. Но обычно это не требуется.
Теперь в группе томов можно создать логические тома lv1 и lv2 размером 20 Гбайт и 30 Гбайт соответствено:
lvcreate -n lv1 -L 20G vg1 lvcreate -n lv2 -L 30G vg1
Теперь у нас есть блочные устройства /dev/vg1/lv1 и /dev/vg1/lv2.
Осталось создать на них файловую систему. Тут различий с обычными разделами нет:
mkfs.ext4 /dev/vg1/lv1 mkfs.reiserfs /dev/vg1/lv2
Удаление LVM (или отдельных его частей, например, логических томов или групп томов) происходит в обратном порядке - сначала нужно отмонтировать разделы, затем удалить логические тома (lvremove
), после этого можно удалить группы томов (vgremove
) и ненужные физические тома (pvremove
).
Добавление физических томов
Чтобы добавить новый винчестер sdc в группу томов, создадим физический том:
pvcreate /dev/sdc
И добавим его в нашу группу:
vgextend vg1 /dev/sdc
Теперь можно создать ещё один логический диск (lvcreate
) или увеличить размер существующего (lvresize
).
Удаление физических томов
Чтобы убрать из работающей группы томов винчестер sda сначала перенесём все данные с него на другие диски:
pvmove /dev/sda
Затем удалим его из группы томов:
vgreduce vg /dev/sda
И, наконец, удалим физический том:
pvremove /dev/sda
Вообще-то, последняя команда просто убирает отметку о том, что диск является членом lvm, и особой пользы не приносит. После удаления из LVM для дальнейшего использования диск придётся переразбивать/форматировать.
Изменение размеров
LVM позволяет легко изменять размер логических томов. Для этого нужно сначала изменить сам логический том:
lvresize -L 40G vg1/lv2
а затем файловую систему на нём:
resize_reiserfs /dev/vg1/lv2