xrandr Мониторы/разрешения

Тут описываются некоторые хитрые и, не очень, манипуляции с множественными мониторами/разрешениями используя утилиту xrandr.

Оригинал находится по адресу http://www.thinkwiki.org/wiki/Xorg_RandR_1.2 тут же только некоторые выдержки и примеры не претендующие на полноту.

Для запроса текущих подключений и возможных разрешений оборудования используется:

xrandr -q

Для клонирования содержимого между различными устройствами:

xrandr --output LVDS --auto --output VGA --auto --same-as LVDS

Выключить устройство:

xrandr --output VGA --off

Включить соответствующее устройство с указанием местоположения:

xrandr --output VGA --auto --right-of LVDS

Для дальнейших действий понадобятся следующие модификации в конфигурационных файлах Xorg (/etc/X11/xorg.conf):

Пример приведенный ниже - это полная конфигурация конкретного случая.

Section "Screen"
Identifier "Screen0"
Device "Card0"
Monitor "Monitor0"
DefaultDepth 24
SubSection "Display"
Viewport 0 0
Depth 24
+++ Virtual 3200 1080
EndSubSection
EndSection

(+++) Отмечена строка к-я рассчитывается исходя из будущего размера виртуального стола.

Дальнейший пример конфигурации будет показан на примере 2-х мониторов с разрешением 1-го 1920×1080 и 2-го 1280×1024.

$ xrandr -q
Screen 0: minimum 320 x 200, current 3200 x 1080, maximum 3200 x 1080
DVI-1 connected 1280x1024+1920+0 (normal left inverted right x axis y axis) 376mm x 301mm
1280x1024 60.0*+ 75.0
1152x864 75.0
1024x768 75.0 70.1 60.0
832x624 74.6
800x600 72.2 75.0 60.3 56.2
640x480 75.0 72.8 66.7 59.9
720x400 70.1
DVI-0 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 531mm x 299mm
1920x1080 59.9*+ 60.0
1680x1050 59.9
1280x1024 75.0 60.0
1280x960 60.0
1152x864 75.0
1024x768 75.0 60.0
832x624 74.6
800x600 75.0 60.3 56.2
640x480 75.0 59.9
720x400 70.1

При этом монитор DVI-1 находится справа от монитора DVI-0.

1. Коррекция xorg.conf:

Virtual 3200 1080

горизонтальный размер 1-го + горизонтальный размер 2-го, по вертикале самое большее разрешение. 1920+1280=3200 вертикаль избирается 1080 по самому большему.

2. Настройка разрешений и положений после загрузки сервера.

/usr/bin/xrandr --output DVI-1 --auto --right-of DVI-0
/usr/bin/xrandr --output DVI-1 --mode 1280x1024 --pos 1920x0 --output DVI-0 --mode 1920x1080 --pos 0x0

3. Которые нужно внести в стартовый скрипт.

для KDM под Slackware файл /etc/kde/kdm/Xsetup.

(Этот файл выполняется при иннициализации X-сервера пред запросом логина).

Дополнения

Если мониторы одинаковые то данные о разрешениях можно опустить(–mode).

To Do:

1. Описать как можно управлять конфигурацией средствами xorg.conf

2. Данная методика не подходит к восстановлению после перехода в полноэкранный режим игрушки. Теряется второй экран….