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