启用“虚拟机平台”功能后 VirtualBox 虚拟机无法启动

启用“虚拟机平台”功能后 VirtualBox 虚拟机无法启动

我无法在 VirtualBox 中启动任何虚拟机并出现此错误:

如果没有嵌套分页和不受限制的客户执行,则无法启用嵌套的 VT-x/AMD-V!(VERR_CPUM_INVALID_HWVIRT_CONFIG)。

我重新安装了最新的 VirtualBox,但同样的问题仍然存在。

请注意,最近我通过以下命令安装了 WSL2这个官方文档所以我认为问题应该与这次安装有关,并决定回滚一些步骤(而不是卸载 WSL2 本身)来验证;

最终我发现“步骤3:启用虚拟机平台功能”导致了这个问题:

在安装 WSL 2 之前,你必须启用虚拟机平台 可选功能。

以管理员身份打开 PowerShell 并运行:

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

重新开始你的机器完成 WSL 安装并更新到 WSL 2。

因此我删除了此功能,VM 启动问题得到解决,但之后 WSL2 现在无法启动。

现在我被困在这里该怎么办,我需要 WSL 和 VM 都能工作,但他们对该功能不满意,需要为两者禁用或启用该功能。


操作系统:Windows-10 1909(内部版本 18363.1139)

答案1

更新 2021-10-05:现在 WSL2 和 VM 都可以在 VirtualBox v6.1.26 r145957 (Qt5.6.2)/OS: Windows10 v20H2 b19042 上正常运行

注释 2021-11-22:如果您决定升级 VirtualBox,请注意它在 v6.1.28 中不起作用并且需要安装 Windows11。


发现 WSL2 使用 Hyper-V 技术进行 Linux 虚拟化,而启用“虚拟机平台”的 WSL2 会启用 Hyper-V,因此会与 VirtualBox 等 2 级虚拟机管理程序发生冲突,导致无法成功启动虚拟机。

通过以管理员身份运行此命令cmd,您可以获取当前值:

bcdedit.exe /enum {current} | find "hypervisorlaunchtype"

要禁用它,请删除 Windows 可选功能中的“虚拟机平台”,或运行以下命令:

dism.exe /online /disable-feature /featurename:VirtualMachinePlatform /all /norestart

或者使用以下命令禁用 Hyper-V:

bcdedit.exe /set hypervisorlaunchtype off

笔记:目前无法在启用 Hyper-V 时让 VirtualBox 和 WSL2 同时工作,因此通过禁用 Hyper-V,您将无法打开 WSL2。

相关内容