Linux und andere Unix-ähnliche Hosts können Images, die mit dem Raw-Formattyp erstellt wurden, mit einem Loopback-Gerät mounten. Hängen Sie von einem Root-Login (oder mit sudo) einen Loopback mit einem Offset von 32.256 ein.
mount -o loop,offset=32256 /path/to/image.img /mnt/mountpoint
Für andere Arten von qemu-Bildern können Sie qemu-nbd verwenden
Außerdem können Sie normalerweise Bilder von einem Format in ein anderes konvertieren.
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.
Versuchen Sie zu googeln, ich habe die Lösung für (VirtualBox) .VDI in einer Sekunde gefunden :
Dies funktioniert nicht für mich am 16.04.5 für meine .vmdk ... funktioniert über den fdisk-Schritt, und die Hauptpartition meiner VM, die ich mounten möchte, startet ebenfalls um 2048, mount -o ro,loop,offset=1048576 ./foo.raw /mnt/fooschlägt jedoch mit fehl only root can use "--options" option. Mit sudoscheitert es mit failed to setup loop device: Permission denied.
Für vmdkund vhdDateien hatte ich nur mit dem folgenden kpartxBefehl Glück :
sudo kpartx -a -v <image-flat.vmdk>
Überprüfen Sie die Ausgabe für losetup, es sollte Loop-Gerät enthalten /dev/loop0; Überprüfen Sie auch, ob sudo blkideine Partition vorhanden ist /dev/mapper/loop0p1, und verwenden Sie sie dann im Befehl mount:
sudo mount -o rw /dev/mapper/loop0p1 /mnt/vmdk
Wobei / mnt / vmdk Ihr Einhängepunkt ist, der erstellt werden soll, sudo mkdir /mnt/vmdkwenn er nicht vorhanden ist.
Antworten:
Nach diesem Artikel :
Außerdem können Sie normalerweise Bilder von einem Format in ein anderes konvertieren.
Versuchen Sie zu googeln, ich habe die Lösung für (VirtualBox) .VDI in einer Sekunde gefunden :
Das Gleiche wie "Qemus Weg". Keine Grenzen!
quelle
Dies ist auf Ubuntu 16.04 .
Als root:
Installieren und mit affuse montieren.
Überprüfen Sie die Sektorgröße
Sektorgröße und Startsektor multiplizieren. Im Beispiel wäre es 2048 * 512
Mit diesem Versatz montieren
Die Festplatte sollte nun in / mnt / vmdisk eingebunden und lesbar sein
quelle
mount -o ro,loop,offset=1048576 ./foo.raw /mnt/foo
schlägt jedoch mit fehlonly root can use "--options" option
. Mitsudo
scheitert es mitfailed to setup loop device: Permission denied
.Sie können auch qemu verwenden:
Zum
.vdi
Wenn sie nicht installiert sind, können Sie sie installieren (unter Ubuntu ist dies der Befehl).
und dann montieren
Zum
.vmdk
Beachten Sie, dass ich die Option verwende
-r
, da VMDK Version 3 nur lesbar sein muss, um von qemu gemountet werden zu könnenund dann montiere ich es
Ich benutze,
nbd1
weilnbd0
manchmal gibt 'mount: special device / dev / nbd0p1 existiert nicht'Für .ova
Mit dem obigen Befehl wird die
.vmdk
Festplatte extrahiert und dann gemountet.quelle
Für
vmdk
undvhd
Dateien hatte ich nur mit dem folgendenkpartx
Befehl Glück :Überprüfen Sie die Ausgabe für
losetup
, es sollte Loop-Gerät enthalten/dev/loop0
; Überprüfen Sie auch, obsudo blkid
eine Partition vorhanden ist/dev/mapper/loop0p1
, und verwenden Sie sie dann im Befehl mount:Wobei / mnt / vmdk Ihr Einhängepunkt ist, der erstellt werden soll,
sudo mkdir /mnt/vmdk
wenn er nicht vorhanden ist.source at commandlinefu.com (Befehl kpartx und mount)
Aushängen mit:
quelle
vhd
, es funktioniert!