当从WSL1迁移到WSL2时,很多事情都会发生变化;显然,这也适用于X11转发。
我需要采取哪些步骤才能像对X11一样在WSL2 10上使用WSL2转发?
发布于 2020-04-08 21:49:59
TL;DR:
将以下内容添加到~/.bashrc中
export DISPLAY=$(ip route list default | awk '{print $3}'):0
export LIBGL_ALWAYS_INDIRECT=1在Windows的X11服务器上启用公共访问。*
将单独的入站规则用于TCP端口6000到windows防火墙,以允许WSL访问X服务器,正如wsl-windows-工具栏-启动器人员所描述的那样。
正如mod在编辑所指出的,正如您可以在微软关于WSL2的文档中看到的那样,WSL2体系结构使用虚拟化的网络组件。这意味着WSL2的IP地址与主机不同。这解释了为什么X11转发设置WSL1不能简单地传输到WSL2。
在有关WSL的Ubuntu页面上,您已经可以在运行图形应用程序下找到适合于运行图形应用程序的配置。上述Reddit用户也提出了类似的配置,他还提供了解决方案的另一部分:在X11服务器上启用Windows下的公共访问。
这意味着在~/.bashrc中添加以下内容
export DISPLAY=$(ip route list default | awk '{print $3}'):0
export LIBGL_ALWAYS_INDIRECT=1和在X11服务器上为Windows启用公共访问。
在Windows 10上启用X11 WSL2转发的最重要部分仍然缺少:默认情况下,Windows防火墙通过为WSL2配置的网络接口阻塞连接。
需要一个单独的入站规则用于TCP端口6000,以允许WSL访问X服务器。在创建规则之后,正如wsl-windows-工具栏-启动器人员所描述的那样,IP地址范围可以限制在新创建规则的设置中的WSL子网中,在作用域:172.16.0.0/12下。
*:如果使用VcXSrv,则可以通过禁用额外设置上的访问控制来启用X服务器的公共访问:

或者使用vcxsrv.exe标志ac:vcxsrv.exe -ac直接调用github,这是阿米诺在github问题上指出的。
或者,这就是答案展示了如何通过.Xauthority文件共享密钥,从而使您拥有完整的访问控制。
发布于 2020-07-30 13:39:10
对于一些只允许我这样的私人网络的人来说,
虽然是,但它们都应该是

它应该在Windows防御防火墙上有停止标志

双击它并允许为私有和公共连接,

所以这四个项目都应该是绿色的。
然后@NicolasBrauer的上述回答是为我工作的。
例如,当您的XLaunch和
export DISPLAY=$(awk '/nameserver / {print $2; exit}' /etc/resolv.conf 2>/dev/null):0
export LIBGL_ALWAYS_INDIRECT=1发布于 2021-03-15 20:29:45
正如其他人指出的那样,我在windows 10上提出了一个使用vxcsrv的解决方案。也可以在windows 11上工作。
XServer Windows - WSL1 & WSL2:
安装
https://sourceforge.net/projects/vcxsrv/
在WSL区设置前向显示
配置显示
export LIBGL_ALWAYS_INDIRECT=1
export DISPLAY=localhost:0export LIBGL_ALWAYS_INDIRECT=1
export DISPLAY=$(awk '/nameserver / {print $2; exit}' /etc/resolv.conf 2>/dev/null):0resolv.conf,请使用以下定义:https://stackoverflow.com/a/63092879/11473934)然后(安装x11应用程序)
sudo apt update
sudo apt install x11-apps在Windows上启动XLaunch
试试看
在wsl中:输入xcalc -计算器应该在Windows10中打开
如果一切顺利
并且您希望在您的wsl发行版中保持设置。将它们存储在您的~/.bashrc中。
sudo nano ~/.bashrc复制这两行(从WSL区域配置显示中的Set显示),两行结束并保存它。
添加到自动启动
现在,XServer将在windows启动时启动。
我把它用在罗斯身上了。为我工作。
我的XServer在互联网上是不可用的,所以可以禁用访问控制。
https://stackoverflow.com/questions/61110603
复制相似问题