总结三种方法:
前言
ssh连接要使用-XY。
-X 表示ForwardX11,-Y 是ForwardX11Trusted,就是允许了X11转发,可以实现图形显示,虽然很多工具会默认使用这些参数,但是一般手动加也不会报错,所以就手动加上就好。
设置完要最后启动vscode,或者重启试试。
如果重启还不管用,可能是什么没注意的设置漏掉了,可以评论区求助,看看能不能解决。
个人觉得第一种的框框最好看,最后一个设置最方便。
1. 借用WSL
我用的WSL2,WSL支持在 Windows 上运行 Linux GUI 应用程序(X11 和 Wayland),所以我们可以借用它的X11转发功能,
1.1 首先启动WSL,然后使用SSH连接远程服务器
ssh -XY user@ip
可以执行一下xeyes
,会显示一对眼睛就说明WSL的X11转发没问题了。
如果有问题,可以在WSL里的本地安装GUI应用看看能不能用,如果不能用,那大概是WSL系统有问题。
1.2 正常使用vscode连接
还是使用上面的连接命令
ssh -XY user@ip
连接以后写代码需要GUI显示的时候就会自动通过WSL的X11转发显示到本地。
1.3 如果不能用
如果不能用,在WSL里和vscode终端里都输入echo $DISPLAY
,看看显示的端口号localhost:x
是不是不一样,理论上来说显示一样的时候是不会出问题。
优点:适合WSL用户,不足:使用过程中WSL不能和服务器断开。
2. 使用Xshell和Xmanager
Xmanager下载链接
2.1 用Xshell连接服务器
这种使用比较简单,直接把两个下载以后用Xshell连接服务器,运行xeyes
就可以通过Xmanager看到GUI。
2.2 正常使用vscode连接
ssh连接命令还是和上面一样,正常连接后就可以看到GUI的界面了。
优点,适合Xshell用户,不足:使用过程中Xshell不能和服务器断开,Xmanager不能关闭。
3. 配置环境变量和使用X服务转发软件
3.1 设置环境变量
首先要设置环境变量:
打开控制台cmd/powershell,设置如下:
setx DISPLAY "127.0.0.1:0.0"
注意setx
是永久生效。
设置完以后打开windows的“系统环境变量”可以看到如下,说明成功。
3.2 X服务转发软件
Xming
X410
Xmanager
其他的或许也可以。
我这里就还是使用的Xmanager,启动的是Xmanager.exe
,快捷方式是在Tools
里的Xmanager-Passive
,启动以后右下角会出现那个小标,然后使用Vscode就可以正常使用了。