首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Linux中挂载QEMU FreeBSD qcow2映像

如何在Linux中挂载QEMU FreeBSD qcow2映像
EN

Unix & Linux用户
提问于 2017-04-28 16:00:44
回答 1查看 3.9K关注 0票数 0

我有一个FreeBSD 11 qcow2图像,我想安装在我的Debian机器上。我有其他qcow2映像,上面有Debian,我可以使用libguestfs-工具在主机上挂载分区。在Debian qcow2一案中,我通常会这样做,它的工作方式与预期的一样:

代码语言:javascript
复制
guestmount -a <qcow2 image> -m <parition to mount in the image> --ro <mount point>

但是,当我对FreeBSD图像执行相同的操作时,会得到一个错误:

代码语言:javascript
复制
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)

我尝试过其他三种分区建议,但它们都会导致相同的错误。这是否由于文件系统类型的不同而无法工作?我试图挂载的FreeBSD分区是UFS,而挂载点在EXT4分区中。

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2017-05-02 15:58:19

我想出了如何做到这一点,它结合了ridgy上面的建议和使用这个博客中建议的qemu实用程序:

  1. 将FreeBSD qcow2文件连接到NBD设备:qemu -c /dev/nbd 0 qcow2_file
  2. 确定NBD设备的安装分区。我用了lslbk:

root@host:# lsblk名称MAJ:MIN RM大小RO型MOUNTPOINT sr0 11:0 1 1024M 0 rom nbd0 43:0 0 21 G0磁盘├─nbd0p3 43:3 0 20G 0 part├─nbd0p1 43:1 0 62.5K 0 part└─nbd0p2 43:2 0 1G 0

我的qcow2映像有20G大小,所以我选择了nbd0p3来安装

  1. 将NBD设备安装到安装点:-r -t ufs -o ufstype=ufs2 /dev/nbd0p3 /mnt

注意:最好将qcow2映像挂载为只读,否则它可能会损坏。

票数 2
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/361971

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档