Как работает Linux Logical Volume Manager (lvm)
В этой статье описывается основная логика, лежащая в основе менеджера логических томов Linux, и приводятся реальные примеры настройки и использования. Хотя Debian Linux будет использоваться для этого руководства, те же команды можно применять и в других дистрибутивах Linux.
В этом уроке вы узнаете:- Основные понятия LVM
- Как управлять физическими томами, логическими томами и группами томов

Требования к программному обеспечению и используемые условные обозначения
категория | Требования, соглашения или используемая версия программного обеспечения |
---|---|
система | Распределение независимым |
Программное обеспечение | Пользовательские инструменты управления логическими томами (установлены по умолчанию) |
Другой | Чтобы следовать этому руководству, вы уже должны быть знакомы с основными понятиями разбора и командной строкой linux. |
Условные обозначения | # - требует, чтобы данные команды linux выполнялись с правами root либо напрямую как пользователь root, либо с помощью sudo команды$ - требует, чтобы данные команды linux выполнялись как обычный непривилегированный пользователь |
Создать разделы
Для этого примера Linux lvm нам нужен неразмеченный жесткий диск. Отныне мы будем предполагать, что это так /dev/sdb
. Сначала нам нужно создать физические тома. Физические тома могут создаваться как на необработанных, неразделенных блочных устройствах, так и на отдельных разделах. Ради этого урока мы будем работать над последним.
Мы можем использовать наш предпочтительный инструмент для создания разделов. В этом примере я использовал cfdisk
.


Перегородки готовы к использованию.
Создать физические тома
Используйте команду pvcreate для создания физических томов.
# pvcreate /dev/sdb1
# pvcreate /dev/sdb2
Команда pvdisplay отображает все физические тома в вашей системе.
# pvdisplay
В качестве альтернативы следует использовать следующую команду linux :
# pvdisplay /dev/sdb1

Создать виртуальную группу
На этом этапе нам нужно создать виртуальную группу, которая будет служить контейнером для наших физических томов. Чтобы создать виртуальную группу с именем «mynew_vg», которая будет включать раздел / dev / sdb1, мы можем выполнить следующую команду linux :
# vgcreate mynew_vg /dev/sdb1
Чтобы включить оба раздела одновременно, мы можем использовать эту команду:
# vgcreate mynew_vg /dev/sdb1 /dev/sdb2

Не стесняйтесь добавлять новые физические тома в виртуальную группу с помощью команды vgextend.
# vgextend mynew_vg /dev/sdb2

Создать логические тома
Из нашего большого пирога (виртуальной группы) мы можем вырезать кусочки (логические тома), которые будут рассматриваться как разделы для нашей системы Linux. Чтобы создать логический том с именем «vol01» и размером 400 МБ из виртуальной группы «mynew_vg», используйте следующую команду linux . Здесь мы будем:
- создать логический том размером 400 МБ -L 400
- создать логический том размером 4 ГБ -L 4G
Давайте продолжим, сначала мы создадим меньший логический том:
# lvcreate -L 400 -n vol01 mynew_vg

Теперь очередь за логическим томом размером 1 ГБ. Мы назовем это vol02:
# lvcreate -L 1000 -n vol02 mynew_vg

Обратите внимание на свободный размер в виртуальной группе.

Создать файловую систему на логических томах
Логический том почти готов к использованию. Все, что нам нужно сделать, это создать на нем файловую систему:
# mkfs.ext3 -m 0 /dev/mynew_vg/vol01
В -m
параметр определяет процент зарезервирован для супер-пользователя, можно установить в 0 , чтобы использовать все доступное пространство (по умолчанию 5%).

Отредактируйте / etc / fstab
Чтобы файловая система была автоматически смонтирована , мы должны добавить запись для нее в /etc/fstab
:

Монтировать логические тома
Прежде чем монтировать, не забудьте создать точку монтирования.
# mkdir /home/foobar

Расширение логического тома
Самым большим преимуществом логического тома является то, что он может быть расширен в любое время, когда у нас заканчивается пространство. Например, чтобы увеличить размер логического тома и добавить еще 800 МБ, мы можем запустить эту команду:
# lvextend -L +800 /dev/mynew_vg/vol01

Приведенная выше команда на самом деле не увеличивает размер файловой системы, а только размер логического тома. Чтобы заставить файловую систему расти и использовать дополнительное пространство, нам нужно выполнить:
# resize2fs /dev/mynew_vg/vol01
Посмотрите на рисунок ниже, чтобы увидеть, какие проблемы могут возникнуть при расширении тома:

Удаление логического тома
Команду lvremove
можно использовать для удаления логических томов. Мы должны убедиться, что на логическом томе не хранятся ценные данные, прежде чем мы попытаемся удалить его. Кроме того, мы должны убедиться, что объем не установлен.
# lvdisplay

# lvremove /dev/mynew_vg/vol02
