Hyper-V + WSL2与 VirtualBox 共存

Posted luad

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Hyper-V + WSL2与 VirtualBox 共存相关的知识,希望对你有一定的参考价值。

Hyper-V + WSL2与 VirtualBox 共存

这样的教程网上有很多,我先简单复述一下。真正麻烦的是我遇到的问题——开启 Hyper-V 后我的电脑会多出几个删不掉的虚拟显示器来,会在文章结尾提出解决方法。


配置 VirtualBox

VirtualBox 只有 6.0 以上的版本才能兼容 Hyper-V. 最好在一个全新的环境下操作。

找到 VirtualBox 的安装目录,在那里用 powershell 执行以下命令:

#对所有虚拟系统启用Hyper-V支持
./VBoxManage.exe setextradata global "VBoxInternal/NEM/UseRing0Runloop" 0
#只对某特定系统启用Hyper-V支持
./VBoxManage.exe setextradata "<虚拟机名字>" "VBoxInternal/NEM/UseRing0Runloop" 0

启用虚拟机平台可选组件(Hyper-V)

在 powerShell 中以管理员身份运行以下命令:

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

以上命令运行成功之后重启系统

切换到 WSL2

在 powerShell 中以管理员身份运行以下命令:

#将默认的WSL发行版设置成WSL2.
wsl --set-default-version 2
#设置某一个发行版为WSL2. 将 <Distro> 换成你想要设置的发行版(如 Ubuntu-18.04)
wsl --set-version <Distro> 2

如果命令运行过程中出现 WSL 2 需要更新其内核组件。有关信息,请访问 https://aka.ms/wsl2kernel 提示则需要先到其指示的网站上下载并安装 Linux 内核更新包 才能继续操作。

技术图片

安装 Linux 发行版

去 Microsoft store 下载并安装一个 Linux 的发行版,完成后可使用 wsl -l -v 查询 wsl 版本。

技术图片

解决遇到的问题

问题是在启用 Hyper-V 后出现的。具体表现就是多出来好几个虚拟显示器,并且 HDMI 输出受到影响,外接显示器点不了。解决方法也很简单,去 Intel 官网下载最新的核心显卡驱动就行了。

驱动一定要用官网的,千万不要用什么驱动精灵驱动大师之类的软件。我试过一款无捆绑的绿色免安装软件驱动总裁(DrvCeonw)也是不行。

技术图片

技术图片

以上是关于Hyper-V + WSL2与 VirtualBox 共存的主要内容,如果未能解决你的问题,请参考以下文章

安装VMware16兼容Hyper-v+WSL2+Docker+解决0x80370102报错

无法使用安装了启用 Hyper-V 和 WSL2 的 VirtualBox 启动 Windows 10 来宾 [关闭]

使用过vmware 再开启wsl2闪退处理

WSL2 请启用虚拟机平台 Windows 功能并确保在 BIOS 中启用虚拟化

最详尽教程完整介绍-Windows 的 Linux 子系统-WSL1&WSL2

WSL1 升级为 WSL2