lightdm 不运行 display-setup-script 脚本

lightdm 不运行 display-setup-script 脚本

为了解决双显示器分辨率问题,我遵循了此处与会话和显示设置脚本相关的其他问题中的建议。我有以下内容/etc/lightdm/lightdm.conf

[SeatDefaults]
user-session=ubuntu
greeter-session=unity-greeter
allow-guest=false
display-setup-script=/usr/bin/dualmon.sh
session-setup-script=/usr/bin/dualmon.sh

我还有以下/usr/bin/dualmon.sh我创建的(可执行文件):

#!/bin/bash

xrandr --output LVDS1 --auto --left-of HDMI1 --output HDMI1 --auto
# notify-send Dualscreen activated

touch /home/shade/Desktop/touched

但是,登录屏幕和登录后,分辨率都是错误的。此外,文件 /home/shade/Desktop/touched 不存在。当我dualmon.sh手动运行脚本时(登录后),分辨率设置正确。

这让我觉得脚本根本没有运行。这是什么原因造成的?我该如何修复?

答案1

使用 Ubuntu,让您的用户帐户具有适合双显示器设置的正确分辨率的最佳方法如下:

  • 从 ~/.config/ 中删除 monitors.xml
  • 打开屏幕显示系统设置
  • 设置适当的屏幕设置(如果需要,请预先使用 XRandR 或 ARandR)
  • 然后是重头戏——Hit申请

完成上述操作后,您会注意到 monitors.xml 已被重写,并且无论何时登录,您的双显示器设置都会起作用。

其次,为了让登录屏幕正常工作,您需要遵循的流程如下这个答案棘手的部分是确保您的权限正确 - 除了为符号链接设置正确的权限之外,您还需要确保其他的能够访问 monitors.xml 文件以及 ~/.config 文件夹。

这种设置的优点在于,与尝试强制执行一些 xrandr 命令相反,每当您在 Ubuntu 中更改分辨率/显示器设置时,您的登录屏幕都会随之更改。

为了使上述两种方法都能正常工作,您需要确保在启动时删除对 xrandr 命令的所有引用。

相关内容