我使用了微软的 disk2vhd,所以我尝试使用它创建一个新的虚拟机,但出现了这个错误
Failed to open the hard disk C:\Users\user\Documents\Virtual Box Images\win7vir.VHDX
Could not open the medium 'C:\Users\user\Documents\Virtual Box Images\win7vir.VHDX'.
VHDX: Required flag of metadata item does not meet expectations 'C:\Users\user\Documents\Virtual Box Images\win7vir.VHDX' (VERR_VD_GEN_INVALID_HEADER).
VHDX: BAT region in image 'C:\Users\user\Documents\Virtual Box Images\win7vir.VHDX' is missing (VERR_VD_GEN_INVALID_HEADER).
VD: error VERR_VD_GEN_INVALID_HEADER opening image file 'C:\Users\user\Documents\Virtual Box Images\win7vir.VHDX' (VERR_VD_GEN_INVALID_HEADER).
Result Code: E_FAIL (0x80004005)
Component: Medium
Interface: IMedium {29989373-b111-4654-8493-2e1176cba890}
Callee: IVirtualBox {3b2f08eb-b810-4715-bee0-bb06b9880ad2}
Callee RC: VBOX_E_OBJECT_NOT_FOUND (0x80BB0001)
答案1
简短回答:使用 powershell 命令行将 VHDX 转换为 VHD。据我所知,需要安装 hyperv 或其变体之一才能使用 convert-vhd 命令行。
Convert-VHD –Path c:\test\MY-VM.vhdx –DestinationPath c:\test\MY-NEW-VM.vhd
答案2
答案3
自 2023 年 11 月起,您可以使用VirtualBox 命令行 VBoxManage
将 VHDX 转换为 VirtualBox 支持写入的格式。
在 Windows 上,从 Vbox 管理工具目录:
VBoxManage.exe clonemedium disk D:\path\to\image.vhdx D:\path\to\newimage.vdi --format vdi
在 Unix 中也是一样
vboxmanage clonemedium disk /path/to/image.vhdx /path/to/newimage.vdi --format vdi
这是 10 岁功能要求用于 VHDX 支持
答案4
转换这个的时候花了不少时间。在迁移到 Linux 之前,我已经备份了所有 hyperv,但后来发现必须以 vhd 格式从 Hyper-v 中专门导出它们。
进入 Linux 后,我意识到 VirtualBox 不支持 VHDX。我不得不启动 Windows 10 VM,移动文件,安装 Hyper-V 和所有相关组件,只是为了转换该死的文件并将其移回。
*Convert-VHD –Path c:\test\MY-VM.vhdx –DestinationPath c:\test\MY-NEW-VM.vhd*
但遗憾的是,我们成功了。