VDI 到硬盘

VDI 到硬盘

有没有办法将文件系统从 VirtualBox .vdi 文件(或类似文件)复制到硬盘上的物理分区?

答案1

可能有一个实用程序可以执行此操作,但您无需任何特殊软件即可轻松完成此操作,这始终是一个有用的技巧,因为它可以与任何类型的虚拟化软件一起使用。

只需在附加了 .vdi 的虚拟机中启动实时映像即可。确保已启用网络,并且目标磁盘和客户机的计算机可以互相看到。然后,dd 虚拟分区并传输到客户机上的 netcat,使用 netcat 在主机系统上接收它,并使用 dd 写入分区。

在目标机器上运行:

netcat -l -p 4444 | dd of=/dev/<target partition or disk>

它会等待。在客户机运行中:

dd if=/dev/<source partition or disk> | netcat <target-machine-ip> 4444

这是假设源设备和目标设备的大小完全相同,但事实可能并非如此。

请注意,目标机器不一定是虚拟化主机,它可以是客户机可以通过网络访问的任何机器。

有关以多种方式操作 .vdi 图像的特殊软件,请参阅:安装 VirtualBox 驱动器映像(vdi)?

答案2

您应该复制文件系统的内容,而不是以按位模式将映像写入物理磁盘。对于支持 TRIM 的 SSD,尤其推荐这样做,因为当 TRIM 启动时,它会删除它不知道的文件(它只是开始清理它认为没有存储文件的块,这是以按位模式写入 SSD 的所有内容的情况)。此外,将文件复制到新文件系统会自动为您对文件进行碎片整理。

您可以以 root 身份使用cprsync-a参数来保留权限和所有权。

最后,您需要重新安装引导加载程序,才能拥有一个可正常运行的引导操作系统。可以使用选项通过 Live CD 重新安装 GRUB 和 GRUB2 --boot-directory,Windows 应该在其安装盘上提供类似的功能。

答案3

你可以将 VDI 文件转换为 RAW 格式,然后使用dd命令将映像复制到分区中。

例如:

VBoxManage clonehd --format RAW file.vdi file.img
dd if=./file.img of=/dev/<partition_here>

注意:sudo如果需要,请使用。在 中指定正确的设备时要小心/dev

有关的:

相关内容