![9f23a7368120d5a3378193915c1950a3.png](https://i-blog.csdnimg.cn/blog_migrate/5cb26dba7c28237a9a1afc41caf4fd0a.jpeg)
如果你是一位既想拥有linux下极致编程的感觉,又想随意使用windows下实用的APP朋友,那么这个配置或许正是你想要寻找的;这里主要分几个方面介绍一下windows10 wsl的几个方面的配置和使用,一来记录自己的折腾经历,二来,希望能帮助一些同样有这个需求的小伙伴:
- wsl的安装
- wsl的配置
- ubuntu下软件(GUI)
- wsl的卸载
ps:笔者的系统windows10 1903,windows版本号大于16215才能使用wsl,理论上越新 越好
下面对每个步骤进行详细介绍:
1 WSL的安装
- 开启window10开发者模式
设置(win+i)->更新与安全->开发者选项->开发人员模式
![28497e1c9992d965fb9cdc1e7ee50ec0.png](https://i-blog.csdnimg.cn/blog_migrate/f32b60f00c4d5f416ecd05619ab0cf12.png)
- 启用或关闭windows功能
在搜索栏(win+q),输入启用或关闭windows功能,将菜单向下拉,找到下图的位置,勾选即可
![61d93d1b6d8b29010bd8fbf622fb4adc.png](https://i-blog.csdnimg.cn/blog_migrate/d5685c2351ff79e63f7599b206fec3d7.jpeg)
- 重启电脑
- 安装ubuntu
搜索栏(win+q)直接输入windows store,一般应用商店需要先登陆;然后直接输入linux,会出现下面的界面
![f074c04f97adb95e588c844220fae652.png](https://i-blog.csdnimg.cn/blog_migrate/11bb394220c06712d5a3f06f218fcd2c.jpeg)
点击>获取这些应用,然后在这里面选择自己喜欢的发行版本,笔者选择的是Ubuntu18.04LTS。
然后下载并安装(根据个人网速可能要几分钟)
![17b557bf5aafc7e54e443bc4062bed93.png](https://i-blog.csdnimg.cn/blog_migrate/c5325ea3158bd979cc9c00db3412c8a0.jpeg)
点击启动,会出现下面的截图
![8fedc18f7e4375429ded9cab9bc3453c.png](https://i-blog.csdnimg.cn/blog_migrate/db9df9c183d8bfed6847b04bcc0c4b5d.png)
然后输入一个用户名和密码,接下来就可以使用ubuntu18.04了
2 wsl的配置
2.1 换成国内的源,这里选择
Tsinghua Open Source Mirrormirrors.tuna.tsinghua.edu.cn![a7f94e97ce654ca2b39edb7146a7c9f5.png](https://i-blog.csdnimg.cn/blog_migrate/ec298d677e58e2b581c4e793adf4afd9.jpeg)
为了安全起见,先将默认的源进行备份
sudo mv /etc/apt/sources.list /etc/apt/sources.list.bak
然后添加清华镜像源(保证清华源的版本和安装ubuntu版本一致),将清华源的内容贴进去
sudo vi /etc/apt/sources.list
![67c15aae4625f727e8e6c28264962068.png](https://i-blog.csdnimg.cn/blog_migrate/9ff52d5831222ff66de1845922b255b6.jpeg)
更新一下:
sudo apt-get update && sudo apt-get upgrade
接下来下载速度就会快很多。
2.2 中文乱码
- 在/etc/environment(文件末尾添加)
# 设置中文
export LC_ALL="zh_CN.UTF-8"
- 执行命令:
sudo locale-gen zh_CN.UTF-8
- 空格乱码,安装中文字体
sudo apt-get install fonts-droid-fallback ttf-wqy-zenhei ttf-wqy-microhei fonts-arphic-ukai fonts-arphic-uming
2.3终端选择
终端有很多,Cmder,还有windows自带的windows terminal(windows store)可以下载,不过在这里我想推荐wsl-terminal>Windows Subsystem for Linux (WSL) 的终端模拟器,基于mintty、fatty和wslbridge,它可以让linux下的软件,使用起来就是windows一样,详细使用可以见:
wsl-terminalgoreliu.github.io2.3.1 下载wsl-terminal
下载链接 进入链接下拉,选择并下载
![1317580fe090c38d16d4f531fdc622bd.png](https://i-blog.csdnimg.cn/blog_migrate/5f3b367ca76fe0eb406025ac18ee6d85.png)
可以将下载的文件解压到任何你喜欢的文件夹下,因为下载下来就可以直接使用,不需要安装,非常方便。
![fdef652a6885476c01de4c6656f5f574.png](https://i-blog.csdnimg.cn/blog_migrate/ac21e701cd2ed712e86b6787253244cf.png)
2.3.2 配置zsh和oh my zsh
- 安装zsh
# 安装zsh
sudo apt-get install -y zsh
然后将系统默认的shell更改为zsh,1.这里打开wsl-terminal/etc/wsl-terminal.conf修改shell=/usr/bin/zsh。2.terminal输入:chsh -s /usr/bin/zsh进行修改
![94d148d4ba94e9693093e835b88fae86.png](https://i-blog.csdnimg.cn/blog_migrate/5d58d777f74cc46ec142482c60e308f3.png)
#此时查看更改后的shell
echo $SHELL
![880cc1426960d8eb1f22f0f6c5f3a48d.png](https://i-blog.csdnimg.cn/blog_migrate/0e72da41820f79aaf377f769fb224863.png)
- 颜色更改
默认的wsl的颜色比较难看,这里可以使用这个配色dircolors-solarized,在HOME目录下执行代码:
# 如果没有wget,先下载
wget https://raw.githubusercontent.com/seebi/dircolors-solarized/master/dircolors.ansi-dark
mv dircolors.ansi-dark .dir_colors
并将下面的代码添加到~/.zshrc或者.bashrc文件后面
if [ -f ~/.dir_colors ]; then
eval `dircolors ~/.dir_colors`
fi
- 主题的选择
![1952504218f599300f568d311ba68cd6.png](https://i-blog.csdnimg.cn/blog_migrate/6c8d7ac1535f631bfab8dc18302d6315.png)
点击图上的红圈位置,选择选项,在主题栏中选择自己喜欢的主题,笔者选择的是base16-phd.minttyrc
![40a92af26cd34b05d934cf45f059ebe3.png](https://i-blog.csdnimg.cn/blog_migrate/4cfa3567bd092901c671f9833351eedd.png)
最终的terminal的效果大概这样子:
![8d451c56474245a5328bfddcdbcb1186.png](https://i-blog.csdnimg.cn/blog_migrate/463fedcabc3e74fdb817350e11953db5.jpeg)
- oh my zsh的配置
# 安装oh-my-zsh
wget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O - | sh
具体配置可参见
如何在Ubuntu 18.04 LTS中安装和美化ZSH Shellwww.sysgeek.cn![b2160b765c67c5020b611878cfaa24fd.png](https://i-blog.csdnimg.cn/blog_migrate/314ccd5f55f48a5dc37e16f354aca162.jpeg)
2.3.3 在当前位置右键启动wsl
双击运行tools/1-add-open-wsl-terminal-here-menu.js文件就行,如果.js
文件被某个编辑器关联上了,可以修改打开方式为Microsoft (R) Windows Based Script Host
,或者在tools
目录运行一个cmd.exe
,然后用wscript xxx.js
运行对应文件
右键桌面可以看到如下
![56699edd10a4220d1be65f2fab4989ce.png](https://i-blog.csdnimg.cn/blog_migrate/a3e39f4a074c932d5d3d81b5b1c42b7a.png)
这样就可以通过鼠标右键打开terminal了
2.3.4 右键用指定的Linux软件打开文件
由于笔者是emacs使用者,这里就以emacs为例进行说明:
- 修改wsl-terminal目录下的vim.exe为emacs.exe,具体用法可以参见wsl-terminal;
将tools目录下的5-add-open-with-vim-menu.js的进行修改:出现vim.exe的地方修改成emacs.exe
var WshShell = new ActiveXObject("WScript.Shell");
WshShell.CurrentDirectory = "..";
WshShell.RegWrite("HKCUSoftwareClasses*shellvim-in-wsl-terminal"
, "Open with emacs in wsl-terminal", "REG_SZ");
WshShell.RegWrite("HKCUSoftwareClasses*shellvim-in-wsl-terminalicon"
, """ + WshShell.CurrentDirectory + "emacsc.exe"" );
WshShell.RegWrite("HKCUSoftwareClasses*shellvim-in-wsl-terminalcommand"
, """ + WshShell.CurrentDirectory + "emacsc.exe" -n "%1"", "REG_SZ");
接下来就可以右键文件选择用emacs打开了:
![56699edd10a4220d1be65f2fab4989ce.png](https://i-blog.csdnimg.cn/blog_migrate/a3e39f4a074c932d5d3d81b5b1c42b7a.png)
2.3.5 将terminal固定到开始菜单
双击wsl-terminal/tools/4-create-start-menu-shortcut.js,此时在开始菜单就会出现一个open-wsl的快捷方式
![f85245c053fd24c50ffc5a104e4f5f66.png](https://i-blog.csdnimg.cn/blog_migrate/d46624d0c4a86b828bba5d4c9ed65a16.png)
双击open-wsl,会自动打开命令行,并且切到~/目录下
![1555ee3f340110c7a3a58a60cccb4f20.png](https://i-blog.csdnimg.cn/blog_migrate/f809e183d913c7405a0a62a042091e50.png)
3. ubuntu下软件
3.1 Xserver
如果我们想让wsl里面的GUI软件能够在windows界面正常的使用,那么自然是不能少了Xserver了,不过现在这类软件有很多比如Xming, X window;这里我推荐一个全能冠军
MobaXtermmobaxterm.mobatek.net它不仅集成了Xserver还有ssh,ftp等一系列功能,这里选择免费版安装就行了。这里要记住一点就是:如果要运行linux下的GUI软件,一定记得要保证MobaXterm下的Xserver是开启状态。如下图所示
![7df13947b2be984bd5bcf9a352e7abd1.png](https://i-blog.csdnimg.cn/blog_migrate/29e7aa1a86de239be13687de24763b30.png)
默认的情况下MobaXterm启动的情况下Xserver是默认启动的,不过最好查看一下,settings>X11,并将下图的勾选上
![1d45d3269bdf3c84e7cc15d5e71350ef.png](https://i-blog.csdnimg.cn/blog_migrate/6159d89c9b03c6afcc86e19835ae6f0f.jpeg)
安装完Xserver之后,我们还要将下面的代码添加到/etc/profile文件中
# 与 Xserver 连接
export DISPLAY=:0.0
注意:为了保证更丝滑的使用GUI,建议将Mobaxterm设置为开机自启,在cmd命令行直接输入:shell:startup,然后将快捷键方式复制之后放进文件夹中
3.2 具体软件使用
这里以emacs为例,其他如vscode,pycharm等都是一样的
打开wsl-terminal,然后输入emacs然后会看到emacs正常运行了
![3b0af29c30ee9e0e6151ffeeab0c8a9b.png](https://i-blog.csdnimg.cn/blog_migrate/8538a725c51fc05ee74c6ecd80022fa2.jpeg)
3.2 固定到开始菜单
上面的运行方式每次都要打开wsl-terminal,会比较麻烦,这里可以是用bat批处理命令
在打开wsl-terminal目录,新建Emacs.bat文件,输入下面的代码
@echo off
if "%1" == "h" goto begin
mshta vbscript:createobject("wscript.shell").run("%~nx0 h",0)(window.close)&&exit
:begin
bash -c "export DISPLAY=:0.0;emacs"
给该文件创建一个快捷方式,并将快捷方式放到:C:ProgramDataMicrosoftWindowsStart MenuPrograms目录下,右键快捷方式>属性>设置图标,可以对快捷方式进行图标的设置,接下来在开始菜单,就可以看到图标emacs
![d080ca0a1484e27cfe0834b5a58c6a17.png](https://i-blog.csdnimg.cn/blog_migrate/c37b2e0fa5b4cfeeb47d598b968c0853.png)
4. WSL的卸载
cmd/powershell下输入wslconfig,可以看到所有的使用选项
![d72f930a4653c58c5857496e190fe6cb.png](https://i-blog.csdnimg.cn/blog_migrate/5290369dbd597634a3aae8c728197172.jpeg)
如果哪天觉得用了不爽了仅仅下面一行命令无痛解决:
# 卸载删除wsl
wslconfig /u <DistributionName>
结语:win + q,输入你想运行的程序名字,Enter,开始玩耍吧!