是否可以像 iso 那样挂载 vdi?或者使用某些存档程序打开它?如果可以,怎么做?
编辑:我的 vdi 正在动态扩展存储并且我也有快照。
答案1
对于固定和动态尺寸的图像:
在 Linux 上,您可以使用qemu-nbd
。在 Debian 上,它位于 qemu-tools 包中。它可能位于其他发行版的类似包中。它允许您挂载 qemu 识别的任何磁盘映像,包括 VDI。
安装它,modprobe nbd
确保它已加载,然后执行 aqemu-nbd -c /dev/nbd0 <vdi-file>
使其可用。除非另有说明,否则它将显示为映像中每个分区的 /dev/nbd0p?。有关更多详细信息,请参阅手册页。
完成后,qemu-nbd -d /dev/nbd0
将其分离。
确保不要同时将其连接到多个位置!这将导致问题!
答案2
固定大小磁盘驱动器的工具:
可以使用静态 vdi 映像(固定大小,不动态扩展)来完成。只需在映像中找到分区开始的偏移量即可。
这是包含 shell 脚本的页面它可以帮您自动完成整个过程。
如果是动态的:
方法 1
如果您使用的是动态尺寸图像,请将其转换为固定尺寸图像(确保您有高清空间),然后使用上述工具(参考):
vditool COPYDD myDynamicDisk.vdi static_dump.vdi
方法 2
读完后发现 vditool 不再包含在内。创建分区映像的一个简单方法是使用gparted iso作为 Virtualbox VM 内部的启动盘,将分区的映像创建到网络上的某个位置,然后挂载该映像。
答案3
如果我们知道你为什么想要这个,你可能会得到更好的答案。virtualbox 不再工作了吗?你想更快地传输到虚拟机吗?
无需“运行”虚拟机即可实现动态 + 快照的最简单方法是将虚拟机引导至 livecd iso 映像。然后,您可以使用 sshfs、smbfs、nfs 等在主机上安装正在运行的虚拟机的驱动器。
如果是静态的并且没有快照,您也可以将磁盘保留为 vmware 格式(virtualbox 支持它)并使用 vmware 的 vmmount.pl 进行挂载。
如果传输速度是个问题,请确保您的主机和虚拟机位于主机和虚拟机的主机文件中,或者通过其他方法进行名称解析。(DNS 等)