11262
[Инструкция] Разрешение экрана для широкоформатных мониторов.
Хочу поделиться своим опытом настройки разрешения экрана, просидел за компом, наверно, около недели, искал ответы, советы. В итоге, разобрался и победил!
У меня широкоформатный монитор 29 дюймов, и все линукс системы не могут, автоматически, настроить широкоформатный монитор под мой масштаб экрана, кроме того в настройках системы, настройки экрана в списке выбора разрешения нет моего широкоформатного разрешения. А не использованные, оставшиеся, не задействованные дюймы монитора, меня не устраивали.
***Предупреждаю! Если вдруг, вы переключили режим через терминал и у вас монитор перестал вообще что либо отображать, то тогда спокойно наберите на клавиатуре reboot и перезагрузите компьютер. Проверьте все команды, если все правильно, то создавайте скрипт. Но не добавляйте пока в автозагрузку. После проверьте скрипт, перезагрузите компьютер и снова проверьте скрипт и изменения масштаба экрана.
1. Открываем терминал. Узнаем список видеовыходов и поддерживаемых разрешений для каждого видеовыхода, командой:
$ xrandr
* Названия интерфейсов могут отличаться, в зависимости, от используемой видеокарты. Для последующей работы с конкретным интерфейсом, необходимо, запомнить его название (например, VGA если вы работаете на видео от Intel, команда для видео выхода, нужного разрешения, будет для этого интерфейса VGA). в моём случае это HDMI-0.
2. Чтобы установить любое из этих разрешений, выполняется следующая команда:
$ xrandr --output HDMI-0 --mode 1920x1080
* необходимое и доступное разрешение, выбирайте из списка, которая отобразится после ввода команды xrandr. Это разрешение прописываете в --mode, к примеру я выбрал 1920x1080.
3. В моем случае, моего разрешения в списке xrandr не оказалось. А значит его нужно и можно создать. Добавляем новое для системы разрешение экрана, для этого, воспользуемся утилитой CVT (Coordinated Video Timing) в параметр ей, добавим необходимое нам разрешение и частоту кадров.
$ cvt 2560 1080 60
* после чего вы увидите вывод команды:# 2560x1080 59.98 Hz (CVT) hsync: 67.17 kHz; pclk: 230.00 MHz
Modeline «2560x1080_60.00» 230.00 2560 2720 2992 3424 1080 1083 1093 1120 -hsync +vsync
* Нам нужна строка, которая находится после слова «Modeline».
*Внимание! Вначале всех действий, вам необходимо знать точные (правильные) форматы разрешения для правильного соотношения сторон экрана. Хотя можно и методом тыка перебрать!) Но лучше не рисковать.К примеру я узнал о своих форматах в характеристиках монитора:
LG 29UM69G 29 " 1040
UB/UM (сверхширокие 21:9)
Экран:29 ", 2560x1080 (21:9)
Матрица:AH-IPS, отклик 5 мс
Функции: крепеж VESAПодключение:HDMI, DisplayPort, USB C
4. Далее создаем новый режим, он создается командой xrandr --newmode и добавляется строчка после modeline из предыдущей команды:
$ xrandr --newmode «2560x1080_60.00» 106.75 2560 2640 2896 3232 1080 1083 1093 1102 -hsync +vsync
5. Задаем системе, созданный режим к нужному интерфейсу (в моём примере интерфейс HDMI-0):
$ xrandr --addmode HDMI-0 2560x1080_60.00
* Обратите внимание, что я использовал такую же строчку с разрешением и частотой, как после Modeline «2560x1080_60.00» — также рекомедую прописать разрешение и частоту кадров.
6. Устанавливаем созданное нами разрешение:
$ xrandr --output HDMI-0 --mode 2560x1080_60.00
* Добавленный новый режим разрешения экрана, сохранится до тех пор, пока не будет перезагружен компьютер.
Для автоматического изменения разрешения экрана, нужно создать скрипт .sh с вашими командами. Если у вас все получилось, скопируйте из терминала ранее введенные вами команды в блокнот и создайте исполняемый скрипт, сохранив его на рабочем столе.
После каждой перезагрузки можно открывать этот файл и разрешение экрана автоматически изменится. Либо добавить скрипт в автозагрузку.
У меня получились вот такие команды и готовый для моего железа скрипт, (у вас будет скорее всего отличаться, потому что ваша видеокарта может быть с другими параметрами, видеовыход другой):
#!/bin/bash
cvt 2560 1080 60
xrandr --newmode «2560x1080_60.00» 106.75 2560 2640 2896 3232 1080 1083 1093 1102 -hsync +vsync
xrandr --addmode HDMI-0 2560x1080_60.00
xrandr --output HDMI-0 --mode 2560x1080_60.00
После чего, я добавил скрипт в автозагрузку программ, для автоматического изменения разрешения экрана, после перезагрузки компьютера.
Создание скрипта:
1. Создать скрипт sh просто. Открываем блокнот, В самом начале, верхняя строчка, написать #!/bin/bash. Далее, вписываем наши команды, без ошибок. Сохраняете изменения и даете название файлу, ставите точку и две буквы sh — в свойствах блокнота в закладке «Права» указать, что файл является исполняемым.
я к примеру свой скрипт, назвал: 2560x1080_60.sh
Что бы разрешение менялось автоматически при загрузки ОС, необходимо сохранить этот файл в системную папку /bin и добавить в автозагрузку.
Что бы сохранить файл в папку /bin нужно через терминал открыть менеджер файлов с рут правами, через sudo:
$ sudo dolphin
Вы откроете менеджер файлов (программ) с правами рут, у всех разный менеджер файлов есть nemo, у кого-то nautilus и др..
В менеджере файлов, просто, копируем ваш созданный файл name.sh в /bin, меняем свойства name.sh файла для исполняемой программы А также меняете владелец:root / доступ: только чтение / группа: root / доступ: только чтение / остальные — / доступ только чтение / Выполнение: ставим галочку — Разрешить выполнение файла как программы.
Далее находим в системе утилиту автозагрузки, автозапуска в настройках системы или еще где, добавьте в автозагрузку этот файл name.sh который скопировали в /bin
перезагружаем компьютер и проверяем.
* у меня терминал упорно не давал право, открыть менеджер файлов через sudo, пришлось установить nautilus и набрать:
$ sudo nautilus
после чего я спокойно смог, скопировать свой скрипт в папку /bin.
Я описал практический метод и мною не раз проверенный метод на Ubuntu, Arch, ArcoLinux,LinuxMint и др.. по замечанию умного форуммена Pushsla :)
Вы можете обратиться r углубленной инструкции к Wiki XRANDR — это официальная программа настройки оконной системы
У меня широкоформатный монитор 29 дюймов, и все линукс системы не могут, автоматически, настроить широкоформатный монитор под мой масштаб экрана, кроме того в настройках системы, настройки экрана в списке выбора разрешения нет моего широкоформатного разрешения. А не использованные, оставшиеся, не задействованные дюймы монитора, меня не устраивали.
***Предупреждаю! Если вдруг, вы переключили режим через терминал и у вас монитор перестал вообще что либо отображать, то тогда спокойно наберите на клавиатуре reboot и перезагрузите компьютер. Проверьте все команды, если все правильно, то создавайте скрипт. Но не добавляйте пока в автозагрузку. После проверьте скрипт, перезагрузите компьютер и снова проверьте скрипт и изменения масштаба экрана.
1. Открываем терминал. Узнаем список видеовыходов и поддерживаемых разрешений для каждого видеовыхода, командой:
$ xrandr
* Названия интерфейсов могут отличаться, в зависимости, от используемой видеокарты. Для последующей работы с конкретным интерфейсом, необходимо, запомнить его название (например, VGA если вы работаете на видео от Intel, команда для видео выхода, нужного разрешения, будет для этого интерфейса VGA). в моём случае это HDMI-0.
2. Чтобы установить любое из этих разрешений, выполняется следующая команда:
$ xrandr --output HDMI-0 --mode 1920x1080
* необходимое и доступное разрешение, выбирайте из списка, которая отобразится после ввода команды xrandr. Это разрешение прописываете в --mode, к примеру я выбрал 1920x1080.
3. В моем случае, моего разрешения в списке xrandr не оказалось. А значит его нужно и можно создать. Добавляем новое для системы разрешение экрана, для этого, воспользуемся утилитой CVT (Coordinated Video Timing) в параметр ей, добавим необходимое нам разрешение и частоту кадров.
$ cvt 2560 1080 60
* после чего вы увидите вывод команды:# 2560x1080 59.98 Hz (CVT) hsync: 67.17 kHz; pclk: 230.00 MHz
Modeline «2560x1080_60.00» 230.00 2560 2720 2992 3424 1080 1083 1093 1120 -hsync +vsync
* Нам нужна строка, которая находится после слова «Modeline».
*Внимание! Вначале всех действий, вам необходимо знать точные (правильные) форматы разрешения для правильного соотношения сторон экрана. Хотя можно и методом тыка перебрать!) Но лучше не рисковать.К примеру я узнал о своих форматах в характеристиках монитора:
LG 29UM69G 29 " 1040
UB/UM (сверхширокие 21:9)
Экран:29 ", 2560x1080 (21:9)
Матрица:AH-IPS, отклик 5 мс
Функции: крепеж VESAПодключение:HDMI, DisplayPort, USB C
4. Далее создаем новый режим, он создается командой xrandr --newmode и добавляется строчка после modeline из предыдущей команды:
$ xrandr --newmode «2560x1080_60.00» 106.75 2560 2640 2896 3232 1080 1083 1093 1102 -hsync +vsync
5. Задаем системе, созданный режим к нужному интерфейсу (в моём примере интерфейс HDMI-0):
$ xrandr --addmode HDMI-0 2560x1080_60.00
* Обратите внимание, что я использовал такую же строчку с разрешением и частотой, как после Modeline «2560x1080_60.00» — также рекомедую прописать разрешение и частоту кадров.
6. Устанавливаем созданное нами разрешение:
$ xrandr --output HDMI-0 --mode 2560x1080_60.00
* Добавленный новый режим разрешения экрана, сохранится до тех пор, пока не будет перезагружен компьютер.
Для автоматического изменения разрешения экрана, нужно создать скрипт .sh с вашими командами. Если у вас все получилось, скопируйте из терминала ранее введенные вами команды в блокнот и создайте исполняемый скрипт, сохранив его на рабочем столе.
После каждой перезагрузки можно открывать этот файл и разрешение экрана автоматически изменится. Либо добавить скрипт в автозагрузку.
У меня получились вот такие команды и готовый для моего железа скрипт, (у вас будет скорее всего отличаться, потому что ваша видеокарта может быть с другими параметрами, видеовыход другой):
#!/bin/bash
cvt 2560 1080 60
xrandr --newmode «2560x1080_60.00» 106.75 2560 2640 2896 3232 1080 1083 1093 1102 -hsync +vsync
xrandr --addmode HDMI-0 2560x1080_60.00
xrandr --output HDMI-0 --mode 2560x1080_60.00
После чего, я добавил скрипт в автозагрузку программ, для автоматического изменения разрешения экрана, после перезагрузки компьютера.
Создание скрипта:
1. Создать скрипт sh просто. Открываем блокнот, В самом начале, верхняя строчка, написать #!/bin/bash. Далее, вписываем наши команды, без ошибок. Сохраняете изменения и даете название файлу, ставите точку и две буквы sh — в свойствах блокнота в закладке «Права» указать, что файл является исполняемым.
я к примеру свой скрипт, назвал: 2560x1080_60.sh
Что бы разрешение менялось автоматически при загрузки ОС, необходимо сохранить этот файл в системную папку /bin и добавить в автозагрузку.
Что бы сохранить файл в папку /bin нужно через терминал открыть менеджер файлов с рут правами, через sudo:
$ sudo dolphin
Вы откроете менеджер файлов (программ) с правами рут, у всех разный менеджер файлов есть nemo, у кого-то nautilus и др..
В менеджере файлов, просто, копируем ваш созданный файл name.sh в /bin, меняем свойства name.sh файла для исполняемой программы А также меняете владелец:root / доступ: только чтение / группа: root / доступ: только чтение / остальные — / доступ только чтение / Выполнение: ставим галочку — Разрешить выполнение файла как программы.
Далее находим в системе утилиту автозагрузки, автозапуска в настройках системы или еще где, добавьте в автозагрузку этот файл name.sh который скопировали в /bin
перезагружаем компьютер и проверяем.
* у меня терминал упорно не давал право, открыть менеджер файлов через sudo, пришлось установить nautilus и набрать:
$ sudo nautilus
после чего я спокойно смог, скопировать свой скрипт в папку /bin.
Я описал практический метод и мною не раз проверенный метод на Ubuntu, Arch, ArcoLinux,LinuxMint и др.. по замечанию умного форуммена Pushsla :)
Вы можете обратиться r углубленной инструкции к Wiki XRANDR — это официальная программа настройки оконной системы
7 комментариев
Не ребяяят… ну серьезно…
Финт ушами: поскольку гуевые программы, запущенные от root, используют тему оформления пользователся root, можно выставить для суперпользователя цветовую схему, явно отличную от стандартной. В терминале же стандартное приглашение командной строки все явно указывает.
Что значит «права закрываются»? В общем случае порождаемый процесс наследует права родителя. Если процесс выполняется не в фоновом режиме, то будет завершен вместе с родителем.