Linux и другие Unix-подобные хосты могут монтировать образы, созданные в необработанном формате, с помощью устройства обратной связи. Из имени пользователя root (или с помощью sudo) смонтируйте петлю со смещением 32 256.
mount -o loop,offset=32256 /path/to/image.img /mnt/mountpoint
Для других типов изображений qemu вы можете использовать qemu-nbd
Плюс, как правило, вы можете конвертировать изображения из одного формата в другой.
raw - (default) the raw format is a plain binary image of the disc
image, and is very portable.
On filesystems that support sparse files,
images in this format only use the
space actually used by the data recorded in them.
cloop - Compressed Loop format, mainly used for reading Knoppix
and similar live CD image formats
cow - copy-on-write format, supported for historical reasons only and
not available to QEMU on Windows
qcow - the old QEMU copy-on-write format, supported for
historical reasons and superseded by qcow2
qcow2 - QEMU copy-on-write format with a range of special features,
including the ability to take multiple snapshots, smaller
images on filesystems that don't support sparse files,
optional AES encryption, and optional zlib compression
vmdk - VMware 3 & 4, or 6 image format, for exchanging images
with that product
vdi - VirtualBox 1.1 compatible image format, for exchanging
images with VirtualBox.
Попробуйте Google, я нашел решение для (VirtualBox) .VDI в одну секунду :
Это не работает для меня 16.04.5 для моего .vmdk ... работает через шаг fdisk, и основной раздел моей виртуальной машины, тот, который я хочу смонтировать, также начинается в 2048, но mount -o ro,loop,offset=1048576 ./foo.raw /mnt/fooне работает с only root can use "--options" option. С sudoэтим не получается failed to setup loop device: Permission denied.
обратите внимание, что я использую опцию -r, потому что VMDK версии 3 должен быть доступен только для чтения, чтобы его можно было смонтировать с помощью qemu
а потом я его монтирую
mount /dev/nbd1p1 /mnt
Я использую, nbd1потому что nbd0иногда выдает «mount: специального устройства / dev / nbd0p1 не существует»
Для .ova
tar -tf image.ova
tar -xvf image.ova
Вышеизложенное извлечет .vmdkдиск, а затем смонтирует его.
Для vmdkи vhdфайлов, я только повезло с kpartxкомандой ниже:
sudo kpartx -a -v <image-flat.vmdk>
Проверьте вывод на наличие в losetupнем петлевого устройства /dev/loop0; также проверьте sudo blkidраздел /dev/mapper/loop0p1, затем используйте его в команде mount:
sudo mount -o rw /dev/mapper/loop0p1 /mnt/vmdk
Где / mnt / vmdk - это ваша точка монтирования, которую нужно создать, sudo mkdir /mnt/vmdkесли она не существует.
Ответы:
Согласно этой статье :
Плюс, как правило, вы можете конвертировать изображения из одного формата в другой.
Попробуйте Google, я нашел решение для (VirtualBox) .VDI в одну секунду :
Так же, как команды "Qemu's way". Нет границ!
источник
Это на Ubuntu 16.04 .
Как корень:
Установите и смонтируйте используя affuse.
Проверьте размер сектора
Умножьте сектор и начальный сектор. В примере это будет 2048 * 512
Смонтировать, используя это смещение
Теперь диск должен быть смонтирован и доступен для чтения в / mnt / vmdisk
источник
mount -o ro,loop,offset=1048576 ./foo.raw /mnt/foo
не работает сonly root can use "--options" option
. Сsudo
этим не получаетсяfailed to setup loop device: Permission denied
.Вы также можете использовать qemu:
Для
.vdi
если они не установлены, вы можете установить их (в Ubuntu эта команда)
а затем смонтировать его
Для
.vmdk
обратите внимание, что я использую опцию
-r
, потому что VMDK версии 3 должен быть доступен только для чтения, чтобы его можно было смонтировать с помощью qemuа потом я его монтирую
Я использую,
nbd1
потому чтоnbd0
иногда выдает «mount: специального устройства / dev / nbd0p1 не существует»Для .ova
Вышеизложенное извлечет
.vmdk
диск, а затем смонтирует его.источник
Для
vmdk
иvhd
файлов, я только повезло сkpartx
командой ниже:Проверьте вывод на наличие в
losetup
нем петлевого устройства/dev/loop0
; также проверьтеsudo blkid
раздел/dev/mapper/loop0p1
, затем используйте его в команде mount:Где / mnt / vmdk - это ваша точка монтирования, которую нужно создать,
sudo mkdir /mnt/vmdk
если она не существует.Исходный код на commandlinefu.com (команда kpartx и mount)
Размонтировать с помощью:
источник
vhd
, он работает!