微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

访问Ubuntu GDM登录界面的X显示

总的来说,我试图从一个单独的 shell中将按键注入Ubuntu登录屏幕.我在标准登录屏幕上有机器(运行Ubuntu 10.04),我也通过SSH连接到机器.我尝试了以下(来自SSH shell):

$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完成登录.我不想使用自动登录.我只是希望能够抓住正确的显示,并执行登录所需的按键操作.

任何帮助将不胜感激.

编辑:

感谢上午的提示.我能够得到这个:

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

您需要是root才能访问授权文件.

有关(很多)更多信息,请参阅man xauth.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