WSL2:Windows 亲生的 Linux 子系统

网友投稿 1756 2022-10-13

WSL2:Windows 亲生的 Linux 子系统

WSL2:Windows 亲生的 Linux 子系统

文章目录

​​安装 WSL2 的前提条件​​​​安装 WSL2​​​​安装桌面环境​​

​​安装客户端​​​​配置 DISPLAY 环境变量​​​​安装服务端​​​​启动客户端​​​​中文支持​​

在上一篇文章中,我们主要聊了一下:在

​​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 操作系统!

安装桌面环境

这部分的操作,参考:​​Linux​​​ 的桌面环境,它与 ​​Windows​​ 桌面环境的理念有一些不一样。

在 ​​Linux​​ 系统中,桌面环境是一个独立的应用程序,不属于操作系统的一部分。

换句换说,即使没有桌面环境,也可以很愉快的玩 ​​Linux​​ 系统,比如那些服务器之类的设备。

​​Linux​​​ 中的桌面由客户端和服务端组成,它们之间通过一个协议来通信,俗称:​​X11​​。

服务端:负责图形的显示;客户端:根据系统设置的 DISPLAY 环境变量,把显示图形的请求发送给服务端;

因此,为了让我们的 ​​Ubuntu​​ 显示图形界面,我们就需要安装一个服务端软件和客户端软件。

注意:这里的服务端软件是安装在 ​​Windows​​​ 系统中的,客户端是安装在 ​​Ubuntu-18.04​​ 系统中的。

安装客户端

在 ​​Ubuntu-18.04​​​ 的终端窗口中,执行如下指令安装客户端软件 ​​xfce4​​:

sudo apt-get update && sudo apt-get upgrade -ysudo apt-get install xfce4

配置 DISPLAY 环境变量

因为 ​​Ubuntu​​​ 中的客户端 ​​xfce4​​​ 需要把显示请求,通过网络发送给 ​​Windows​​​ 上的服务端,因此需要知道 ​​Windows​​​ 系统的 ​​IP​​​ 地址,在 ​​Windows​​​ 系统中的命令行窗口中查看:​​ipconfig​​

然后在 ​​Ubuntu-18.04​​​ 中把这个 ​​IP​​​ 地址,配置到家目录下的 ​​.bashrc​​ 文件中:

$ cd$ vi .bashrc

在文件末尾添加:

export DISPLAY=192.168.192.1:0

保存、关闭文件之后,执行:​​source ~/.bashrc​​ 更新即可。

安装服务端

图形界面有 ​​VcXsrv​​​ 和 ​​Xming​​​ 两款软件,我们选择前面的 ​​VcXsrv​​。

同样的,我已经把 vcxsrv-64.1.20.9.0.installer.exe 放在网盘里,-后一路 ​​Next​​ 安装。

安装之后,启动 ​​Windows​​​ 桌面上的 ​​XLaunch​​ 程序:

然后,按照参考文档中的配置,如下:

在最后一个步骤,可以把配置信息保存在桌面上。

启动客户端

在 ​​Ubuntu-18.04​​​ 系统中的命令行窗口,执行指令:​​startxfce4​​:

此刻,神器的事情就发生了:你的 Windows 系统中是不是就跳出了下面这个窗口:

可以打开桌面上 ​​File System​​,是不是看到了很多熟悉的身影?

在打开 ​​mnt​​​ 目录,是不是看到了 ​​Windows​​ 系统中的盘符?

但是,中文信息显示的都是乱码!那我们就来安装中文语言支持包。

中文支持

在 ​​Ubuntu-18.04​​​ 系统命令行窗口,设置 ​​locale​​:

此时,我们可以使用桌面环境中的终端窗口,如下图所示:

sudo vi /etc/locale.gen

把下图中的蓝色这一行复制,然后去掉前面的 ​​#​​​ 和 ​​空格​​,然后保存、退出。

然后在终端中执行指令: ​​sudo locale-gen​​

单机右上角的用户名,选择 【Log Out…】

此时,​​Ubuntu​​​ 虚拟机的 ​​WSL​​​ 窗口中的 ​​xfce4​​​ 客户端会退出,再次执行 ​​startxfce4​​ 启动客户端:

再次,在桌面中的终端窗口中,把 ​​locale​​ 改为中文:

sudo vi /etc/default/locale

把 ​​LANG=C.UTF-8​​​ 改为 ​​LANG=zh_CN.UTF-8​​

然后,把下面这个几个中文语言包给它安装进去:

sudo apt install language-pack-zh-hanssudo apt install language-pack-gnome-zh-hanssudo apt install language-pack-kde-zh-hans

此刻,你再看一下刚才的那些乱码,是不是已经正确显示中文了?

------ End ------

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Linux从头学02:x86中内存【段寻址】方式的来龙去脉
下一篇:SYBlog- PHP 博客程序(syblogo含义)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~