有没有办法在连接外接显示器时在启动时禁用笔记本电脑 LCD

有没有办法在连接外接显示器时在启动时禁用笔记本电脑 LCD

我在 Thinkpad X201 笔记本电脑和扩展坞上运行 12.04 和 Gnome Shell。当我在扩展坞中关闭盖子启动 Thinkpad 时,Ubuntu 会识别出外接显示器是主显示器 (DP1),但默认笔记本电脑 LCD (LVDS1) 处于开启状态。我希望在此模式下启动时将其关闭。

我发现了这个回答并开发了一个脚本版本,如下所示:

XRANDRexternal="xrandr --output HDMI1 --off --output LVDS1 --off --output DP1 --mode 2560x1600 --pos 0x0 --rotate normal --output VGA1 --off"
XRANDRnoexternal="xrandr --output HDMI1 --off --output LVDS1 --mode 1280x800 --pos 0x0 --rotate normal --output DP1 --off --output VGA1 --off"
if xrandr | grep -q ' connected'
then
${XRANDRexternal}
else
${XRANDRnoexternal}
fi

然后我尝试将其放入我的 lightdm.conf 中,按照帖子中的建议:

[SeatDefaults]
greeter-session=unity-greeter
user-session=ubuntu
display-setup-script=/usr/share/display-setup-script.sh

我首先在终端中运行该脚本,以验证它是否有效。目前,我无法在启动时自动执行此操作。我尝试了 display-setup-script 和 session-setup 选项,但都不起作用。我还尝试将其粘贴到我的启动应用程序中,但无济于事。

我不确定如何进一步解决这个问题。

答案1

经过一番尝试,我终于让它工作了。我从来没能让它从 LightDM 执行,但添加睡眠选项并将其添加到启动应用程序就可以了

#!/bin/bash
sleep 5
XRANDRexternal="xrandr --output HDMI1 --off --output LVDS1 --off --output DP1 --mode 2560x1600 --pos 0x0 --rotate normal --output VGA1 --off"
XRANDRnoexternal="xrandr --output HDMI1 --off --output LVDS1 --mode 1280x800 --pos 0x0 --rotate normal --output DP1 --off --output VGA1 --off"
if xrandr | grep -q ' connected'
then
${XRANDRexternal}
else
${XRANDRnoexternal}
fi

相关内容