Настройка Debian Multi Monitor потеряна после перезагрузки

1328
TryToSolveItSimple

Хорошо, теперь я борюсь с этой проблемой уже несколько дней. Моя проблема в том, что я не могу сохранить текущие настройки монитора, чтобы применить / сохранить после перезагрузки.

У меня есть 3 монитора, и я хочу отразить 2 из них, но не третий. Я могу сделать это с помощью инструмента графического интерфейса nvidia-settings или вызвать скрипт bash, использующий xrandr. Я не могу сделать это, переместив свой монитор на другой в меню настроек дисплея gnome / debian - здесь я могу только поместить их рядом друг с другом, но не могу «только» отразить два из них (я могу отразить все но я этого не хочу) Вышеупомянутый скрипт может сделать это для меня (используя xrandr) - и теперь я ищу подходящее место для его установки. Я использую gdm3 и пытался поместить его в начало (xor) конца / etc / gdm3 / Xsession file -> не помогло. Я также создал файл ~ / .xprofile и поместил его туда -> не помогло. Сценарий является исполняемым для каждой группы. И я добавил строку, чтобы создать новый файл в моем домашнем каталоге, чтобы проверить, был ли он вызван.

И что же мне делать? Я гуглил, гуглял, гуглял, читал и читал, но не нашел никакого решения.

Я надеюсь, что кто-то здесь может мне помочь.

PS используя Debian 8 Джесси, проприетарный драйвер nvidia, gdm3, gnome

и это мой сценарий:

#!/bin/bash xrandr --output DVI-D-0 --mode 1920x1080 --pos 1440x0 --rotate normal --output HDMI-0 --mode 1920x1080 --pos 1440x0 --rotate normal --output DVI-I-1 --off --output DVI-I-0 --mode 1440x900 --pos 0x180 --rotate normal --output DP-1 --off --output DP-0 --off 

этот скрипт работает нормально и был сгенерирован arandr. Я сохранил его в / usr / share /.

TL; DR Сценарий отлично работает при запуске вручную, а также вызывается при помещении в / etc / gdm3 / Xsession или ~ / .xprofile. Но после загрузки настройка монитора не установлена ​​правильно. Только когда я запускаю скрипт вручную после того, как все закончено (загрузка).

0
просто чтобы уточнить, если вы вызываете свой скрипт после входа в систему, он правильно устанавливает ваши настройки монитора? Frank Thomas 8 лет назад 0
да - мне нужно только место, где его положить, чтобы он делал это автоматически. на старте. В Xsession, initrc или где-нибудь, но мне пока не повезло ... TryToSolveItSimple 8 лет назад 0

1 ответ на вопрос

1
MariusMatutiae

Поведение, которое вы найдете, следует ожидать. Xrandr это ...

xrandr - примитивный интерфейс командной строки для расширения RandR

это означает, что он будет работать после того, как Xorg загрузит расширение RandR, а не раньше. Возможно, вы сможете указать /etc/X11/xorg.confжелаемую конфигурацию в файле, но это может быть пустой тратой времени, поскольку DE, как правило, навязывают свой порядок на наших экранах. Например, KDE общеизвестно устойчив к пользовательским конфигурациям монитора.

Какие у вас варианты?

  1. Попробуйте сохранить текущую конфигурацию для будущих сессий. В этом посте о Unix и Linux вы можете найти несколько способов сделать это. Имейте в виду, что ошибка, упомянутая на веб-странице, теперь закрыта.

  2. Запускайте скрипт каждый раз, когда вы входите в систему графически. Например, вы можете поместить следующий код в ваш .bashrcфайл:

    if [[ $TERM != "linux" && "x$SSH_CLIENT" == "x" ]] then xrandr --output DVI-D-0 --mode 1920x1080 --pos 1440x0 --rotate normal --output HDMI-0 --mode 1920x1080 --pos 1440x0 --rotate normal --output DVI-I-1 --off --output DVI-I-0 --mode 1440x900 --pos 0x180 --rotate normal --output DP-1 --off --output DP-0 --off fi 
я уже попробовал способ с xorg.conf, но это не помогло (не упомянул это выше, потому что я уже думал, что мой DE переопределит это / не использует его). Опция frist выглядит так, как если бы она сохраняла все мои текущие настройки сеанса, включая мои открытые окна - я не хочу, чтобы это происходило. Так что я попробую второй - спасибо TryToSolveItSimple 8 лет назад 0
он работает с .bashrc -> но мой скрипт, использующий xrandr, вызывается очень поздно -> примерно через 30 секунд после того, как я вошел в систему. Есть ли другой вариант? Может быть, стандартный способ с гномом? В диспетчере дисплеев из gnome я вижу все свои 3 монитора, но не могу отразить только два из них (могу только отразить все). TryToSolveItSimple 8 лет назад 0
@TryToSolveItSimple Нет, другого стандартного места нет, вы их все перепробовали. Стандартным местом будет `/ etc / gdm`, но вы сказали, что оно не работает. Вы можете прочитать здесь, https://wiki.archlinux.org/index.php/xrandr, обо всех этих местах, но, опять же, вы уже исключили их. Файл **. bashrc ** - ваш последний шанс. MariusMatutiae 8 лет назад 0
хорошо ... это грустно. Я буду использовать ваше решение. Возможно, однажды я узнаю, почему установка его в / etc / gdm3 / Init / или / etc / gdm3 / PostLogin не работает - должен быть другой скрипт, который переопределяет мои настройки, я думаю. TryToSolveItSimple 8 лет назад 0

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