Монтирование LVM-based томов (LVM-in-LVM)
Подробное руководство по монтированию LVM-based томов внутри других LVM (LVM-in-LVM)
Ситуация в которой может понадобиться данная процедура, довольно не частая, однако, иногда приходится с ней столкнуться, например при работе с виртуальными машинами.
Представим что у нас есть виртуальная машина на LVM разделе, внутри которой так же есть LVM разделы. К примеру CentOS, при установке, по умолчанию, создает LVM-based разделы, за исключением раздела /boot
Задача состоит в том, чтобы добраться до данных в этих разделах с родительской машины.
Дано
Виртуальная машина на LVM-разделе /dev/mapper/vol-centos1
Внутри неё имеются разделы /boot, / и swap, причем / и swap на LVM
Решение
Сперва посмотрим что из себя представляет /dev/mapper/vol-centos1
1 | # kpartx -l /dev/mapper/vol-centos1 |
Теперь замапим разделы:
1 | kpartx -a /dev/mapper/vol-centos1 |
После этого в /dev/mapper у нас появятся два раздела: vol-centos1p1 и vol-centos1p2
Первый раздел vol-centos1p1 (/boot) нас не интересует, мы можем его хоть сейчас примонтировать. Нас интересует второй раздел vol-centos1p2, в котором находятся / и swap.
Просканируем и увидем LVM-тома:
1 | # lvm pvscan |
Теперь нам необходимо активировать LVM-тома, что бы добраться до них, делаем:
1 | # lvm vgchange -a y |
В /dev/mapper появятся еще два раздела: VolGroup-lv_root и VolGroup-lv_swap
Вот теперь мы спокойно можем примонтировать раздел VolGroup-lv_root и удобно работать с ним:
1 | mount /dev/mapper/VolGroup-lv_root /mnt |
После работы, надо все вернуть на круги своя.
Отмонтируем:
1 | umount /dev/mapper/VolGroup-lv_root |
Деактивируем LVM-тома:
1 | lvm vgchange -a n VolGroup |
Удаляем маппинг:
1 | kpartx -d /dev/mapper/vol-centos1 |