我在VirtualBox 6.1.30上使用Windows11,在CoreM3-6Y30cpu@ 0.90GHz上使用Windows11。
我从Microsoft下载了Ubuntu20.04。启动它时,出现了一条消息,即应该在Windows特性的Control中启用名为的选项。
我打开了该功能,重新启动了计算机,并试图再次启动WSL Ubuntu。这一次有一条消息要更新到WSL2。
因此,在具有管理权限的PowerShell中,我输入了以下命令:
dism.exe / online / enable-feature / featurename command: VirtualMachinePlatform / all / norestart
..。然后重新启动计算机并下载提到的这里内核更新包。
最后,在具有管理权限的PowerShell中,我运行了推荐的命令:
wsl --set-default-version 2
之后,我重新启动了我的计算机,并在WSL上启动了Ubuntu,并得到了这个问题中提到的“错误0x80370102”。
只有在我运行wsl --set-default-version 1
之后,它才起作用。
它能是什么?硬件虚拟化有什么问题吗?
其他一切都可以在VirtualBox上工作。
我从命令wsl --set-default-version 1
开始,然后检查bcdedit / set hypervisorlaunchtype auto
,但是它没有工作。
只有在那之后,wsl --set-default-version 1
才起作用。
发布于 2021-12-18 22:14:10
考虑到我们在评论中讨论过的内容,我个人的建议是坚持使用WSL1。它通过在对Linux内核API的调用和对WSL2内核的调用之间创建一个“转换层”来涵盖的大部分用例。WSL2在虚拟化方面确实更进一步(至少)了一步,但只有在支持的硬件上才能很好地工作。
至于WSL2,您可能有不止一个问题,但至少有一种可能是您需要在VirtualBox中启用“嵌套虚拟化”。
WSL2使用Windows虚拟机管理程序的特性来创建虚拟机.因为您已经在VirtualBox VM中运行Windows 11,这意味着您正在“VM中运行VM”--这是“嵌套虚拟化”。
我相信,对这个特性的支持是从VirtualBox 6.1.4开始添加的,但是您必须启用它。有关详细信息,请参阅这个文档页面,但要总结如下:
VBoxManage modifyvm vm-name --nested-hw-virt on
从命令行设置选项。据报道,即使在不受支持的硬件上,这也会“强制”虚拟化(但我无法证实)。请注意,通过对这个答案的评论,如果您的CPU不支持必要的特性,那么“性能就会非常糟糕”。https://askubuntu.com/questions/1382670
复制相似问题