旋转显示器。登录屏幕需要旋转


20

我旋转屏幕,登录后即可正常工作。但是,迎宾员(登录)屏幕未收到有关事物旋转90度的消息。如何更改登录屏幕的旋转角度?

在此处输入图片说明

更新:锁定屏幕处于正确位置。我仅在启动或注销时看到此消息。


先前的答案似乎都不适用于16.04 ...(尝试在Noveau或Nvidia 361之间切换)。我可以看到'arandr'设置正确,但这只是第二次重置为“标准”。
汉奴

1
@Hannu请在askubuntu.com/questions/408302/…下查看我的评论。
jbrock '16

Answers:


19

将此行添加到/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。然后重启。


4
更改为xrandr -o对。工作完美。
2014年

添加上面提到的脚本(没有显式exit 0/etc/lightdm/pre-greeter.d对我有用。
Oleg Sklyar,

19

另一个可行的选择是复制~/.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

这样,如果您的显示器设置将来会更改,它将自动反映到登录屏幕。请注意命令-h上的必要标志chown,如chown中所解释的未更改符号链接


我将研究它,这是我试图找出的那种方法。
2014年

1
建立链接对我不起作用,我做了描述的权限操作,但仍然告诉我权限是错误的。复制文件效果很好。
LovesTha 2015年

2
重要注意事项:如果您的主目录已加密,则此处的symlink无效,因为只有在登录后才能访问该文件。
外国人

11

14.04及以上

Falconer的回答对我很有帮助,但是lightdm更改为Ubuntu Trusty 14.04。/etc/lightdm/lightdm.conf我的系统上不再有文件。lightdm现在采用了“ Debian方式”,并将其配置分解为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根据需要配置监视器:

    阿兰德
  • 使用“布局”->“另存为”将其保存到包含监视器配置命令的文件中。

有了此功能,我登录时也可以正确旋转显示器,因此无需在Gnome,XFCE或KDE中进行其他配置。我需要配置监视器旋转的唯一其他位置是在虚拟帧缓冲终端中,如不使用X Server时如何旋转显示器中所述。


FWIW,我的干净的32位14.04安装没有/etc/lightdm/lightdm.conf.d/目录,并且按照下面的其余说明创建一个目录无效。但是,Electric Head的答案中的说明确实起作用。我不确定一个人为什么工作,而不是另一个人工作,但是我只是想为后代保留此评论,以防其他人遇到与我相同的情况。
reirab

7

falconer几乎钉牢了它,但我想指出一个简化。

您可以xrandr直接将命令/etc/lightdm/lightdm.conf作为系统挂钩放入。你并不需要创建一个shell命令来调用包含一个shell命令一个单独的脚本(虽然你当然可以,如果你看到一个理由这样做)。另外,也没有提及/etc/lightdm/lightdm.conf.d/in man lightdm,我也没有lightdm.conf在系统上安装它。因此,尽管我确定它可能确实可以按照Stephen的建议工作,但是您不需要这样做。

因此,如果尚不存在,那么/etc/lightdm/lightdm.confsudo显然)中类似以下内容的东西应该可以正常工作:

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

请参阅man xrandr以获取配置选项。

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

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

参考文献


在16.04中,我需要首先创建名为的文件lightdm.conf。然后它起作用了。谢谢你
jbrock '16

我也用[Seat:*]代替[SeatDefaults]wiki.ubuntu.com/LightDM
jbrock '16

通过上面的添加,我现在可以正常工作了;我已经将monitors.xmlSOFT-LINKED链接到普通用户的monitors.xml中-这是罪魁祸首。当我将文件复制到位时,它开始工作。我认为该设置应在“系统设置>显示”中选择
Hannu

3

16.04

Steve Dee的答案中的方法类似,对我而言唯一有效的解决方法是复制~/.config/monitors.xml/var/lib/lightdm/.config/,但使用文件的副本而不只是符号链接到该文件。进行符号链接无效。

无论是鹰的还是斯蒂芬Ostermiller的回答为我工作。在启动后,我只看到正确旋转的屏幕2秒钟,然后又旋转回水平方向。


我编辑了答案。目的是使16.04的用户更容易找到解决方案。
AndrejRepiský17年

1
这也是唯一为我工作的人!奥斯特米勒的回答给了我一个权限错误,即使我家里的文件被所有人都读了。
亚历克斯


0

相同的问题和我在18.10中的结果

猎鹰的答案是好的。让我添加在18.10中必须弄清的2个细节:

  • 而不是[SeatDefaults]当前版本[Seat:*]
  • 更重要的是:我不得不使用上面的脚本进行了一些试验logger,然后xmessage得出结论,确实可以调用它,确实可以使事情正确,但是不幸的是,它的效果无法被统一问候语所撤销

我尝试了其他打招呼,但除了默认的统一打招呼之外,其他所有人都赞扬解决方案并开始旋转得很好。我最终使用了光滑的问候。


0

在垂直显示器上的Ubuntu 18.04中,我的不正确迎宾屏出现了相同的问题。我尝试了xrandr其他答复中指出的某些提到的命令,但是这些命令对我不起作用。然后,我遵循了建议将~/.config/monitors.xml文件复制到/var/lib/gdm3/.config目录的答复。重新启动后,迎宾员屏幕的方向仍然不正确。我的下一步是查看/var/lib/gdm3/.config/monitors.xml文件的内容。我注意到它包含了我多年来使用的各种显示器和配置的历史记录。我编辑了此文件,使其仅包含当前配置的设置。

monitors.xml文件的结构是在文件的开头和结尾处包含一组<monitors></monitors>标记。在这些标记之间是一个或多个组(多个)的<configuration></configuration>标签。每个部分都包含<logicalmonitor></logicalmonitor>标记的一个或多个集合。这些部分中的每个部分都指定一个监视器,其参数包括品牌和类型,方向(如果不是水平的话),宽度,高度,x,y和刷新率。它还指定监视器是否是主监视器。在我的文件中是文件底部附近列出的当前设置。我删除了所有<configuration> </configuration>未描述当前设置的部分。结果看起来像这样:

<monitors version="2">
  <configuration>
    <logicalmonitor>
      .. primary monitor specification (vertical)
      <primary>yes</primary>
      <transform>
        <rotation>left</rotation>
        <flipped>no</flipped>
      </transform>
    </logicalmonitor>
    <logicalmonitor>
      .. secondary monitor specification (horizontal)
    </logicalmonitor>
  </configuration>
</monitors>

现在,我重新启动了计算机。这次筛选器窗口确实具有正确的方向。我想原始monitors.xml文件中捕获的历史记录会引起问题。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.