WSL1和WSL2安装界面显示_xming

WSL1和WSL2安装界面显示

WSL1与WSL2

判断是wsl1还是wsl2

打开PowerShell,输入

wsl -l -v

WSL1和WSL2安装界面显示_wsl_02

wsl1与wsl2的区别参考:Comparing WSL 1 and WSL 2,个人更建议使用WSL2。

对于安装窗口界面来说,wsl1因为和win10使用的是同一个IP,所以在DISPLAY的设置上,可以直接使用localhost来表示,即​​export DISPLAY=:0​​,但是wsl2有自己的ip地址,且在wsl2内部,有一个指向win10的ip地址,可以通过

cat

来查看。

WSL1和WSL2安装界面显示_x11_03


这个ip地址就是wsl2中win10的ip地址。

将wsl1升级为wsl2(升不升级取决于是否想用WSL2,与安装窗口显示没有关系,WSL1与WSL2都可以安装界面)

如果执行​​wsl -l -v​​显示Ubuntu为wsl1版本,如果喜欢wsl2,可以将其更新为wsl2.

打开​​PowerShell(管理员)​​,执行

Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform

如果需要重启就重启。

将下面指令中的Ubuntu-18.04替换为​​wsl -l​​后显示的名称。

wsl -l
wsl --set-version Ubuntu-18.04 2
wsl -l -v

执行这个将默认使用wsl2.

wsl --set-default-version 2

WSL1安装界面显示

两种方式都需要先在Windows上安装​​Xming​​。


方式一:使用xfce4桌面,直接将整个Ubuntu桌面显示出来

WSL1和WSL2安装界面显示_wsl_04

缺点:使用Xming,xfce和windows的显示是在一起的。因为整个桌面都显示,延迟稍微大了一点。
优点:使用WSL,相比虚拟机,可以充分使用所有的CPU,并且在win10 20145之后的build版本中,将支持GPU。
​​​可以开启Windows预览体验计划,安装Dev渠道的版本,便可以提前享受新的版本,但是注意,20211版本把WSL干死了(2020-9-16)​

安装方法

1. 安装WSL Ubuntu子系统
2. 在Ubuntu中执行
sudo apt install xfce4
sudo apt install xfce4-session
echo "export DISPLAY=:0.0">> ~/.bashrc
# or
# echo "export DISPLAY=localhost:0">> ~/.bashrc
source
3. 启动Xming
4. 在Ubuntu中执行
xfce4-session

方式二:使用x11-apps

WSL1和WSL2安装界面显示_x11_05

优点:使用哪个软件,就可以只打开对应的软件,负荷较小,延迟较小。
缺点:对于喜欢完整桌面的小伙伴,不太舒服。

安装方法

1. 重新安装完整openssh

wsl默认的是minimal的openssh,需要安装完整的openssh

sudo apt-get remove  openssh-server
sudo apt-get install
2. 设置ssh

Windows 10附带一个SSH服务器,需要禁用它,或者需要更改将用于WSL上的SSH的端口。我选择了后者,并使用端口2200用于WSL SSH。

sudo apt install vim
sudo vi

默认的sshd_config文件应该所有的条目都是被注释的,在文件中添加以下代码。
如果没有全部被注释,查找一下没有被注释的条目和下面的条目有没有重复的。

PermitRootLogin no
AllowUsers yourusername
PasswordAuthentication yes

然后重启ssh服务

sudo service ssh
3. 安装x11-apps
sudo apt-get install

同样,x11-apps也需要设置​​export DISPLAY=:0​​​,如果上面已经按照方式一安装并设置过,就不需要再设置。
如果直接采用的方式二,需要设置

echo "export DISPLAY=:0" >> ~/.bashrc
source
4. 打开Xming
5. 执行以下命令
xeyes

WSL1和WSL2安装界面显示_可视化_06


出现这个就代表配置成功。

同样,可以试一下gedit。

sudo apt install

WSL1和WSL2安装界面显示_xfce_07


WSL2安装窗口界面显示

请参考:​​WSL2中使用VcXsrv实现xfce4图形界面+声音传输​

笔者修改部分:

  1. 知乎作者采用的是手动查看nameserver ip地址,然后手动在 .bashrc 中添加,缺点是宿主win10机每次重启的时候,nameserver 的ip地址都会变化,原先设置的ip就不能连接到Xserver,无法显示,所以修改为自动输出nameserver ip地址。
    注意:如果已经按知乎作者设置了 export DISPLAY=xx.xx.xx.xx:0,请先注释掉。

在 ​​~/.bashrc​​中的最后添加

export DISPLAY=$(awk '/nameserver / {print $2; exit}' /etc/resolv.conf 2>/dev/null):0

然后执行​​source ~/.bashrc​​,这样就保证了直接每次取nameserver的ip地址,不会因为电脑重启造成连接不上。


  1. 原作者没有保存VcXsrv软件的配置文件,这样每次打开软件,都需要点击好几次进行配置,我们可以将配置文件保存下来,并且加入快捷启动的配置参数,这样直接点击VcXsrv的图标就可以直接打开正确的窗口。

我们将下面几步保存成配置文件:

WSL1和WSL2安装界面显示_可视化_08


WSL1和WSL2安装界面显示_xming_09


WSL1和WSL2安装界面显示_可视化_10


WSL1和WSL2安装界面显示_xfce_11


点击Save configuration。

将config.xlaunch文件先放在桌面上

WSL1和WSL2安装界面显示_xfce_12

找到xlaunch.exe的位置。将config.xlaunch文件复制到同一目录中。

然后给xlaunch.exe创建一个快捷方式,

WSL1和WSL2安装界面显示_xming_13

在“目标”后面添加​​-run "config.xlaunch"​​​,将这个快捷方式固定到开始屏幕或桌面都可以。
这样,直接点击这个快捷方式,就一步到位,直接打开配置好的窗口。

WSL1和WSL2安装界面显示_wsl_14


WSL1和WSL2安装界面显示_xfce_15


WSL1和WSL2安装界面显示_xming_16

ubuntu18的xfce4桌面中文显示可能异常,附:​​解决ubuntu的中文乱码问题​


参考

  1. ​https://www.jianshu.com/p/9fdea59ae8a2​
  2. ​https://virtualizationreview.com/articles/2017/02/08/graphical-programs-on-windows-subsystem-on-linux.aspx​
  3. ​https://www.liumingye.cn/archives/326.html​
  4. ​https://zhuanlan.zhihu.com/p/137618871​
  5. ​https://www.h3v.net/blog/index.php/archives/18/​