当前位置: 首页>>技术教程>>正文


lightdm – 旋转监视器。登录屏幕需要旋转

问题描述

我旋转了我的屏幕,一旦我登录,它就可以正常工作。但是,迎宾(登录)屏幕没有收到旋转 90 度的消息。如何更改登录屏幕的旋转?

更新:锁屏位置正确。我只在启动或注销时看到这一点。

最佳办法

将此行添加到 /etc/lightdm/lightdm.conf 文件(在 [SeatDefaults] 部分中):

greeter-setup-script=/etc/lightdm/greeter_setup.sh

然后使用以下内容制作文件 /etc/lightdm/greeter_setup.sh

#!/bin/bash
xrandr -o left
exit 0

然后使用 sudo chmod +x /etc/lightdm/greeter_setup.sh 使其可执行。然后重启。

次佳办法

另一个可行的选择是将 ~/.config/monitors.xml 复制到 /var/lib/lightdm/.config

这当然适用于我的显示器位置和分辨率信息,所以我认为它也适用于旋转。

编辑:为了最大的灵活性,可以在上述之间建立符号链接:

sudo su
cd /var/lib/lightdm/.config
ln -s /home/<your_user>/.config/monitors.xml .
chown -h lightdm:lightdm monitors.xml
exit

这样,如果您的显示器设置将来发生更改,它会自动反映到登录屏幕。请注意 chown 命令上必要的 -h 标志,如 chown is not changing symbolic link 中所述。

第三种办法

14.04 及以上

Falconer 的回答对我帮助很大,但 lightdm 为 Ubuntu Trusty 14.04 改变了。我的系统上不再有 /etc/lightdm/lightdm.conf 文件。 lightdm 现在已经删除了 “Debian way” 并将其配置分解到一个 conf.d 目录中。您现在需要创建以下文件:

/etc/lightdm/lightdm.conf.d/80-display-setup.conf

[SeatDefaults]
display-setup-script=xrandr -o right

正如 Electric Head 的回答中所建议的, xrandr 命令可以直接放在这个文件中,无需创建单独的脚本。

如果你想要一个处理多个监视器的 xrandr 命令,你可以使用 arandr 为你生成它。我的 xrandr 命令实际上最终是:

xrandr --output DVI-1 --mode 1920x1080 --pos 1080x0 --rotate left --output DVI-0 --mode 1920x1080 --pos 0x0 --rotate right

为此,我使用了以下命令:

  • sudo apt-get install arandr

  • arandr

  • 使用 GUI 配置您想要的显示器:

  • 使用 “Layout” -> “Save As” 将其保存到包含监视器配置命令的文件中。

有了这个,我的显示器在我登录时也会正确旋转,所以不需要在 Gnome、XFCE 或 KDE 中进行额外的配置。我需要配置监视器旋转的唯一其他地方是在虚拟帧缓冲区终端中,如 How do I rotate my display when not using an X Server? 中所述

第四种办法

falconer 几乎一针见血,但我想指出一个简化。

您可以将 xrandr 命令直接放在 /etc/lightdm/lightdm.conf 中作为 system hook 。您不需要创建 shell 命令来调用包含 shell 命令的单独脚本(当然,如果您有理由这样做的话,您可以这样做)。此外,在 man lightdm 中没有提到 /etc/lightdm/lightdm.conf.d/,我的系统上既没有这个也没有 lightdm.conf。因此,尽管我确定它可能确实按照 Stephen 的建议工作,但您不需要这样做。

因此,如果它不存在,则 /etc/lightdm/lightdm.conf (显然是 sudo )中的以下内容应该可以正常工作:

[SeatDefaults]
display-setup-script=xrandr --output DVI-1 --auto --rotate left

有关配置选项,请参阅 man xrandr

顺便说一句:我可能可以在这里发表评论/编辑,但我没有代表,我确实想添加此信息的来源。

Version

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 14.04.1 LTS
Release:    14.04
Codename:   trusty

参考

第五种办法

16.04

唯一对我有用的修复方法是将 ~/.config/monitors.xml 复制到 /var/lib/lightdm/.config/ ,类似于 Steve Dee’s answer 中的方法,但带有文件的副本,而不仅仅是指向它的符号链接。建立符号链接不起作用。

falconer’sStephen Ostermiller’s 答案都不适合我。我刚在启动后看到正确旋转的屏幕 2 秒钟,然后它又旋转回水平方向。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/12335.html,未经允许,请勿转载。