在保存状态下删除 VDI 后,VirtualBox 处于不确定状态

在保存状态下删除 VDI 后,VirtualBox 处于不确定状态

总结:我有一个处于“已保存”状态的虚拟机,有 2 个 vdis,其中一个已被删除。虽然它没有被安装,但现在我无法启动虚拟机、关闭电源,也无法从存储树中删除 .vdi。此设置现在处于不确定状态。我该如何修复虚拟机?


我曾经有 2 个虚拟机。Ubuntu 16.04 和 14.04。(主机是 Windows 8.1 64 位)。我曾经将每个虚拟机的 .vdi 添加为另一个虚拟机中的存储,以便轻松挂载、清零和压缩(以释放 Windows 主机的磁盘空间)。在我不再需要 14.04 VM 后,我删除了它,并删除了文件。当我这样做时,16.04 VM 处于“已保存”状态。所以现在当我尝试启动它时,我得到:

无法打开介质“C:\Users\user\VirtualBox VMs\Ubuntu 14.04.3\Ubuntu 14.04.3.vdi”。VD:打开映像文件“C:\Users\user\VirtualBox VMs\Ubuntu 14.04.3\Ubuntu 14.04.3.vdi”时出现错误 VERR_FILE_NOT_FOUND (VERR_FILE_NOT_FOUND)。结果代码:E_FAIL (0x80004005) 组件:MediumWrap 接口:IMedium {4afe423b-43e0-e9d0-82e8-ceb307940dda}

如果我转到 VM 设置 --> 存储,我无法删除它,因为 VM 的状态为“已保存”(保存时无法编辑设置)。

转到文件 --> 虚拟媒体管理器 --> 选择 Ubuntu 14.04.3.vdi --> 单击发布:

“无法从计算机 Ubuntu 16.04 的插槽 SATA 端口 1 中卸下硬盘 Ubuntu 14.04.3.vdi”计算机不可改变或正在运行(状态为已保存)。结果代码:VBOX_E_INVALID_VM_STATE (0x80BB0002) 组件:SessionMachine 接口:IMachine {b2547866-a0a1-4391-8b86-6952d82efaa0}

我尝试通过将其他有效的 vdi 复制到同一路径来“伪造 vdi”,但出现此错误:

介质“C:\Users\user\VirtualBox VMs\Ubuntu 14.04.3\Ubuntu 14.04.3.vdi”的 UUID {bd7ef404-0a0a-4fc6-9575-c79a0a07f81b} 与介质注册表(“C:\Users\user.VirtualBox\VirtualBox.xml”)中存储的值 {2dccffec-7ccf-4c05-b0e2-01761b3430ac} 不匹配。结果代码:E_FAIL(0x80004005)组件:MediumWrap 接口:IMedium {4afe423b-43e0-e9d0-82e8-ceb307940dda}

我还尝试编辑 Ubuntu 16.04.vbox 文件并更改 uuid 值(它在文件中出现了两次)。重新启动 Virtual Box。它看起来正在运行,但就在完成加载之前,我收到了一个错误:

ahci#0:源虚拟机在端口 1 上缺少设备。请确保源虚拟机和目标虚拟机具有兼容的存储配置 [ver=8 pass=final] (VERR_SSM_LOAD_CONFIG_MISMATCH)。结果代码:E_FAIL (0x80004005) 组件:ConsoleWrap 接口:IConsole {872da645-4a9b-1727-bee2-5585105b9eed}

我想再次使用虚拟机。如果可能的话,不丢弃已保存的状态。

答案1

在 VirtualBox 中,您始终可以放弃已保存的状态。

在 GUI 中,右键单击虚拟机并选择放弃已保存状态。Windows 上的快捷键是control+ J

一旦状态被丢弃,您应该能够从虚拟媒体管理器中删除对 VDI 的引用。

答案2

  1. 关闭 VirtualBox
  2. 编辑Ubuntu 16.04.vboxUbuntu 16.04.vbox-prev并移除

    <AttachedDevice 类型="硬盘" hotpluggable="true" 端口="1"
     设备=“0”> <图片uuid=“{bd7ef404-0a0a-4fc6-9575-c79a0a07f81b}”/>
     </附加设备>
     

  3. 启动 VirtualBox 并启动 VM。

是的,有一个很大的警告,上面写着“请勿编辑此文件”。但它起作用了 =P

相关内容