Инструменты пользователя

Инструменты сайта


lvm:lvm

LVM (Logical Volume Manager)

FIXME

Менеджер логических томов (Logical Volume Manager)

LV VG
PV
root sda1
usr sda2
home sdb
var sdc

Установка

apt install lvm2

Иерархический список блочных устройств

Команда: lsblk

Пример:

# lsblk
NAME            MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda               8:0    0 298,1G  0 disk
├─sda1            8:1    0   487M  0 part /boot/efi
├─sda2            8:2    0   244M  0 part /boot
└─sda3            8:3    0 297,4G  0 part
  ├─vg01-root   254:0    0    20G  0 lvm  /
  ├─vg01-swap   254:1    0   7,8G  0 lvm  [SWAP]
  └─vg01-home   254:2    0 269,6G  0 lvm  /home
sr0                     11:0    1  1024M  0 rom

Настройка

Папка: /etc/lvm

Команды

lvmКомандная оболочка для работы с LVM2
lvmconfLVM configuration modifier
lvmdiskscanscan for all devices visible to LVM2
lvmdumpcreate lvm2 information dumps for diagnostic purposes

Установка графического интерфейса для управления LVM

apt-get install system-config-lvm

PV

Физический том (Physical volume)

Обычно это раздел на диске или весь диск. В том числе, устройства программного и аппаратного RAID (которые уже могут включать в себя несколько физических дисков). Физические тома входят в состав группы томов.

Команды

pvchangeИзменить атрибуты физического тома
pvckПроверка физического тома
pvcreateИнициализировать физический том для использования в LVM
pvremoveУдалить метку LVM с физического тома
pvresizeИзменить размер физического тома, использующегося в группе томов
pvscanПоказать список всех физических томов

pvdisplay

Отображает карту распределения физических томов:

  • кратко:
    pvdisplay -C
  • подробно:
    pvdisplay -m

pvmove

Перенос эстенты с одного физического тома на другой.

Перенос логического тома LV из одного физического тома (PV) в другой, внутри одной группы томов(VG)

FIXME

Пример

Создание нового раздела с использованием GNU parted

# parted
(parted) select /dev/sdb
(parted) mklabel msdos
(parted) mkpart primary 0 100%

Добавление физического тома (PV) в группу томов(VG)

pvcreate /dev/sdb1
vgextend vg01 /dev/sdb1
pvdisplay

Перенос логического тома lv001 с /dev/sda5 на /dev/sdb1

pvmove -n lv001 /dev/sda5 /dev/sdb1

pvs

Показать информацию о физическом томе.

Пример вывода:

PV         VG   Fmt  Attr PSize   PFree
/dev/md0   vg-0 lvm2 a--  223,44g  96,27g
/dev/md1   vg-0 lvm2 a--  931,38g 681,38g

LV

Логический том (Logical volume)

Раздел группы томов, эквивалентен разделу диска в не-LVM системе. Представляет собой блочное устройство и, как следствие, может содержать файловую систему.

Команды

lvchangeИзменить атрибуты логического тома
lvconvertconvert a logical volume from linear to mirror or snapshot
lvdisplayПоказать информацию о логическом томе
lvextendУвеличить размер логического тома
lvmchange(команда устарела, её лучше не использовать)
lvmdiskscanПоказать список устройств, которые могут быть использованы как физический том
lvmsadcСобрать данные об активности использования LVM
lvmsarСоздать отчёт об активности использования LVM
lvreduceУменьшить размер логического тома
lvresizeИзменить размер логического тома
lvsПоказать информацию о логическом томе
lvscanПоказать список логических томов во всех группах томов

lvcreate

Создать логический том

Пример:

1. Создание тома home в группе томов vg на устройстве /dev/md1

lvcreate -L 30G -n home vg /dev/md1

2. Создание файловой системы на томе home

mkfs.ext4 /dev/vg/users-home

3. Монтирование тома

mount /dev/vg/home /srv/home

lvremove

Удалить логический том из системы.

lvremove ИМЯ_ГРУППЫ_ТОМОВ/ИМЯ_ТОМА

