XRandR: настройка режимов работы с дисплеями (мониторами) в GNU/Linux


Дата добавления: 31 марта 2012

XRandR — расширение X сервера, позволяющее производить настройки режимов работы мониторов. Например, можно изменить разрешение, вывести изображение на внешний монитор, повернуть изображение и тому подобное. Утилита часто полезна для настройки корректного разрешения при подключении к внешнему монитору или телевизору.




Вывод доступных мониторов и режимов
Введя в терминале
xrandr
, мы увидим список интерфейсов по которым могут быть подключены мониторы и доступные режимы работы монитора (разрешение и частота смена кадров в герцах).
Пример вывода:
Screen 0: minimum 320 x 200, current 1024 x 600, maximum 4096 x 4096
LVDS1 connected 1024x600+0+0 (normal left inverted right x axis y axis) 223mm x 125mm
1024x600 60.0*+
800x600 60.3 56.2
640x480 59.9
VGA1 disconnected (normal left inverted right x axis y axis)

Возможные названия интерфейсов:

  • LVDS1 — экран ноутбука;

  • VGA1 — экран, подключаемый через VGA;

  • DVI1 — экран, подключаемый через DVI;


Названия интерфейсов могут отличаться в зависимости от используемой видеокарты. Для последующей работы с конкретным интерфейсом, необходимо запомнить его название (например, VGA1 если мы работам на видео от Intel и подключаем монитор по VGA, который и хотим настроить через XRandR).

Изменение разрешения
Лучше всего рассмотреть пример:
xrandr --output LVDS1 --mode 800x600

Опция --output предназначена для указания на нужный интерфейс, а --mode собственно на выбираемый режим работы. Обратите внимание, что выбираемый режим должен быть указан в выводе команды
xrandr
(смотреть предыдущий раздел статьи).
Если нужный вам режим не прописан, то необходимо добавить его вручную. Это позволяет настроить монитор на правильное разрешение, при ситуации, когда в списке оно отсутствует (например, если при подключении 1080p монитора в программах настройки экрана доступно лишь намного меньшее разрешение). Данная проблема связана с тем, что некоторые мониторы и множество телевизоров почему-то не считают нужным передавать информацию о своём разрешении при подключении через VGA.
Создание нового режима
Если режим уже существует (смотреть первую часть статьи), но не связан с нужным интерфейсом, то можно добавить режим таким образом:
xrandr --addmode VGA1 1024x600
— добавляем режим с разрешением 1024x600 и 60 Гц частотой для монитора, подключённого по VGA1.
Если режима ещё не существует, то сначала вызываем утилиту CVT (Coordinated Video Timing) с необходимым разрешением и частотой кадров в качестве параметров (в качестве примера добавим режим 1600x900 при 60Гц):
cvt 1600 900 60

Вывод утилиты cvt с нашими параметрами таков:
# 1600x900 59.95 Hz (CVT 1.44M9) hsync: 55.99 kHz; pclk: 118.25 MHz
Modeline "1600x900_60.00" 118.25 1600 1696 1856 2112 900 903 908 934 -hsync +vsync

Далее мы скопируем всё, что после Modeline при вызове xrandr с ключём создания нового режима:
xrandr --newmode "1600x900_60.00" 118.25 1600 1696 1856 2112 900 903 908 934 -hsync +vsync

Теперь осталось "привязать" созданный режим к нужному интерфейсу (в нашем примере к VGA1):
xrandr --addmode VGA1 1600x900_60.00

Наконец, мы можем выбрать нужное нам разрешение для монитора:
xrandr --output VGA1 --mode 1600x900_60.00


Режимы работы с несколькими мониторами
Отключение дисплея
Отключить не нужный в данный момент дисплей можно с помощью опции --off:
xrandr --output LVDS1 --off
— отключаем монитор ноутбука.
Расположение мониторов относительно друг-друга
xrandr --output VGA1 --right-of LVDS1
— монитор, подключённый по VGA1 будет располагаться "справа" от монитора ноутбука (переходить на внешний монитор необходимо будет через правый угол монитора ноутбука).
Аналогично используется опция --left-of
xrandr --output LVDS1 --primary
— монитор ноутбука становится основным.
Чтобы сделать виртуальный экран большего разрешения, чем физический (в таком режиме, чтобы увидеть всё изображение необходимо будет передвигать курсор за границы) применяем команду:
xrandr --output LVDS1 --mode 1024x600 --fb 1280x720 --panning 1280x720

После этого у вас будет виртуальное разрешение 1280x720 при 1024x600 физическом.

Поворот
Используйте следующие опции применительно к нужному интерфейсу:

  • --rotate normal

  • --rotate left

  • --rotate right

  • --rotate inverted (поворот на 180°)



