KVM Виртуальная машина под управлением Windows XP: как получить файлы от гостя к хосту? - PullRequest
1 голос
/ 17 ноября 2011

У меня Ubuntu 10.04, и на нем kvm / qemu. Я создал устройство хранения данных в формате «raw» и установил на него XP, поэтому я предполагаю, что файл имеет формат ntfs. У меня есть файл на виртуальной машине XP, который я хочу на хосте. Это 2 гигабайта, поэтому я не могу просто использовать zip-привод или записать его на CD.

Я попытался смонтировать файл (winxp.img) с помощью losttup:

$ sudo losetup /dev/loop1 winxp.img
$ sudo losetup -a
/dev/loop1: [0801]:40637460 (/home/robert/kvm/images/winxp.img)
$ sudo mount -t ntfs /dev/loop1 /home/robert/kvm/images/tmp
NTFS signature is missing.
Failed to mount '/dev/loop1': Invalid argument
The device '/dev/loop1' doesn't seem to have a valid NTFS.
Maybe the wrong device is used? Or the whole disk instead of a
partition (e.g. /dev/sda, not /dev/sda1)? Or the other way around?

Я думал, что это сработает. Это не так. У кого-нибудь есть другая идея?

Ответы [ 2 ]

3 голосов
/ 17 ноября 2011

winxp.img и loop1 - это не один раздел (который можно смонтировать), это образ полного жесткого диска с собственной таблицей разделов.

Вы должны прочитать таблицу разделов из loop1 с помощью fdisk; вычислите смещение первого раздела и выполните:

sudo mount -o offset=N -t ntfs /dev/loop1 /home/robert/kvm/images/tmp

где N смещено в байтах.

Телепатический режим включен N 32256 телепатический режим выключен

и, наконец, режим Google включен (я буду Google "смещение 32256"):

http://en.wikibooks.org/wiki/QEMU/Images#Mounting_an_image_on_the_host

Linux и другие Unix-подобные хосты могут монтировать образы, созданные в необработанном формате, с помощью устройства обратной связи. Из учетной записи root (или с помощью sudo) смонтируйте петлю со смещением 32 256.

mount -o loop,offset=32256 /path/to/image.img /mnt/mountpoint

1 голос
/ 20 ноября 2011

На мой взгляд, общий и правильный путь - через libguestfs http://libguestfs.org/ Если вы справитесь с этим, вы можете открыть каждое виртуальное изображение в любом формате и получить файлы или даже сделать снимки

...