Экран поворачивается после закрытия крышки ноутбука HP, Ubuntu 18.04.02

Я проверил других сообщений о случайно вращающихся экранах и экранах, которые вращаются после сна. Я пробовал следующее безрезультатно:

1. Поворот экрана блокировки

enter image description here

Проблема не устранена.

2. Отключить плагин Gnome Orientation

$ gsettings set org.gnome.settings-daemon.plugins.orientation active false

Проблема не устранена.

3. Отключить / удалить iio-sensor-proxy

$ sudo systemctl stop iio-sensor-proxy.service
$ sudo systemctl disable iio-sensor-proxy.service

$ sudo apt-get remove iio-sensor-proxy

Проблема не устранена.

Каждый раз, когда я закрываю крышку, ноутбук просыпается боком и мне приходится бежать:

$ xrandr -o normal

Есть ли где-нибудь ошибка? Я что-то пропустил?

Как заставить xrandr -o normal работать каждый раз, когда ноутбук выходит из режима ожидания? Может быть, хакерское решение, но оно может работать правильно?

3
задан 10 July 2019 в 06:48

1 ответ

Я не знаю, является ли то, что Вы описываете, ошибкой, но можно работать xrandr -o normal в пробуждении от приостанавливают путем выполнения следующего (на основе этого ответа и комментария ниже его):

  1. Создайте названный сценарий оболочки xrandr_normal.sh (можно использовать другое имя, если Вы желаете), который выполняет Ваш xrandr команда:

    nano /path/to/script/xrandr_normal.sh
    

    Вставьте следующее:

    #!/bin/bash
    DISPLAY=:0.0 ; export DISPLAY
    xrandr -o normal
    
  2. Дайте права выполнения на свой сценарий:

    chmod u+x /path/to/script/xrandr_normal.sh
    
  3. Создайте сервисный файл, который запустит Ваш скрипт после того, как приостановят (можно использовать любое имя, которого Вы желаете для сервисного файла):

    sudo nano /etc/systemd/system/xrandr_normal.service
    

    Вставьте следующее:

    [Unit]
    Description=Some description
    Before=sleep.target
    StopWhenUnneeded=yes
    
    [Service]
    User=YOUR_USERNAME
    Type=oneshot
    RemainAfterExit=yes
    ExecStop=-/path/to/script/xrandr_normal.sh
    
    [Install]
    WantedBy=sleep.target
    

    Удостоверьтесь, что заменили YOUR_USERNAME в первой строке ниже [Service] с Вашим фактическим именем пользователя и помещенный корректный путь к Вашему сценарию в ExecStop.

  4. Включите сервис, который Вы создали:

    sudo systemctl enable xrandr_normal
    
  5. Запустите сервис:

    sudo systemctl start xrandr_normal
    
  6. Как автор ответа, на основе которого этот, предполагает, можно проверить ошибки, если сервис не работает, после приостанавливают со следующей командой:

    journalctl -u xrandr_normal.service
    
0
ответ дан 1 December 2019 в 19:58

Другие вопросы по тегам:

Похожие вопросы: