访问UbuntuGDM登录屏幕的X显示

访问UbuntuGDM登录屏幕的X显示,ubuntu,x11,ubuntu-10.04,ui-automation,Ubuntu,X11,Ubuntu 10.04,Ui Automation,总的来说,我试图将按键从一个单独的shell注入Ubuntu登录屏幕。我的机器(运行Ubuntu10.04)在标准的登录屏幕上,我也通过SSH进入机器。我(从SSH shell)尝试了以下操作: 机器登录Ubuntu后,同样的方法也会起作用,但在登录屏幕上不起作用 理想情况下,我希望能够从另一个shell完成登录。我不想使用自动登录。我只想能够抓取正确的显示,并执行登录所需的按键 任何帮助都将不胜感激 编辑: 多亏了n.m.的提示,我才得以使用: export DISPLAY=:0 sudo x

总的来说,我试图将按键从一个单独的shell注入Ubuntu登录屏幕。我的机器(运行Ubuntu10.04)在标准的登录屏幕上,我也通过SSH进入机器。我(从SSH shell)尝试了以下操作:

机器登录Ubuntu后,同样的方法也会起作用,但在登录屏幕上不起作用

理想情况下,我希望能够从另一个shell完成登录。我不想使用自动登录。我只想能够抓取正确的显示,并执行登录所需的按键

任何帮助都将不胜感激

编辑:

多亏了n.m.的提示,我才得以使用:

export DISPLAY=:0
sudo xdotool key Return
这实现了我想要的,但现在我想知道是否有一种方法可以在没有“sudo”的情况下实现这一点?是否有我可以启用/禁用的标志来绕过此问题


再次感谢您的帮助。

您需要权限才能连接到显示器。注意X命令的
-auth
参数。这就是权威所在

试试这个:

export XAUTHORITY=/var/run/gdm/auth-for-gdm-<whatever-it-is>/database 
export DISPLAY=:0 
xdotool key Return
export XAUTHORITY=/var/run/gdm/auth for gdm-/database
导出显示=:0
xdool密钥返回
您需要是root用户才能访问权限文件


更多信息,请参见
man xauth

谢谢!事实证明,我所需要的只是成为根,为了完成这个。。。
export XAUTHORITY=/var/run/gdm/auth-for-gdm-<whatever-it-is>/database 
export DISPLAY=:0 
xdotool key Return