启用Windows10的Linux子系统并安装图形界面
前言
目前市面上的pc电脑主要运行着四大类系统,它们分别是微软的windows、苹果的macos、linux的发行版以及unix类系统。其中linux和unix都是开源的,因此市面出现的众多基于linux内核和unix内核的发行版系统,其中linux类系统数量最多、用户基数大,广泛使用于各行各业。相对于windows在桌面系统中的统治地位,linux凭借着强大的命令工具,以及极其可靠的稳定性扎根于服务器端的应用,当今全球至少三分之二的服务器运行着linux系统。毋庸置疑,linux是一款魅力十足的操作系统,就连独霸一方的windows系统也在最新的windows10中引入了linux子系统。
对于win10中的linux子系统,它并非通过虚拟化技术实现的,所以它的性能高于虚拟机。并且集成于windows系统中,免去了之前linux、windows双系统来回切换的麻烦。这或许是目前最为完美的linux和windows双系统解决方案。
这里额外提一下,macos是基于unix内核开发的,linux则兼容unix--或者说linux是linus编写的一个类unix系统。而windows之前几乎和这三者没有任何有关联的地方,但现在这一情况似乎有所转变。如果读者想要更多地了解这些操作系统之间的恩怨情仇,请自行查阅资料,这里不作过多阐述。
从win10的linux子系统发布到现在,已经快两年多了,我也使用了近两年,使用体验总体不错,完全满足一般学习和开发任务。在这里特此分享出安装教程,特别是图形界面的安装,当初可谓是遇坑无数。
安装linux子系统
目前windows应用商店为win10 提供了多款linux发行版本,包括ubuntu、debian、opensuse等。
这里我安装的ubuntu系统。
1、准备工作
在控制面版中启用linux子系统
在设置-更新和安全中-开发者选项中切换到开发人员模式
2、开始安装
在windows应用商店安装一个linux发行版本,我这里选择的是ubuntu。
安装完成后可以在开始菜单找到,点击即可打开
第一次进入需等待安装完成。
设置用户名和密码。
设置完成,进入系统。
若需要使用root用户,可通过sudo passwd设置root的密码。
接下来是把软件源修改为国内,因为默认官方源服务器在国外,访问太慢。当然你也可以选择跳过这一步,前提是你不嫌下载软件慢。
源的修改有两种方式:
- 通过修改源列表,即/etc/apt/sources.list。
-
通过
apt-add-repository
命令。
这里我修改为清华大学的服务器源。
安装图形界面
对于linux来说使用shell命令行完全满足大部分场景的使用。但是某些情况还是需要图形界面,比如查看图片、视频,浏览网页,ui设计等,这也是我折腾图形界面的原因。
1、安装必要软件包
可以通过执行sudo dpkg-reconfigure locales 选择zh-cn.utf-8将系统切换为中文环境。
安装桌面、语言包、字体包、输入法等必要软件。
这里选择的是lxde轻量化桌面,个人比较推荐,当然也可以选择xfce,lxqt等其他桌面。
sudo apt install lubuntu-core lxde fcitx fcitx-googlepinyin sudo apt install language-pack-gnome-zh-hans sudo apt install fonts-wqy-zenhei
2、安装远程桌面软件(tigervnc)
受限于linux子系统实现原理,图形界面无法直接输出到显示器。这里选择vnc远程桌面来解决,当然你也可以选择其他远程桌面方案。
最新版二进制包tigervnc_x86_64,下载解压到根目录即可使用。
执行vncserver :0 打开一个远程桌面端口。:0 表示开启5900端口,:1表示5901端口,依次类推。vncserver详细用法见vncserver -h。
打开windows端vnc客户端,输入ip和对于端口号即可进入图形界面。若为第0个端口(即5900)可省略。
通过客户端我们会发现,进入后为黑屏无图像显示。这是因为lxde桌面没启动。
第一次使用vnc会在用户家目录下生成 .vnc目录,里面是vnc的配置文件。通过在~/.vnc/xstartup 末行加上 startlxde& 。
通过vncserver -kill :0;vncserver :0重启端口即可进入桌面。
这里是我的桌面。
安装到此结束,然后就可以愉快地使用了。
其他
1、进入linux子系统的几种方式
1、通过开始菜单图标。
2、通过命令行输入对应发行版名称。比如的ubuntu、debian等。
我同时安装了debian和ubuntu,通过名称可以进入对于版本。
3、通过bash命令。
可以看到这两个命令都能进入linux系统。但是我这里安装了两个linux子系统,这种方式只会进入默认的ubuntu系统。下面会介绍到怎么修改默认的linux发行版。
4、通过wsl命令
查看wsl的用法,我们可以看到wsl -d可以指定版本。
2、切换默认linux版本
通过wslconfig命令即可切换。
比如wslconfig /s debian
2、无法切换中文输入
如果在fcitx工具和fcitx输入法已经安装的情况下,还是无法在图形界面下打出中文。
可以尝试如下步骤。
在~/.xprofile中添加(没有则创建):
export xim=fcitx export xim_program=/usr/bin/fcitx export xim_args="" export gtk_im_module=fcitx export qt_im_module=fcitx export depends="fcitx" export xmodifiers="@im=fcitx"
也可将其写入~/.bashrc或者直接写入~/.vnc/xstartup。
修改~/.vnc/xstartup末行:
. ~/.xprofile startlxde & fcitx &
下一篇: 亲密接触ASP.Net(12)