将 KVM .img 迁移到 VirtualBox .vdi

将 KVM .img 迁移到 VirtualBox .vdi

我正在尝试将虚拟机从 KVM 迁移到 Virtualbox (win7 64 位)。我能够使用以下命令转换磁盘映像:

VBoxManage convertfromraw -format VDI XX.img XX.vdi

qemu-img convert -f qcow2 XX.img -O vdi XX.vdi

我也尝试先转换为 raw,然后再转换为 vdi。当我将新磁盘安装到 IDE 或 SATA 控制器下的虚拟盒时,系统仍然无法启动。显示(Windows 正在加载文件...)然后重新启动。

非常感谢任何建议,我可能遗漏了一些细节。

答案1

当您移动磁盘映像时,已安装的操作系统并不知道这一点,它会尝试使用以前使用的虚拟化平台的控制器驱动程序进行启动。当 Windows 找不到当前安装的磁盘控制器的驱动程序时,就会出现 BSOD 并重新启动。

这与在不同的硬件平台之间移动 Windows 硬盘非常相似。

有两种解决方案 - 要么使用可以从 KVM 转换为 VBox 的 v2v 转换器(我不知道有什么,但如果你这样做,请分享),要么在新环境中启动虚拟机映像之前将驱动程序注入其中。最简单的方法是执行以下操作:

  • 转换之前,在 KVM 中运行mergeide.reg(您可以在 MS 网站以及几乎所有互联网上找到它)
  • 将KVM下的启动盘切换为IDE,并启动虚拟机
  • 如果一切正常,将图像转换qemu-img为 vbox 格式
  • 在 VBox 中创建一个虚拟机,第一个启动盘为 IDE(不是 SATA 或 SCSI)
  • 连接转换后的磁盘 - 系统应该启动
  • 安装 Vbox 磁盘驱动程序(可能需要附加辅助
    小磁盘才能使其生效)
  • 将启动盘的接口切换到所需的控制器类型,然后重新启动虚拟机

答案2

您应该能够在进行转换之前在 Windows VM 上运行 sysprep。这会告诉 Windows 在加载之前检查驱动程序,因为它们会发生变化。

相关内容