virtualbox - 无法导入设备。找不到 SCSI Controller

标签 virtualbox vmware

我在 Mac 上,正在尝试导入虚拟机镜像(.ova 文件)。我尝试在 VM 上导入文件并收到以下错误。

找不到名为“SCSI Controller ”的存储 Controller

任何已经存在的针对此问题的解决方案。

最佳答案

我从这里得到了答案的线索:https://ctors.net/2014/07/17/vmware_to_virtualbox

基本上您需要更改虚拟磁盘 Controller ,例如将 ddb.adapterType 从“buslogic”或“lsilogic”更改为“ide”

但是,如果您没有 VMware 来启动原始镜像并删除 vmware 工具并删除硬盘,您可以破解 .ova 文件中的 .ovf 文件以将虚拟 SCSI Controller 切换为 IDE Controller 。

方法如下。

首先打开 ova 存档,假设它位于当前目录 vm.ova

mkdir ./temp
cd temp
tar -xvf ../vm.ova

这将提取 3 个文件,一个 *.ovf 文件、一个虚拟磁盘 *.vmdk 文件和一个 list .mf 文件。

编辑 .ovf 文件,找到 SCSI 引用,它将是 lsilogicsas 或“buslogic”或“lsilogic”。用 ide 替换那个词。

当您使用它时,您可能想要重命名所有文件,以便它们的名称中没有空格或奇怪的字符,这使它对 UNIX 更友好。当然,如果您重命名文件,则需要修改 .ovf 和 .mf 文件中的引用。

因为您已经修改了文件,所以您需要重新计算 .mf 文件中的 sha1 值。例如,运行 sha1sum 获取值并替换 mf 文件中的旧值。

$ sha1sum vm.ovf
4806ebc2630d9a1325ed555a396c00eadfc72248  vm.ovf

现在您已经更换了磁盘 Controller 并修复了 list 的 sha1 值,您可以将 .ova 打包备份。文件必须在存档中按顺序排列,所以这样做(使用您的文件名)

tar -cvf ../vm-new.ova ./vm.ovf
tar -rvf ../vm-new.ova ./vm.vmdk
tar -rvf ../vm-new.ova ./vm.mf

完成。现在您可以打开 Virtualbox 并单击 File -> Import Appliance 然后将其指向 vm-new.ova 文件。完成后,您应该能够启动虚拟机。

希望对您有所帮助。

干杯卡尔

关于virtualbox - 无法导入设备。找不到 SCSI Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26862647/

相关文章:

vagrant - 将 Vagrant VM 存储在自定义文件夹中

android - 在 VirtualBox 上为 Android 4.3 设置静态 IP

macos - 如何将 Virtual Box mac OS Big Sur 更改为不同的屏幕分辨率(尺寸),包括 1366x768?

VMware问题,机器无法启动

windows - 使用 hyper-v 与 virtualbox 的性能优势有多大?

java - VirtualBox Sdk Java - 从主机操作系统在 guest 操作系统内执行命令

vmware - Sigar 1.6.4 崩溃 : EXCEPTION_ACCESS_VIOLATION

vmware - 没有 RDP 时自动发送 key 失败

java - 在 VMware ESX 虚拟机上构建 Maven 期间性能缓慢

virtualization - VM 上的 Windows Phone 7 模拟器?