Ubuntu
從遠端主機在本地顯示器上執行 X 應用程序
這讓我很沮喪。為什麼它不起作用,我該如何讓它起作用?
我有一個新安裝的 Ubuntu 10.04.2 (Lucid Lynx)。我已經安裝了 X 和 gdm。Gdm 設置為自動登錄使用者。電腦沒有連接任何鍵盤,但我想在其本地顯示器上顯示一些東西。
通常,我會以自動登錄的使用者身份 ssh 到電腦,然後執行“DISPLAY=:0.0 xclock”,例如。
但現在我只得到回應:
user@host:~$ DISPLAY=:0.0 xclock 未指定協議 錯誤:無法打開顯示::0.0
但是,如果我以 root 身份登錄,它可以工作。
這個問題似乎有幾個錯誤: 這個錯誤會 阻止創建 .Xauthority 文件。這會阻止建議的解決方法在使用自動登錄時起作用。
所以解決辦法是把自動登錄改為定時登錄,延遲很短,在/etc/gdm/PostLogin/default中加入以下內容
#!/bin/bash auth=$HOME/.Xauthority 如果 [ -e $auth ]; 然後 diff <(xauth extract - $DISPLAY) <(XAUTHORITY=$auth xauth extract - $DISPLAY) > /dev/null && exit 0 是 xauth 提取 - $DISPLAY | XAUTHORITY=$auth xauth 合併 - chown $USER $auth