Linux

如何在通過 VPN 連接到 Windows 機器的遠端 Ubuntu 系統上執行圖形程序?

  • February 25, 2020

我使用 Putty 從我的 windows10 機器遠端連接到我的 Mint18 (Ubuntu 16.04) 系統。網際網路連接提供 Wi-Fi 和 VPN 連接。我在這裡將 Wi-Fi 連接的 IP 地址命名為Wi-Fi-IP,將 VPN 連接的 IP 地址命名為VPN-IP

我想在遠端 Mint18 系統上執行*gedit等圖形程序;*但是,我只面對Cannot Open Display錯誤。我研究了所有為 X11 轉發提供的解決方案:

  • 安裝Xming
  • 在 Putty 中啟用 X11 轉發
  • 在膩子中設置X display location為(我也嘗試了所有步驟而沒有設置這個!)localhost:0.0

連接到遠端系統後,我做了以下步驟:

  • /etc/ssh/ssh_config

    • #刪除了, , 行中ForwardAgent的雜湊ForwardX11ForwardX11Trusted並將相應的參數設置為yes.
    • 刪除了and#之前的前雜湊,並在文件末尾附加了一個新行以說明 xauth 文件位置,Port 22``Protocol 2``XauthLocation /usr/bin/xauth
  • ~/.bashrc: 附加export DISPLAY=localhost:0.0。(為了簡單起見,我在這裡將其命名為 DISPLAY 值)

    • export DISPLAY=127.0.0.1:0.0我也用,export DISPLAY=Wi-Fi-IP:0.0和嘗試了這一步export DISPLAY=VPN-IP:0.0
  • 另一種解決方案是export DISPLAY=:0在命令行上使用。它既沒有產生錯誤,也沒有以圖形方式打開程序。

  • 退出會話並打開一個新會話以應用這些設置。

完成所有步驟後,我跑了,gedit &但出現Cannot Open Display:DISPLAY-value錯誤,沒有一個解決方案可以解決問題。我該如何解決這個問題?

在 ~/.bashrc: 附加導出 DISPLAY=localhost:0.0。(為了簡單起見,我在這裡將其命名為 DISPLAY 值)

從您的 .bashrc 中刪除它。這不是遠端系統的正確值。正確的值可能類似於“localhost:10.0”,但它可能會因各種原因而改變。

您不必在遠端系統上設置 DISPLAY。如果您的客戶端(putty)與伺服器協商 X 轉發,那麼伺服器將在遠端會話中為您設置 DISPLAY 為正確的值。

如果您登錄到遠端系統並且沒有設置 DISPLAY,那麼您的客戶端可能沒有協商 X 轉發。

引用自:https://unix.stackexchange.com/questions/569639