Пример:

lvremove vg01/lv001

lvrename

Переименование логического тома.

Пример:

lvrename /dev/vg01/lv001 /dev/vg01/lv001_test

Изменение размеров томов

Карту распределения физических томов можно узнать по команде pvdisplay.

Увеличение

  1. Добавляем 95 Гбайт:
    lvextend -L+95G /dev/mapper/vg--volume_name

    можно расширить до максимума (занять всё свободное место):

    lvextend /dev/mapper/vg--volume_name -l +100%FREE
  2. Изменяем размер ФС:
    resize2fs /dev/mapper/vg--volume_name

LVM — ALT Linux Wiki : Увеличение логических томов

Уменьшение

Для уменьшения размера корневой файловой системы нужно чтобы она не была смонтирована, для этого можно загрузить систему с внешнего носителя, например можно использовать SystemRescueCd или Finnix.

Например, чтобы уменьшить /home до 100 Гбайт и за счёт этого увеличить размер /root нужно выполнить следующие действия:

1. Размонтируем /home

umount /home

2. Выполняем проверку файловой системы

e2fsck -f /dev/mapper/vg01-home

3. Уменьшаем размер файловой системы раздела /home до 100 Гбайт:

resize2fs /dev/mapper/vg01-home 100G

4. Уменьшаем размер логического тома /dev/mapper/vg01-home до 100 Гбайт:

lvreduce -L 100G /dev/mapper/vg01-home

5. Расширяем логический том /dev/mapper/vg01-root до максимально возможного размера:

lvextend -l +100%FREE /dev/mapper/vg01-root

6. Увеличиваем размер файловой системы раздела /root используя все свободное место.

resize2fs /dev/mapper/vg01-root

7. Монтируем /home

mount /home

8. Смотрим на результат

lsblk

VG

Группа томов (Volume group)

Группа томов может содержать физические и логические тома.

Команды

vgcfgbackupСделать резервную копию конфигурации группы томов
vgcfgrestoreВосстановить из резервной копии конфигурацию группы томов
vgchangeИзменить атрибуты группы томов
vgckПроверить целостность группы томов
vgconvertИзменить формат метаданных группы томов
vgcreateСоздать группу томов
vgdisplayПоказать информацию о группе томов
vgexportРазрегистрировать группу томов в системе
vgimportЗарегистрировать эскпортированную группу томов в системе
vgimportcloneimport and rename duplicated volume group (e.g. a hardware snapshot)
vgmergeОбъединить группы томов
vgmknodesСоздать файлы устройств для групп томов в папке /dev/
vgreduceУдалить физический том из группы томов
vgremoveУдалить группу томов
vgsПоказать информацию о группах томов
vgscanВыполнить поиск групп томов
vgsplitПереместить физический том в новую группу томов

vgextend

Добавить физический том в группу томов.

Пример добавления тома /dev/md1 в группу vg01:

vgextend vg01 /dev/md1

vgreduce

Удалить неисправные записи

vgreduce vg01 --removemissing

vgrename

Переименовать группу томов

vgrename vg01 vg01-new

После изменения имени группы томов при необходимости нужно внести изменения в:

  • файлы загрузчика GRUB командой
    update-grub
  • файл /etc/fstab

Extents

Extent — это минимальная единица размера (блок) которой можно оперировать при работе с физическим или логическим томом.

PEФизическая мера (Physical extent)
LEЛогическая мера (Logical extent)

Значение по умолчанию: 4 Мбайт

:!: Физические тома и группы томов должны состоять из базовых блоков одинакового размера

Создание резервной копии логического тома

#удаление root-backup
lvremove vg/root-backup
 
# создание снимка root-backup для резервной копии root в группе томов vg на устройстве /dev/md2
# размер не менее реально размера исходного тома
lvcreate -L 50G -s -n root-backup /dev/mapper/vg-root /dev/md2
 
# монтирование снимка
mount /dev/vg/root-backup /mnt/root-backup

Ссылки

lvm/lvm.txt · Последние изменения: 2023-01-12 09:36 — GreyWolf