2012-05-23 45 views
3

總的來說,我試圖從一個單獨的殼注入按鍵到Ubuntu登錄屏幕。我在標準登錄屏幕上安裝了該機器(運行Ubuntu 10.04),並且我也SSH進入了該機器。我試過以下(從SSH外殼):訪問X顯示Ubuntu的GDM登錄屏幕

$ ps ax | grep X 
2844 tty8  Ss+ 0:01 /usr/bin/X :0 -br -verbose -auth /var/run/gdm/auth-for-gdm-Gp2Rlq/database 
$ export DISPLAY=:0 
$ xdotool key Return 
No protocol specified 
Error: Can't open display: :0 
Failed creating new xdo instance 

一旦機器登錄到Ubuntu的這確切同樣的方法工作,但它不會爲登錄屏幕工作。

理想情況下,我希望能夠從另一個shell完成登錄。我做不是想用自動登錄。我只是希望能夠抓住正確的顯示,並執行登錄所需的按鍵。

任何幫助將不勝感激。

被修改:

由於從N.M.尖端我能得到這個工作有:

export DISPLAY=:0 
sudo xdotool key Return 

這實現了我想要的東西,但現在我想知道如果有一種方法可以做到這一點沒有「須藤」?有沒有一個標誌,我可以啓用/禁用來解決這個問題?

再次感謝您的幫助。

回答

5

您需要權限才能連接到顯示器。注意X命令的-auth參數。這就是權威所在。

試試這個:

export XAUTHORITY=/var/run/gdm/auth-for-gdm-<whatever-it-is>/database 
export DISPLAY=:0 
xdotool key Return 

你需要以root能夠訪問權限的文件。

查看man xauth瞭解更多信息。

+0

謝謝!事實證明,我所需要的只是爲了實現這一點而成爲根源...... – furtypajohn