如何在通过VPN连接到Windows机器的远程Ubuntu系统上运行图形程序?

如何在通过VPN连接到Windows机器的远程Ubuntu系统上运行图形程序?

我使用 Putty 从 Windows10 计算机远程连接到我的 Mint18 (Ubuntu 16.04) 系统。互联网连接通过 Wi-Fi 和 VPN 连接提供。我在这里将 Wi-Fi 连接的 IP 地址命名为无线网络IP对于 VPN 连接,VPN-IP

我想运行图形程序,例如编辑器在远程 Mint18 系统上;但是,我只面临Cannot Open Display错误。我研究了所有提供的X11转发解决方案:

  • 安装Xming
  • 在 Putty 中启用 X11 转发
  • 在 Putty 中设置X display location为(我也尝试了所有步骤,但没有设置它!)localhost:0.0

连接到远程系统后,我执行了以下步骤:

  • 在里面/etc/ssh/ssh_config
    • 删除了、、 、#行中的哈希值,并将相应的参数设置为。ForwardAgentForwardX11ForwardX11Trustedyes
    • 删除了前面的和#之前的哈希值,并在文件末尾添加了一个新行来说明 xauth 文件位置,Port 22Protocol 2XauthLocation /usr/bin/xauth
  • ~/.bashrc: 附加export DISPLAY=localhost:0.0。 (为了简单起见,我将其命名为 DISPLAY-value)
    • 我也用 、 和 尝试了export DISPLAY=127.0.0.1:0.0export DISPLAY=Wi-Fi-IP:0.0一步export DISPLAY=VPN-IP:0.0
  • export DISPLAY=:0另一种解决方案是在命令行上使用。它既没有产生错误,也没有以图形方式打开程序。
  • 退出会话并打开一个新会话以应用这些设置。

完成所有步骤后,我运行了gedit &但出现Cannot Open Display:DISPLAY-value错误,并且没有任何解决方案可以解决问题。我该如何解决这个问题?

答案1

在 ~/.bashrc 中:附加导出 DISPLAY=localhost:0.0。 (为了简单起见,我将其命名为 DISPLAY-value)

从 .bashrc 中删除它。这不是远程系统的正确值。正确的值可能类似于“localhost:10.0”,但它可能会因各种原因而改变。

您不必在远程系统上设置 DISPLAY。如果您的客户端 (putty) 与服务器协商 X 转发,那么服务器将在远程会话中将 DISPLAY 设置为正确的值。

如果您登录到远程系统并且未设置 DISPLAY,则您的客户端可能没有协商 X 转发。

相关内容