如何在登录时阻止无人值守的屏幕旋转?
最近我在联想ThinkPad X230平板电脑上安装了Ubuntu 16.04。 它的效果非常好! 我只遇到两个小问题,两者都与可转换屏幕连接 。 这个令我烦恼的是这个问题的主题。
当我登录Unity时,显示方向进入纵向视图模式。 因此,我必须按屏幕旋转按钮才能返回横向视图模式。
LightDM中的默认视图是横向。 当我解锁Unity时,问题不存在,只有当我登录时。 登录Gnome时不存在此问题。 但主要是我使用Unity,所以我的问题是: 如何在登录后立即强制Unity保持横向视图模式?
更新1:
-
我发现guest-session和新创建的用户都不存在这个问题。
-
看起来某个应用程序会旋转显示。
-
我已经尝试了一些基于这些问题答案的解决方案,但没有成功:
-
不使用X服务器时如何旋转显示器?
-
屏幕在Ubuntu 17.10上随机旋转
-
-
只有
xrandr -o normal
作为启动应用程序中的命令放置是一种丑陋的解决方法。
更新2:
- 原标题:登录后如何立即强制Unity保持横向视图?
最后,我设法了解问题的来源:
-
平板电脑有一个内置的屏幕旋转按钮 。 我没有对此按钮进行任何设置。 它默认使用Unity / Gnome。
-
当我按下此按钮时,屏幕顺时针旋转,当前屏幕方向存储在
~/.config/monitors.xml
文件中。 除非按下此按钮,否则此文件不存在,因此在访客会话中 (如问题中所述)问题不存在。 -
当我按下按钮时,我不知道哪个“function”创建了这个文件。
-
当我退出时, “某事”编辑文件
~/.config/monitors.xml
(如果它存在)并改变随机主页上的方向。 也许“它”试图将方向转回normal
,但“它”不能正常工作。 这就是问题所在。
要为特定用户修复此问题,只需添加以下Cron作业 – crontab -e
:
@reboot sed -i 's#.* #normal #' "$HOME/.config/monitors.xml" >/dev/null 2>&1
- 用您想要的方向替换
normal
。 - 此命令将在
~/.config/monitors.xml
文件中用
替换desired value
。something
不幸的是,只有在启动或重新启动系统时,此解决方法才能解决问题。 当您注销并登录时,问题可能会再次出现。 要解决此问题,您可以在启动应用程序中添加xrandr
命令。