Сохранение настроек
Для активации необходимых настроек при старте, создайте файл ~/.xprofile (~/ указывает на расположение в домашней директории) и внесите в него необходимые строки команд xrandr.

Статья частично основана по материалам англоязычной документации.

Комментарии:
Автор: Боливия,   дата: 23 августа 2016 ,  время: 12:58:40 (MSK).
Спасибо!
Мне помогло!
Разрешение добавилось и моник заработал. Не знаю как после ребута взлетят новые сохранённые настройки, но сейчас всё заработало)
Автор: bu,   дата: 05 марта 2017 ,  время: 00:37:18 (MSK).
ффууух.респектище огромный.еле пофиксил
Автор: Виталий,   дата: 09 марта 2017 ,  время: 21:36:51 (MSK).
#!/bin/sh

xrandr --newmode "1680x1050_60.00" 146.25 1680 1784 1960 2240 1050 1053 1059 1089 -hsync +vsync
xrandr --newmode "1440x900_60.00" 106.50 1440 1528 1672 1904 900 903 909 934 -hsync +vsync
xrandr --newmode "1360x1024_60.00" 115.00 1360 1448 1584 1808 1024 1027 1037 1063 -hsync +vsync
xrandr --newmode "1360x768_60.00" 84.75 1360 1432 1568 1776 768 771 781 798 -hsync +vsync
xrandr --newmode "1152x864_60.00" 81.75 1152 1216 1336 1520 864 867 871 897 -hsync +vsync
xrandr --newmode "1280x1024_60.00" 109.00 1280 1368 1496 1712 1024 1027 1034 1063 -hsync +vsync

xrandr --addmode VGA-0 1680x1050_60.00
xrandr --addmode VGA-0 1440x900_60.00
xrandr --addmode VGA-0 1360x1024_60.00
xrandr --addmode VGA-0 1360x768_60.00
xrandr --addmode VGA-0 1152x864_60.00
xrandr --addmode VGA-0 1280x1024_60.00

xrandr --output VGA-0 --mode 1360x768_60.00

есть у меня такой вот скрипт, в принципе со своей задачей справляется, однако при старте загоняет монитор в режим 1680x1050_60.00 не смотря на то что я указал 1360x768_60.00
В принципе это не проблема изменить разрешение теперь можно из "Все параметры -> настройка экранов", но вот теперь при выборе режима 1360x768_60.00 мои шрифты как то выглядят бито "моноширно" что ли, да и сглаживание не в какие ворота. Это лечится? или это норма для монитора 22" с возможным разрешением 1900х1050?
Автор: Дима,   дата: 22 апреля 2017 ,  время: 15:53:38 (MSK).
А как сделать смещение и масштабирование изображения? Телевизор Toshiba , при 1920х1080 не помещается картинка на экране, левая панель с кнопками еле выглядывает, а верхней статусной вообще не видно. Переключившись в 1600х1200 все хорошо.
Автор: Дима,   дата: 22 апреля 2017 ,  время: 15:57:26 (MSK).
А как посмотреть вот эти параметры передаваемые в newmode для режима по умолчанию? Добавил режим 1600х900, видно в нем все ок, но очень ярко. Хочу сделать яркость как в автоопределившемся режиме
Автор: Олег,   дата: 03 декабря 2017 ,  время: 00:13:45 (MSK).
Спасибо люди добрые за статью, искал этого долго
Автор: Олег,   дата: 26 января 2018 ,  время: 17:13:14 (MSK).
Добрый день .
Помогите пожалуйста.
Я хочу настроить работу с 3 мониторами
2 от видео карты + 1 от матери VGA1
Но работают только 2 от Видео
Хотя при загрузке что то показывают все три
Автор: Олег,   дата: 26 января 2018 ,  время: 17:15:31 (MSK).
Вот что говорит xrandr

