Ssh
X11 轉發:GUI 出現在遠端伺服器而不是客戶端
我有兩台機器,PC1和PC2。在PC1中,我在 Windows 7 上安裝了Msys2和 Xming,而在第二台機器PC2中,我在 WSL(Linux 的 Windows 子系統)上安裝了帶有 Ubuntu 18.04 的 Windows 10,還安裝了 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
你能解釋一下第二種方法出了什麼問題嗎?
通過 SSH 進行的 X 轉發取決於 sshd 設置的
$DISPLAY
適當值,因此在遠端系統上強制覆蓋會干擾。如果您必須設置它,那麼只有在它還沒有值時才設置它:: ${DISPLAY:=:0}