如何在启动时运行脚本来修复屏幕方向问题?

如何在启动时运行脚本来修复屏幕方向问题?

我一直在寻找一种在启动时运行脚本的方法,但我找到的有关该主题的所有旧线程似乎都是在 systemd 出现之前,而且我找到的所有答案似乎都不再有效。我是 Linux 操作系统的新手,我不确定在哪里可以找到有关如何在 systemd 下执行此操作的说明。

先说一下背景故事,我最近在一台小型平板电脑/笔记本电脑上用 Ubuntu 替换了 Windows,我发现启动时屏幕方向是错误的,这意味着每次我登录时都必须进入xrandr -o right终端,每次都这样做有点烦人。

此外,如果有人有针对 Linux 初学者的资源,我很乐意看到!我目前正在读大学,编程方面的事情都是在 Ubuntu 上完成的,因此能够更熟练地使用该系统将是一件很棒的事情。

谢谢。

答案1

启动脚本示例:

  1. 首先在目录中创建一个 systemd 启动脚本(例如 disk-space-check.service),/etc/systemd/system/内容如下:

    [Unit]
    After=mysql.service
    [Service]
    ExecStart=/usr/local/bin/disk-space-check.sh
    [Install]
    WantedBy=default.target
    
  2. 安装 systemd 服务单元并启用它:

    chmod 664 /etc/systemd/system/disk-space-check.service
    systemctl daemon-reload
    systemctl enable disk-space-check.service
    

您可以在此链接中阅读更多解释:

答案2

我在 Ubuntu 16.04 中遇到了同样的问题。显然这是一个错误,某物将错误的显示方向值保存到文件中~/.config/monitors.xml。因此,如果您xrandr -o right在启动时执行,则当您登录且文件monitors.xml准备好时,方向值将被覆盖。

要为某个用户修复此问题,只需添加以下 Cron 作业 - crontab -e

@reboot sed -i 's#<rotation>.*</rotation>#<rotation>normal</rotation>#' "$HOME/.config/monitors.xml" >/dev/null 2>&1
  • 替换normal为您所需的方向。
  • 此命令将替换<rotation>something</rotation>文件<rotation>desired value</rotation>中的~/.config/monitors.xml

不幸的是,此解决方法仅在您启动或重新启动系统时才能解决问题。当您注销并登录时,问题可能会再次出现。要解决此问题,您可以xrandr启动应用程序

相关内容