X11 转发:GUI 出现在远程服务器而不是客户端

X11 转发:GUI 出现在远程服务器而不是客户端

我有两台机器,PC1PC2。 在PC1我有系统管理软件在第二台机器上安装 Windows 7 上的 XmingPC2我在 WSL(适用于 Linux 的 Windows 子系统)上安装了 Windows 10 和 Ubuntu 18.04,还安装了 Xming。我在两台机器上都配置了 ssh,并在 中配置了 X11 转发所需的配置(/etc/ssh/sshd_config)PC1我还必须设置 DISPLAY 变量:

export DISPLAY=localhost:0 

我想从 PC1 ssh 到 PC2 但是遇到一个问题:以下命令可以正常工作:

ssh -Y username@PC2 gedit

它按预期在 PC1 上显示 gedit。但是当我 ssh 到 PC2 时,我启动了 gedit:

$ ssh -Y username@PC2  # Now I am logged in to PC2
$ gedit

GUI 出现在PC2代替PC1

您能解释一下第二种方法出了什么问题吗?

答案1

通过 SSH 进行 X 转发依赖于 sshd 正确设置的值$DISPLAY,因此强制在远程系统上进行覆盖会产生干扰。如果您必须无论怎样都设置它,然后只有当它还没有值时才设置它:

: ${DISPLAY:=:0}

相关内容