Монтирование образа гостевой системы в хост-системе.

Иногда возникает ситуация, когда требуется смонтировать раздел из образа потушенной виртуальной машины. В моем случае, образ виртуальной машины содержал раздел с lvm, из которого мне нужно было смонтировать отдельный том. Звучит запутанно, но на деле все не так и сложно.

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

Для начала ищем доступное loop-устройство командой

loop /dev/loopN

где N — цифра от 0 и выше.

Если мы получаем ответ такого вида:

loop: can't get info on device /dev/loop55: No such device or address

значит устройства такого loop-диска еще нет и мы можем занять это имя.

losetup /dev/loop55  /xen/VPS123.img

Чтобы проверить, что мы сможем работать с диском, выполним такую команду:

fdisk -ul /dev/loop55

Disk /dev/loop55: 257.7 GB, 257698037760 bytes
255 heads, 63 sectors/track, 31330 cylinders, total 503316480 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0007d98c

Device Boot      Start         End      Blocks   Id  System
/dev/loop55p1   *        2048     1026047      512000   83  Linux
Partition 1 does not end on cylinder boundary.
/dev/loop55p2         1026048   503316479   251145216   8e  Linux LVM

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

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

kpartx -a /dev/loop55

После этого в директории /dev/mapper появятся файлы устройств loop55p1 и loop55p2

Теперь можно подцеплять LVM-том

# pvscan
PV /dev/dm-1   VG vg_vps2138   lvm2 [239.51 GiB / 0    free]
Total: 1 [239.51 GiB] / in use: 1 [239.51 GiB] / in no VG: 0 [0   ]

# vgchange -a y
3 logical volume(s) in volume group "vg_vps2138" now active 

Вот и все. LVM-подцеплен и разделы доступны для монтирования.

Запись опубликована в рубрике Программное обеспечение, Работа с метками , , , , , . Добавьте в закладки постоянную ссылку.

Комментарии запрещены.