WSL 可视化桌面

本文目的

记录一下如何在 Windows 上可视化 Linux 子系统 (WSL)。

方法一 (Xming)

Step#1:
在 Windows 系统上安装 Xming : Xming X Server for Windows download | SourceForge.net

Step#2:
安装之后运行 XLaunch:

选择 one window, display number 默认为 0:

WSL 可视化桌面_第1张图片

选择 start no client

WSL 可视化桌面_第2张图片

勾选 clipboard 以及 No Access Control

WSL 可视化桌面_第3张图片

点击完成后出现空白 Display screen

Step#3
在 WSL 中安装必要的应用:

sudo apt-get install xfce4
sudo apt-get install xfce4-terminal

Step#4
在 WSL 的 ~/.bashrc 文件中加上以下两行:

export hostip=$(cat /etc/resolv.conf |grep -oP '(?<=nameserver\ ).*')

export DISPLAY=$hostip:0

需要注意的是:如果之前 display number 不为 0 (假设为 x),则第二行需改为 $hostip:x

Step#5
在 WSL terminal 中运行 startxfce4:

source ~/.bashrc

startxfce4

如果 Windows 的 Xming screen display 能够显示 WSL 桌面则配置成功。如果报错 "connection refuse" 则需要进一步设置防火墙规则:

Step#6 (如果 Step#5 没有成功..)

Win+R 打开运行窗口,输入 control 后回车,打开控制面板。(或者其它方法打开都可以..)

WSL 可视化桌面_第4张图片

选择 "Windows Defenter 防火墙" --> "高级设置"

WSL 可视化桌面_第5张图片

选择入站规则,并新建规则

WSL 可视化桌面_第6张图片

选择端口,点击下一页

WSL 可视化桌面_第7张图片

选择 TCP 端口,特定本地端口中填写 6000

需要注意的是如果之前 display number 不为0 (假设为 x),则此处端口应填写 6000+x 

WSL 可视化桌面_第8张图片

之后全部选择 “下一页” 即可,最后会让给端口起一个名字,这个随便写一个即可,比如 “wslGUI"。

Step#7
建立号新的规则之后,在 WSL terminal 中运行 startxfce4

startxfce4

Windows Xming screen display 可以正常图形化显示 WSL 桌面了:

WSL 可视化桌面_第9张图片

 方法二 (Remote Desktop)

由于公司的电脑不允许修改防火墙规则,方法一可能无法使用。Enterprise 版本的 Windows 自带远程桌面,也可以实现 WSL GUI 显示。

Step#1
在 WSL 中安装需要的应用

sudo apt-get install xfce4-session
sudo apt-get install xfce4-terminal

然后安装 xrdp

sudo apt-get install xrdp
sudo cp /etc/xrdp/xrdp.ini /etc/xrdp/xrdp.ini.bak
sudo sed -i 's/3389/3390/g' /etc/xrdp/xrdp.ini
sudo sed -i 's/max_bpp=32/#max_bpp=32\nmax_bpp=128/g' /etc/xrdp/xrdp.ini
sudo sed -i 's/xserverbpp=24/#xserverbpp=24\nxserverbpp=128/g' /etc/xrdp/xrdp.ini

Step#2
使能 dbus 以及 xrdp 服务:

sudo systemctl enable dbus
sudo /etc/init.d/dbus start
# or 
# sudo service dbus start
sudo /etc/init.d/xrdp start
# or
# sudo service xrdp start

Step#3
打开远程桌面,远程电脑地址为 localhost:3390。连接的时候可能需要输入 WSL 的密码。之后 WSL GUI 就可以通过远程桌面实现了。

结语

以上两种方法分别在 (Win11 家庭版) 以及 (Win10 企业版)上成功实现。

Reference:
https://www.laoyuyu.me/2022/11/19/wsl/WSL--Xming/
https://www.nextofwindows.com/how-to-enable-wsl2-ubuntu-gui-and-use-rdp-to-remote

你可能感兴趣的:(WSL相关,windows,linux)