В Linux Logical Volume Manager ( LVM ) представляет собой структуру сопоставления устройств , которая обеспечивает управление логическими томами для ядра Linux . Большинство современных дистрибутивов Linux поддерживают LVM до такой степени, что могут иметь свои корневые файловые системы на логическом томе . [3] [4] [5]
Хайнц Мауэльсхаген написал исходный код LVM в 1998 году, когда он работал в Sistina Software , взяв основные рекомендации по проектированию от диспетчера томов HP-UX . [1]
LVM можно рассматривать как тонкий программный слой поверх жестких дисков и разделов, который создает абстракцию непрерывности и простоты использования для управления заменой жестких дисков, переразметкой и резервным копированием.
LVM также работает в кластере с общим хранилищем , в котором диски, содержащие PV, совместно используются несколькими хост-компьютерами, но может потребоваться дополнительный демон для доступа к метаданным посредством блокировки.
Описанные выше механизмы решают только проблемы с доступом LVM к хранилищу. Файловая система, выбранная для размещения поверх таких LV, должна либо поддерживать кластеризацию сама по себе (например, GFS2 или VxFS ), либо она должна монтироваться только одним узлом кластера в любое время (например, в активно-пассивной конфигурации).
Тома LVM должны содержать политику выделения по умолчанию для новых томов, созданных на их основе. Позже это можно изменить для каждого LV с помощью lvconvert -A
команды или на самой VG с помощью vgchange --alloc
. Чтобы свести к минимуму фрагментацию, LVM сначала попытается использовать самую строгую политику (непрерывную), а затем перейдет к самой либеральной политике, определенной для объекта LVM, пока выделение не будет, наконец, успешным.