Як зберегти роздільну здатність зовнішнього монітора, встановлену xrandr, щоб зберегтись


11

тл; д-р

Мій ноутбук продовжує забувати правильну роздільну здатність зовнішнього монітора, прикріпленого до нього. Як я можу зробити конфігурацію "палицею"?

Деталі

У мене ноутбук під управлінням Linux Mint, приєднаний до зовнішнього монітора ViewSonic. Я налаштував це використовувати зовнішній монітор як другий екран (тобто не дзеркальний). Це спрацювало чудово протягом декількох тижнів.

Раптом ноутбук більше не визнав його ViewSonic, і тоді він не знав свого оптимального дозволу ( 1600 x 1200), дозволяючи лише макс 1028 x 768. 1 Це зовсім не добре спрацювало з моїм ноутбуком, який має 1920 x 1200роздільну здатність.

Після сильних розладів я знайшов цю відповідь . Це допомогло мені вирішити проблему наступним чином (висновок cvtкоманди - модель, який був використаний у наступній команді):

cvt 1600 1200
xrandr --newmode "1600x1200_60.00"  161.00  1600 1712 1880 2160  1200 1203 1207 1245 -hsync +vsync
xrandr --addmode VGA-1 1600x1200_60.00

Це саме те , що я хотів зробити, але не міг зробити через GUI. (Є причини, чому я все ще люблю командний рядок ...)

Це ще раз спрацювало добре. Однак, коли я завантажив комп'ютер сьогодні та ввійшов, у мене з’явилося спливаюче поле сповіщень із рядком помилок про різні спроби, які не працювали, і зовнішній монітор був вимкнений. Я повторив команди вище, і вона знову працює.

У мене є карта nVidia. Я спробував встановити власний драйвер, коли все почало піти не так, але в цей момент зовнішній монітор вже не розпізнавався, тому я повернувся до драйвера з відкритим кодом. Я не маю Xorg.confабо Xorg.conf.d, тільки xorg.conf.failsafe.

Я не хочу повторювати ці команди щоразу при завантаженні машини. Чи є якимось чином я можу це зберегти на своєму Xorg.confчи щось? Минуло багато років, як я багато зробив з X. Чи може мені хтось тут допомогти?


1 Я не зміг визначити, чому це сталося. Моя найкраща здогадка - це проблематичне оновлення драйверів.


1
Яку відеокарту ви використовуєте? І якщо це ATI / AMD чи Nvidia, ви використовуєте фірмовий драйвер чи відкритий? У вас наразі є /etc/X11/corg.confфайл або щось таке /etc/X11/corg.conf.d? Так, будь ласка, відредагуйте своє запитання та додайте вміст цих файлів.
тердон

Будь ласка, відредагуйте своє запитання, щоб додати додаткову інформацію, важко читати і легко пропустити коментарі. Сказавши, так, xorg.conf більше не потрібен, тепер ці речі займаються udev.
terdon

Просто переглянувши ваше запитання ще раз, і що я пропустив, коли написав свою відповідь, це те, що у вас є ноутбук. Можливо, ви хочете звернути увагу на написання udevправила викликати скрипт для виконання xrandr кожного разу, коли монітор підключається або відключається, це буде набагато краще, якщо ваш комп'ютер не завжди приєднаний до монітора. В іншому випадку, якщо ви щасливі, що він постійно встановлюється в одному місці, Xorg.confце шлях.
Graeme

Відповіді:


5

Я впевнений, що є кращий спосіб, я думаю, що зараз це все udevвирішено, але якщо ви знаєте, що ці команди вирішать це, ви завжди можете просто перетворити їх на сценарій:

#!/usr/bin/env bash
cvt 1600 1200
xrandr --newmode "1600x1200_60.00"  161.00  1600 1712 1880 2160  1200 1203 1207 1245 -hsync +vsync
xrandr --addmode VGA-1 1600x1200_60.00

Зробіть його виконуваним, а потім додайте його до програм запуску робочого середовища. Це, мабуть, найкращий вибір, якщо ваш DE надає вам можливість.


Якщо ви не можете зробити вищезазначене, ви можете додати їх до своїх ~/.profile:

if [ ! -t 0 ] 
then
    cvt 1600 1200
    xrandr --newmode "1600x1200_60.00"  161.00  1600 1712 1880 2160  1200 1203 1207 1245 -hsync +vsync
    xrandr --addmode VGA-1 1600x1200_60.00
fi

if [ ! -t 0 ]Повинен забезпечити це працювати тільки в графічному інтерфейсі і .profileздобутий з допомогою менеджера входу в систему монетного як я пам'ятаю.

Тепер, ви повинні також бути в змозі використати , ~/.xsessionале у мене були проблеми з цим ігноруються. Багато старих підходів замінюються, і я не впевнений, що таке сучасний шлях.


Вам не доведеться використовувати cvt 1600 1200, оскільки ми вже використовували його вихід у наступні два рядки.
PraveenMax

4

Якщо ви використовуєте фірмовий драйвер Nvidia, то nvdia-settingsдля налаштування Xorg.confфайлу повинен бути інструмент GUI . Він повинен мати власний пакет у Linux Mint, тому встановлення було б таким же простим, як:

sudo apt-get install nvidia-settings

Це має десь помістити піктограму у ваше меню, ви можете запустити її звідти (хоча я не впевнений, як у вас є кореневі дозволи). З командного рядка я вважаю, що ви можете:

sudo /usr/lib/nvidia/current/nvidia-settings

Якщо ви хочете зробити командний рядок, то, nvidia-xconfigздається, це інструмент для використання ( nvidia-xconfigпакет для мене). У будь-якому випадку, як правило, ви отримаєте кращі результати з власним драйвером, якщо він правильно налаштований. Ці інструменти принаймні генерують розумний Xorg.confфайл, який ви зможете налаштувати безпосередньо або через одну з цих програм.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.