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 共存的更多相关文章

  1. windows server 2008 r2 企业版 hyper v做虚拟化的相关问题处理

    windows server 2008 r2 企业版 hyper v做虚拟化的相关问题处理 今天在dell r710 上用windows server 2008 r2企业版hyper v 做虚拟化,添 ...

  2. 设置Hyper V

    1.打开服务器管理器 2.添加角色和功能 3.安装类型 -> 基于角色或基于功能的安装 4.服务器选择 -> 下一步 5.服务器角色 勾选"Hyper V"

  3. HYPER -V 独立安装的 2016版本 中文版 下载好慢啊

    HYPER -V 独立安装的 2016版本 中文版 下载好慢啊

  4. Hyper V NAT 网络设置 固定IP / DHCP

    Hyper V 默认的Default Switch同时支持了NAT网络以及DHCP,虚拟机能够访问外网. 但使用过程中发现这个IP网段经常变化,而且Hyper V没有提供管理其NAT网络与DHCP的图 ...

  5. VMware VirtualBox共存时桥接注意

    今天在VMware必须桥接的一个虚拟机上需要连接其他机器时,遇到总是连接不到的情况. 具体现象: HOST机器可以ping A机器 VMWare Guest机器无法ping A机器,也无法ping H ...

  6. HYPER V 文件共享 复制文件 共享硬盘 来宾服务

    虚拟机的设置   -->  集成服务 –> 来宾服务  勾选    文件就可以在本地机器和虚拟机上来回复制了. 他可让 Hyper-V 管理员在运行虚拟机的同时将文件复制到虚拟机,且无需使 ...

  7. win10自带虚拟机Hyper V联网

      在控制面板里打开程序和功能     打开启用或关闭windows 功能     勾选Hyper-V     在windows 管理工具打开Hyper-V 管理器   打开虚拟交换机管理器     ...

  8. 自带hyper -v 或者 Vmware安装Linux centos

    centos系统存在网盘,链接: https://pan.baidu.com/s/1A5ywyLjIegcftaT_xCvPbA 密码: n6v4 https://blog.csdn.net/nanc ...

  9. 在Windows 10 系统上启用Hyper V遇到的错误:0x800f0831

    Hyper-V是微软的一款虚拟化技术,是微软第一个采用类似Vmware和Citrix开源Xen一样的基于hypervisor的技术. 在Windows 10的powershell命令里,输入如下的命令 ...

随机推荐

  1. 批量删除gmail邮件

    以删除tor.com发送的邮件为例说明. 首先点击邮件搜索框右边的三角,在"发件人"下面写上"tor.com": 点"搜索"按钮,看一下范围 ...

  2. anaconda的报错:Anaconda:There is an instance of anaconda navigator already running error

    anaconda的报错:Anaconda:There is an instance of anaconda navigator already running error 出现这个问题的时候人蒙了,主 ...

  3. 清理docker常用命令

    0.查看docker占用空间docker system df1.一键删除所有已经停止的容器 docker container prune 2.删除所有容器(包含停止的 正在运行的) docker rm ...

  4. kivy之TextInput属性实操练习

    TextInput属性比较多,常用在页面设计上的属性做了实操练习,便于很直观的了解学习本部件.并将其中一个输入提示的属性在实操源码里单独建立了一个功能进行演示. 主程序文件main.py我就不贴出来了 ...

  5. [ES6深度解析]12:Classes

    我们将讨论一个老问题:在JavaScript中创建对象的构造函数. 存在的问题 假设我们想要创建最典型的面向对象设计的示例:Circle类.假设我们正在为一个简单的Canvas库编写一个Circle. ...

  6. Docker中安装了gitlab,忘记了管理员密码,进行管理员密码重置

    重置docker中gitlab中root账号的密码 一.进入Docker的gitlab容器中 1.查看所有容器 docker ps 2.进入gitlab容器中 docker exec -it gitl ...

  7. Android中Context解析

    Context概念 当我们访问当前应用的资源,启动一个新的activity的时候都需要提供Context. Context是一个抽象基类,我们通过它访问当前包的资源(getResources.getA ...

  8. Docker是简介

    Docker是什么  使用最广泛的开源容器引擎 一种操作系统级的虚拟化技术 依赖于Linux内核特性:Namespace(资源隔离)和Cgroups(资源限制) 一个简单的应用程序打包工具 D ...

  9. JavaWeb之HttpSession

    时间:2016-11-17 22:33 --HttpSession一.HttpSession概述    1.HttpSession是由JavaWeb提供的,用来进行会话跟踪的类.    2.sessi ...

  10. redis连接池 go-redis

    为什么使用连接池? 首先Redis也是一种数据库,它基于C/S模式,因此如果需要使用必须建立连接,稍微熟悉网络的人应该都清楚地知道为什么需要建立连接,C/S模式本身就是一种远程通信的交互模式,因此Re ...