oleg@oleg-G31M-ES2L:~$ xrandr
Screen 0: minimum 320 x 200, current 4320 x 900, maximum 8192 x 8192
DVI-I-1 connected 1440x900+0+0 (normal left inverted right x axis y axis) 428mm x 255mm
1440x900 59.9*+ 75.0
1280x1024 75.0 60.0
1280x960 60.0
1152x864 75.0
1024x768 75.1 70.1 60.0
832x624 74.6
800x600 72.2 75.0 60.3 56.2
640x480 75.0 72.8 66.7 60.0
720x400 70.1
DVI-I-2 connected primary 1440x900+1440+0 (normal left inverted right x axis y axis) 428mm x 255mm
1440x900 59.9*+ 75.0
1280x1024 75.0 60.0
1280x960 60.0
1152x864 75.0
1024x768 75.1 70.1 60.0
832x624 74.6
800x600 72.2 75.0 60.3 56.2
640x480 75.0 72.8 66.7 60.0
720x400 70.1
VGA1 connected 1440x900+2880+0 410mm x 257mm
1440x900 59.9*+ 75.0
1280x1024 75.0 60.0
1280x960 60.0
1152x864 75.0
1024x768 75.1 70.1 60.0
832x624 74.6
800x600 72.2 75.0 60.3 56.2
640x480 75.0 72.8 66.7 60.0
720x400 70.1
VIRTUAL1 disconnected
1440x900 (0x45) 106.5MHz
h: width 1440 start 1520 end 1672 total 1904 skew 0 clock 55.9KHz
v: height 900 start 903 end 909 total 934 clock 59.9Hz
1280x1024 (0x46) 135.0MHz
Автор: Олег,   дата: 26 января 2018 ,  время: 17:16:25 (MSK).
Все разрешения определены правильно
Автор: Олег,   дата: 07 февраля 2018 ,  время: 18:25:19 (MSK).
сегодня само по себе заработало 3 монитора. Отработало почти весь день. После перезагрузки опять работает только 2 монитора.
Автор: Алексей,   дата: 12 февраля 2018 ,  время: 17:50:32 (MSK).
Спасибо, благодарен Вам! Всё получилось!
Автор: Александр,   дата: 22 марта 2018 ,  время: 17:49:48 (MSK).
Добрый день/вечер, имеется raspberry pi 3b, сплиттер hdmi и 3 тв. и вот появилось желание настроить работу ос, так что бы изображение масштабировалось стразу на все тв. есть ли такая возможность ?
Автор: Александр,   дата: 23 марта 2018 ,  время: 12:23:53 (MSK).
Добрый день!) тут явно кто то руку уже набил и (голову наверняка). имеется raspberry 3b, hdmi сплиттер и три одинаковые ТВ панели. И вот возникла идея подключить его так что бы все три ТВ отображали разный контент... реализацию представляю так... попробовать разрешение которое они поддерживают помножить на 3 и настроить вывод изображения (то есть вся рабочая область растянется на все тв) возможно ли это осуществить с этой утилитой
Автор: Влад,   дата: 30 ноября 2018 ,  время: 06:21:19 (MSK).
Сделал как нужно, но оболочка не заполняет полностью экран. Как можно это исправить?
1600х1200_60.00 с правой стороны четверть экрана черная.
Экран на 1920x1080 но если это ставить то оболочка выходит в середине монитора.
Автор: Влад,   дата: 30 ноября 2018 ,  время: 06:33:38 (MSK).
Вообщем я решил свою проблемк с 1920x1080

cvt 1920 1080 -r -v

xrandr --newmode "1920x1080R" 138.50 1920 1968 2000 2080 1080 1083 1088 1111 +hsync -vsync

xrandr --addmode DVI-1 1920x1080R
xrandr --output DVI-1 --mode 1920x1080R
экран залился полностью как нужно.
Автор: Сергей С.,   дата: 09 марта 2019 ,  время: 21:38:10 (MSK).
Спасибо!
Очень внятно и полезно.
Автор: Dmitry,   дата: 13 сентября 2019 ,  время: 10:29:09 (MSK).
Как то год назад принесли б/у монитор с бОльшим разрешением, чем были у меня до этого. Нужного разрешения в списке не оказалось. Решил поиграться с этой утилитой. По ошибке указал разрешение, которое данный монитор не поддерживает. Запустил. Монитор помигал. Щелчок... Из монитора вышла струйка дыма... Я не знаю, был ли монитор изначально обречён или всё таки мне удалось его сжечь таким способом. После этого не было возможности поэкспериментировать... мониторы кончились :)))
Автор: Михельсон,   дата: 03 января 2020 ,  время: 06:32:58 (MSK).
Огромное спасибо. ТОЛЬКО ВАША СТАТЕЙКА позволила мне просто и изящно подключить внешний монитор. Уже отчаялся и собрался сдавать его обратно. Еще раз спасибо.
(Поправки: вместо VGA1 и LVDS1 надо набирать VGA-1 и LVDS-1. По кр. мере моя система так их называет.)
Автор: Sawa27,   дата: 16 июня 2020 ,  время: 16:08:05 (MSK).
Здравствуйте! Бьюсь над проблемой и нигде не могу найти решения. Есть ноет с видеовыходом s-video и телевизор (ЭЛТ) с таким же входом. Изображение на телек не выводится. Xrandr пишет - TV1 (это s-video) unknown connection. Что это означает? И как вывести изображение на телевизор?
Автор: Александр,   дата: 22 апреля 2021 ,  время: 00:47:07 (MSK).
user@ubuntu:~@ xrande
can't open display

