我有一台运行Ubuntu的笔记本电脑,当我在办公室时我连接了外接显示器。通常这需要我运行xrandr --auto
以便笔记本电脑重新调整显示尺寸以匹配外部显示器。如果这可以自动完成,或者在连接监视器时触发,这将是很好的,但当笔记本电脑从暂停/休眠状态唤醒时,实际运行xrandr --auto
就足够了。
我创建了一个包含
行的脚本/etc/pm/sleep.d/00xrandr.sh
xrandr --auto
但由于脚本无权访问X显示,因此失败。
有什么想法吗?
答案 0 :(得分:2)
我猜问题是脚本以root身份运行,无法访问您的xauth数据。根据您的设置,这样的事情可能会起作用:
xauth merge /home/your_username/.Xauthority
export DISPLAY=:0.0
xrandr --auto
如果需要,您可以使用更聪明的东西找出需要从哪个用户提取xauth数据。
答案 1 :(得分:0)
您是否尝试正确设置脚本中的DISPLAY变量,并授予其他用户使用xhost + localhost访问您的DISPLAY的权限?不知道这是否有帮助,但值得一试。