Настройки дисплея не сохраняются

Минимальный пример Buildroot

Мой любимый способ узнать, что что-то делает, это сделать минимальный пример, который его запускает.

На Ubuntu это сложно, так как второй startx может противоречить вашему текущему рабочему столу.

https://askubuntu.com/a/519164/52975 предлагает Xnest, но с помощью Buildroot мы можем пойти еще более минимально и создать микро-дистрибутив только с установленным X11 .

Таким образом, должно быть проще понять, что происходит.

Я описал создание дистрибутива по адресу: https://askubuntu.com/a/ 519164/52975

После того, как вы получили изображение, запущенное на QEMU, вы запускаете оболочку TTY.

Затем, когда вы выполните:

root
startx

он запускает графический интерфейс X11:

Теперь взгляните на источник для startx внутри этого дистрибутива, который является всего лишь сценарием оболочки.

Это простая оболочка над /usr/bin/xinit и что она проходит /etc/X11/xinit/xinitrc до xinit.

Если вы откроете /etc/X11/xinit/xinitrc, она содержит следующие строки:

[ f2]

, поэтому мы видим, что он запускается:

[d1 9] twm: очень простой и старый менеджер окон xclock и xterm, который мы видим на экране

Для /usr/bin/xinit мы можем сделать:

man xinit

[d23 ], в котором говорится:

Если в командной строке не указана конкретная клиентская программа, xinit будет искать файл в домашнем каталоге пользователя, который называется .xinitrc, для запуска в качестве сценария оболочки для запуска клиентских программ. Если такой файл не существует, xinit будет использовать следующее по умолчанию:
xterm  -geometry  +1+1  -n  login  -display  :0

Если в командной строке не указана какая-либо конкретная клиентская программа, xinit будет искать файл в доме пользователя каталог под названием .xinitrc для запуска в качестве сценария оболочки для запуска клиентских программ. Если такой файл не существует, xinit будет использовать следующее по умолчанию:

X  :0

2
задан 19 January 2018 в 12:52

3 ответа

Если вы используете драйверы NVIDIA, вы должны изменить свои настройки там. Я бы рекомендовал использовать команду xrand для изменения ваших настроек, вы можете сделать сценарий автоматического запуска или комбинацию клавиш для переключения между настройками с помощью команды xrand. [ ! d0]

Изменить: исправить его IgnoreLid=true в файле /etc/UPower/UPower.conf!

0
ответ дан 22 May 2018 в 15:30
  • 1
    Спасибо! Я попытался использовать панель управления NVidia с тем же результатом (настройки дисплея не сохраняются). И я думаю о создании скрипта xrandr для моих настроек отображения. Хотя, я надеялся, что такую ​​простую проблему можно решить без скриптов :) – alexander.tkachuk 17 January 2018 в 18:27
  • 2
    На всякий случай, если это интересно для кого-то, строка xrandr для моих настроек отображения (один дисплей над другим) «xrandr --output VGA-1-1 --auto --primary --output HDMI-0 --auto - выше VGA-1-1 " – alexander.tkachuk 17 January 2018 в 18:47
  • 3
    это можно решить без сценария, но потребуется больше времени, чтобы найти, где проблема, и решить ее. – AsenM 17 January 2018 в 18:48
  • 4
    Я сделал это без скриптов, установив «IgnoreLid = true» в файле «/etc/UPower/UPower.conf»! – alexander.tkachuk 19 January 2018 в 12:53
  • 5
    Хорошо слышать, я отредактирую свой ответ с вашего комментария, чтобы люди могли извлечь из этого выгоду, так ли это? – AsenM 19 January 2018 в 12:54

Если вы используете драйверы NVIDIA, вы должны изменить свои настройки там. Я бы рекомендовал использовать команду xrand для изменения ваших настроек, вы можете сделать сценарий автоматического запуска или комбинацию клавиш для переключения между настройками с помощью команды xrand. [ ! d0]

Изменить: исправить его IgnoreLid=true в файле /etc/UPower/UPower.conf!

0
ответ дан 17 July 2018 в 22:54

Если вы используете драйверы NVIDIA, вы должны изменить свои настройки там. Я бы рекомендовал использовать команду xrand для изменения ваших настроек, вы можете сделать сценарий автоматического запуска или комбинацию клавиш для переключения между настройками с помощью команды xrand. [ ! d0]

Изменить: исправить его IgnoreLid=true в файле /etc/UPower/UPower.conf!

0
ответ дан 24 July 2018 в 13:30

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

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