что делать как попровить
Автор: Roman,   дата: 11 июля 2021 ,  время: 00:13:45 (MSK).
Всем привет! При randr выдаёт Can't open display. Как же тогда изменить разрешение? Заранее огромное спасибо!
Автор: Рамазан,   дата: 08 августа 2021 ,  время: 04:40:16 (MSK).
Здравствуйте! Не подскажите почему после выхода из системы или же после перезагрузки возвращаются старые Настройки.
Как сохранить установленные Настройки.
Спасибо.
Автор: Виктор,   дата: 16 октября 2021 ,  время: 03:01:20 (MSK).
У меня второй монитор выключается через несколько сек после подключения. вбил cvt, он выдал мне строчку.
сделал по инструкции с этой строчкой, все равно не работает моник. Совершенно непонятно, с каким моником запустился cvt, их же два.
В любом случае, эта настройка не работает. Посоветуйте дальнейшие шаги

1280x1024 59.89 Hz (CVT 1.31M4) hsync: 63.67 kHz; pclk: 109.00 MHz
Modeline "1280x1024_60.00" 109.00 1280 1368 1496 1712 1024 1027 1034 1063 -hsync +vsync

Нашел инфу по монитору:
https://www.lcd-compare.com/moniteur-BEL1705S1-BELINEA-1705-S1.htm
Вроде все правильно, даже стандартные настройки должны работать
Автор: Zingler,   дата: 01 ноября 2021 ,  время: 09:12:21 (MSK).
Screen 0: minimum 1 x 1, current 800 x 600, maximum 16384 x 16384
Virtual1 connected primary 800x600+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
800x600 60.00*+ 60.32
3840x2400 59.97
3840x2160 59.97
2880x1800 59.95
2560x1600 59.99
2560x1440 59.95
1920x1440 60.00
1856x1392 60.00
1792x1344 60.00
1920x1200 59.88
1920x1080 59.96
1600x1200 60.00
1680x1050 59.95
1400x1050 59.98
1280x1024 60.02
1440x900 59.89
1280x960 60.00
1360x768 60.02
1280x800 59.81
1152x864 75.00
1280x768 59.87
1280x720 59.86
1024x768 60.00
640x480 59.94
Virtual2 disconnected (normal left inverted right x axis y axis)
Virtual3 disconnected (normal left inverted right x axis y axis)
Virtual4 disconnected (normal left inverted right x axis y axis)
Virtual5 disconnected (normal left inverted right x axis y axis)
Virtual6 disconnected (normal left inverted right x axis y axis)
Virtual7 disconnected (normal left inverted right x axis y axis)
Virtual8 disconnected (normal left inverted right x axis y axis)
Автор: andrew,   дата: 25 мая 2023 ,  время: 05:10:39 (MSK).
[root@A0708 Admin]# xrandr
Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 8192 x 8192
VGA-1 connected (normal left inverted right x axis y axis)
1024x768 60.00
800x600 60.32 56.25
848x480 60.00
640x480 59.94
HDMI-1 disconnected (normal left inverted right x axis y axis)
DP-1 disconnected (normal left inverted right x axis y axis)
HDMI-2 disconnected (normal left inverted right x axis y axis)
HDMI-3 disconnected (normal left inverted right x axis y axis)
DP-2 disconnected (normal left inverted right x axis y axis)
DP-3 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 521mm x 293mm
1920x1080 60.08*+ 50.06
[root@A0708 Admin]# xrandr --delmonitor VGA-1
No monitor named 'VGA-1'
[root@A0708 Admin]#
Автор: Paolo,   дата: 23 сентября 2023 ,  время: 06:15:14 (MSK).
Самая внятная инструкция для настройки разрешения экрана.
Сделал на своем raspberry pi, ОС Raspbian, подставив свои значения и порт вывода видео.
Респект автору. Сайт в закладки.
Страницы:
<< < 1 | 2



 
🖊 Добавить комментарий:
Ваше имя: *
Комментарий: *
Введите число 80: *


Архив статей:
Ноябрь 2018
Октябрь 2018
Май 2017
Март 2017
Апрель 2016
Март 2016
Октябрь 2013
Сентябрь 2013
Май 2013
Март 2013
Ноябрь 2012
Июль 2012
Июнь 2012
Апрель 2012
Март 2012
Февраль 2012
Апрель 2011
Март 2011
Февраль 2011
Январь 2011
Декабрь 2010
Ноябрь 2010
Октябрь 2010
Сентябрь 2010
Август 2010
Июль 2010
Июнь 2010
Май 2010
Апрель 2010
Март 2010

Случайные:
Поиск через консоль.

Синхронизация iPod с linux

Зверополис (Zootopia) — милый кадр (тестовый пост)

Возврат денег за OEM версии Windows

Виртуальный планетарий Stellarium: обзор новых возможностей

Игры в Linux. Эмуляторы консолей Nintendo.

https://prosakh.ru туристический комплекс голубые озера.

Коллеги:    все
 Linux для всех

Наши баннеры:
linuxnow.ru
linuxnow.ru
Установить баннер