Диспетчер логических томов (Linux)


В 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, пока выделение не будет, наконец, успешным.


Различные элементы LVM
Базовый пример головы LVM
Внутреннее устройство версии 1 LVM. На этой диаграмме PE означает физическую протяженность.