在上一篇文章中,我们主要聊了一下:在
Windows系统中,安装WSL
子系统。
文章在此:WSL:在 Windows 系统中开发 Linux 程序的又一神器
但是WSL只是长得像Linux而已,虽然在这个子系统中,我们可以
执行 Linux 程序,但是到了底层,WSL调用的还是win32 API。
也就是说:
WSL 只是一个适配层。
后来,微软终于放出了WSL2这个真正的Linux
子系统,这是一个
真正的 Linux 完整内核,与传统的虚拟机VitualBox、VMWare一样,但是它与宿主机的互操作性更好。
为了完整性,我们就继续把这个流程给走完。
在这个过程中遇到的
问题、需要的安装软件等
资源,已经上传到
网盘,在文末有下载地址。
安装 WSL2 的前提条件
在开始之前,我们先来看一下目前电脑中的WSL的版本。
在Windows命令行窗口,输入指令:wsl --list --verbose(或者输入简化版本:wsl -l -v),得到结果:
可以看到我们上一篇文章中安装的Ubuntu-18.04,而且WSL的版本是1。
如果要升级到WSL2,Windows操作系统的
内核版本必须满足一定的要求,如下:
我们就按照官方的要求,检查一下自己的电脑是否满足需求:选择Windows徽标键
Win R,然后键入winver,选择 “确定”。
看来我的系统能满足要求,那就继续下一个步骤!
如果你的内核版本不满足这个需求,可以搜索关键字
“WIN10 获取内部预览版本”,就可以找到解决方案。
安装 WSL2
继续以
管理员身份启动PowerShell,然后执行指令:
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
此时,又到了重启电脑的时候!
重启之后,继续在PowserShell中,把Ubuntu-18.04设置为WSL2版本。
输入的指令是:
wsl --set-version Ubuntu-18.04 2
这个步骤可能会遇到这样的问题:
解决方法:从微软的官网下载
WSL2 Linux 内核升级包,下载地址是:
WSL2 Linux 内核升级包
也可以从文末的网盘中下载
下载之后,一路Next安装即可。
此时,在PowerShell中重新执行wsl --set-version Ubuntu-18.04 2指令(需要等待一段时间,大概1分钟左右吧):
同时,把WSL的默认版本改为2:wsl --set-default version 2。
此时,我们再执行指令wsl -l -v来查看一下,就变成WSL2版本了:
现在,重新启动一下Ubuntu-18.04系统,虽然还是黑乎乎的窗口,但是它可是一个
完整、纯正的 Linux 操作系统!
安装桌面环境
这部分的操作,参考:https://autoize.com/xfce4-desktop-environment-and-x-server-for-ubuntu-on-wsl-2/。
关于Linux的桌面环境,它与Windows桌面环境的理念有一些不一样。
在Linux系统中,桌面环境是一个
独立的应用程序,不属于操作系统的一部分。
换句换说,即使没有桌面环境,也可以很愉快的玩Linux系统,比如那些服务器之类的设备。
Linux中的桌面由
客户端和
服务端组成,它们之间通过一个协议来通信,俗称:X11。
服务端:负责图形的显示;
客户端:根据系统设置的 DISPLAY 环境变量,把显示图形的请求发送给服务端;
因此,为了让我们的Ubuntu显示图形界面,我们就需要安装一个服务端软件和客户端软件。
注意:这里的
服务端软件是安装在
Windows系统中的,
客户端是安装在Ubuntu-18.04系统中的。
安装客户端
在Ubuntu-18.04的终端窗口中,执行如下指令安装客户端软件xfce4:
sudo apt-get update