So mounten Sie das QEMU FreeBSD qcow2-Image in Linux

So mounten Sie das QEMU FreeBSD qcow2-Image in Linux

Ich habe ein FreeBSD 11 qcow2-Image, das ich in meiner Debian Jessie-Maschine mounten möchte. Ich habe andere qcow2-Images, auf denen Debian Jessie läuft, und ich kann Partitionen im Image mithilfe von libguestfs-tools auf dem Host mounten. Im Fall von Debian Jessie qcow2 mache ich normalerweise so etwas und es funktioniert wie erwartet:

guestmount -a <qcow2 image> -m <parition to mount in the image> --ro <mount point>

Wenn ich das Gleiche jedoch für ein FreeBSD-Image mache, erhalte ich eine Fehlermeldung:

root@bonddtest:/home/igw/bondd_testbed/ooo# guestmount -a ../shaper.qcow2 -m /dev/gpt/rootfs --ro /mnt
libguestfs: error: mount_options: mount_options_stub: /dev/gpt/rootfs: No such file or directory
guestmount: '/dev/gpt/rootfs' could not be mounted.
guestmount: Did you mean to mount one of these filesystems?
guestmount:     /dev/sda1 (unknown)
guestmount:     /dev/sda2 (unknown)
guestmount:     /dev/sda3 (ufs)

Ich habe die anderen drei Partitionsvorschläge ausprobiert, aber sie führen alle zum gleichen Fehler. Funktioniert das nicht aufgrund von Unterschieden in den Dateisystemtypen? Die FreeBSD-Partition, die ich mounten möchte, ist UFS, während sich der Mount-Punkt in einer EXT4-Partition befindet.

Antwort1

Ich habe herausgefunden, wie das geht, und es ist eine Kombination aus Ridgys Vorschlag oben und der Verwendung des Dienstprogramms qemu-nbd, wie hier vorgeschlagenBlog:

  1. Verbinden Sie die FreeBSD qcow2-Datei mit dem NBD-Gerät:

    qemu-nbd -c /dev/nbd0 qcow2_file

  2. Bestimmen Sie die Partition, die auf dem NBD-Gerät gemountet werden soll. Ich habe lslbk verwendet:

root@host:# lsblk 
NAME     MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sr0       11:0    1  1024M  0 rom  
nbd0      43:0    0    21G  0 disk 
├─nbd0p3  43:3    0    20G  0 part 
├─nbd0p1  43:1    0  62.5K  0 part 
└─nbd0p2  43:2    0     1G  0 part

Mein qcow2-Image hat eine Größe von 20 GB, daher habe ich nbd0p3 zum Mounten ausgewählt

  1. Hängen Sie die NBD-Gerätepartition an einen Einhängepunkt ein:

    mount -r -t ufs -o ufstype=ufs2 /dev/nbd0p3 /mnt

Hinweis: Es ist am besten, das qcow2-Image schreibgeschützt zu mounten, da es sonst beschädigt werden kann.

verwandte Informationen