Windows10下访问Ubuntu子系统(WSL)的桌面环境
Windows10下访问Ubuntu子系统(WSL)的桌面环境
文章目录
Why Linux ?
最近有个需求是go语言的服务程序需要提供python的sdk供另一个项目调用。而这个python项目的pip源是公司内部,且其中有一个包只有linux版本。
Why WSL ?
在双系统、虚拟机、子系统(Windows Subsystem for Linux)三者中,首先排除了双系统,首先不能随时切换,而且在新的系统中重现当前工作环境(不只是开发环境)代价太大。而虚拟机需要额外安装软件且有额外资源开销,于是尝试在子系统中折腾一把。
网上有些教程需要在windows上安装Xserver什么的,我觉得能不多装东西就不装吧,所以本文不需要在windows下额外安装任何软件。
开始WSL
本文默认看官已经安装并启动了子系统。如果需要帮助可以打开开始菜单中的Microsoft Store
,在搜索框中输入linux
回车,然后根据提示会一步步引导你安装成功。注意不要随便百度一个教程直接开搞,有些还需要编辑注册表的简直坑人。
Ubuntu换源
这一步不是必须的,前提是你网络足够好的情况下。
既然要做修改,第一步当然是备份。
cp /etc/apt/sources.list /etc/apt/sources.list.bak
然后执行vi /etc/apt/sources.list
并在文件最开始添加如下信息:
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
更新与升级
sudo apt update
sudo apt upgrade
sudo apt autoremove
其中第三个命令不是必须的,但是既然有用不到的包何不及时清理呢?
另外说明一下,如果命令执行期间有报错或卡住的情况,直接ctrl+C
重新执行即可,它会自动跳过之前已完成的部分(get 序号会从1重新开始计数,但不会重新get已完成的包)。
另外如果遇到bluemen
的报错,可以忽略不管。
安装桌面环境xubuntu
sudo apt install xubuntu-desktop
说明一下,本人最开始执着于gnome
桌面,在各种google无果后选择了搜错过程中出现次数最多的xfce4
,同时了解到xubuntu
是xfce4
的一个扩展,于是采用xubuntu
桌面环境,在使用了几天后发现还挺好用,它里面内置了若干panel
可供替换(这个后面再说)。
安装远程桌面服务xrdp
sudo apt install xrdp
这个就是直接跟windows交互的哥们了,有关其原理的介绍可以参考这篇文章,不过不看也没关系,不影响使用。
另外有的教程会让你安装xorg
与xfce4
,这两个的安装其实在上一步sudo apt install xubuntu-desktop
的时候已经完成了。
配置xrdp端口
sudo sed -i 's/port=3389/port=3390/g' /etc/xrdp/xrdp.ini
这里面3389是默认配置,这里将其改为3390是避免和windows的端口冲突。我们折腾的是子系统不是虚拟机,两边的端口号是通的。比如在wsl中开一个8080端口的WebServer,在windows中开浏览器是可以直接访问的。
配置xsession
sudo echo xfce4-session >~/.xsession
这一步其实是在告诉系统,开启桌面环境的时候开启什么桌面环境。为什么是xfce4
呢,上面也说了xubuntu
本质就是xfce4
加上一些插件与软件。
此时建议重启一下电脑
当然不重启也行,我当时装的时候就没重启,虽然用起来没遇到什么问题,但还是感觉哪不舒服(可能只是心里作用[手动捂脸])。
启动xrdp
sudo service xrdp restart
这里用start
也行restart
也行,既然都可以,当然后者用起来更方便。
启动成功后会看到如下提示
* Starting Remote Desktop Protocol server [20190514-19:06:59] [DEBUG] Testing if xrdp can listen on 0.0.0.0 port 3390.
[20190514-19:06:59] [DEBUG] Closed socket 6 (AF_INET6 :: port 3390)[ OK ]
远程连接
在windows开始菜单中搜远程桌面
打开后在计算机
后面输入localhost:3390
点击连接。首次连接可能需要较长时间。
用户名密码可以先写,也可以不写,网上有教程还勾选了保存凭据的,这个看个人习惯吧,我用软件从来不勾选记住密码的。
汉化
其实Linux汉化显得很low,但咱这英语水平在处理一些感叹号弹窗的时候看不懂提示不敢瞎点yes还是no,所以汉化步骤放在这,看官依据个人口味吧。
sudo dpkg-reconfigure locales
然后一直按键盘上的↓
找到zh_CN UTF-8
,然后按空格勾选,再tab
切换到ok
上回车,接下来的界面选zh
再回车。
这一步完成后可能会导致键盘不可用,不用激动,点击桌面左上角图标注销后重进就好了。
首次进入中文界面会提示是否重命名那几个文件夹,建议保持英文状态,因为有些路径是写进配置文件了的,重命名会带来不必要的麻烦。
桌面环境汉化之后就是中文输入法了,这个需要用浏览器访问搜狗网页,所以先装下chrome吧(自带的火狐一开始打不开,几天后又能用了)。
安装chrome
sudo apt install google-chrome
安装完成后在命令行sudo google-chrome --no-sandbox
启动,直接google-chrome
会报权限错误,加上sudo
又提示需要--no-sandbox
,看官可以自己试试,如果能非sudo运行请下面评论给咱见识一哈。
安装中文输入法
这个浏览器打开搜狗输入法网页,然后在导航条(顶部那一条)找linux,进去会自动下载安装包,下载完成后从文件夹进入Download
执行dpkg -i file_name
即可安装。
注意别在浏览器中跳转到文件夹,因为浏览器是sudo打开的,从这进文件夹,再右键打开终端,安装后的文件是root用户的,还需要找到并chown,比较麻烦。后面下载安装其他软件同理。
输入法配置可以点击桌面左上角图标,进入设置管理器(SettingManager),然后到最后面找一个拿着毛笔的企鹅就行了,这部分没什么难的就不细说了,有问题评论区见(如果你看到这篇文章是爬虫爬过的,请在csdn上搜同名标题再到评论区提问)。
美化
之前提到的那个panel
此时可以试试了,点击左上角图标,进入设置管理器(SettingManager),找xfce panel switch
然后有一个列表就是所有的panel了,选中一个后点下面的齿轮就可以看效果,找到满意的直接关闭窗口就行。
结语
大概就是这些了,如果看官们有更好的意见或建议,或者还有其他问题都可以直接在评论区提出来。如果觉得还不错可以点个赞哈哈。