使用 VirtualBox 运行客户操作系统时,主机崩溃了。现在虚拟机无法启动,并抱怨:
无法打开介质“[file.vmdk]” VMDK:'[file.vmdk]' 中的grain表和备份grain表不一致(VERR_VD_VMDK_INVALID_HEADER)。
VD:打开图像文件‘[file.vmdk]’时出现错误 VERR_VD_VMDK_INVALID_HEADER(VERR_VD_VMDK_INVALID_HEADER)
我真正需要的只是从这个硬盘映像中获取一些文件。还有,有什么方法可以防止将来再次发生这种情况吗?我需要使用的一台主机非常不稳定,有时会崩溃。我不想再经历这种情况了。
答案1
从 VMWare 下载 VDD 套件这里并运行以下命令:
vmware-vdiskmanager -R <Path to vmdk file>
这修复了我的损坏的标头,该标头是由于虚拟机在 Virtualbox 中运行时断电造成的。
答案2
答案3
要修复损坏的.vhd 文件,请使用 %Program Files%\Oracle\VirtualBox\VBoxManage.exe internalcommands repairhd "corrupted.vhd"
答案4
修复此错误的更简单的方法无需任何外部工具。
从 Oracle VM VirtualBox Manager 的主窗口中,选择无法启动的 VM。单击右上角的“快照”。选择倒数第二个条目(因为最后一个条目可能已损坏,而前一个条目是正常的)。右键单击它并选择“恢复”(我看不出创建当前 VM 状态快照有什么意义,因为它有问题)。完成