Суть процесса такая: смонтировать каталог ВМ с гипервизора на свой комп по ssh, оттуда смонтировать vmdf файл ВМ и уже из него вытащить нужную папку.
Готовим нужные каталоги, на которые будем монтировать "диски":
sudo -i mkdir mnt cd mnt mkdir -p /tmp/mnt/{ssh,vmfs}В каталог ssh смонтируем папку ВМ по ssh, а в vmfs - нужный раздел нашей ВМ.
Монтируем каталог ВМ по ssh:
sshfs root@10.1.1.1:/vmfs/volumes/datastore1/vm1/ /tmp/mnt/ssh
Монтируем нужный нам vmdk-файл как loopback-устройство:
losetup /dev/loop6 /tmp/mnt/ssh/vm1-flat.vmdkМонтировать нужно обязательно "*-flat.vmdk" файл.
Теперь нужно посмотреть какой размер сектора и с какого сектора начинается интересующий нас раздел:
fdisk -l /dev/loop6 Disk /dev/loop6: 101 GiB, 108447924224 bytes, 211812352 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 Disklabel type: dos Disk identifier: 0xa242fc11 Device Boot Start End Sectors Size Id Type /dev/loop6p1 * 2048 411647 409600 200M 83 Linux /dev/loop6p2 411648 1460223 1048576 512M 82 Linux swap / Solaris /dev/loop6p3 1460224 211812351 210352128 100,3G 83 LinuxНас интересует вторая строка - "Units", в конце этой строки указан размер сектора в байтах. Так же нас интересует начальный сектор нужного нам раздела. Этот сектор указан в колонке "Start". Предположим, что нам нужен третий раздел (/dev/loop6p3), начинается он с сектора 1460224.
Далее считаем, на сколько байт от начала диска смещен нужный нам раздел:
echo '512*1460224' | bc 747634688
И монтируем этот раздел как еще одно loopback-устройство:
losetup -o 747634688 /dev/loop5 /dev/loop6 mount -r /dev/loop5 /tmp/mnt/vmfs
Теперь в катал vmfs смонтирован интересующий нас раздел нашей виртуальной машины. Забираем нужные нам файлики/папочки... И отключаем смонтированные "диски":
cd umount /tmp/mnt/vmfs losetup -d /dev/loop5 losetup -d /dev/loop6 umount /tmp/mnt/ssh rm -ri /tmp/mnt exit
PS: Если при отмонтировании sshfs ругается "target is busy", попробуйте так:
umount -l /tmp/mnt/sshPPS: Заметка для себя, чтобы не забыть.
Информация с сайта http://blog.angel2s2.ru/.
Комментариев нет:
Отправить комментарий