2.8.1.5 Настройка режимов работы мониторов с помощью XRandR
Добавление нового разрешения экрана
Работа с несколькими мониторами
Настройка положения монитора
Настройка виртуального разрешения
Поворот изображения
Отключение монитора
Добавление нового разрешения экрана
В некоторых случаях, связанных с поддержкой или особенностями оборудования, при подключении монитора необходимое разрешение отсутствует. Для решения подобных проблем можно воспользоваться XrandR.
RandR (resize and rotate) — расширение протокола X11, позволяющее динамически изменять размер, поворот и отражение экрана. Оно позволяет пользователям изменять настройки экрана без перезапуска X-сервера.
Xrandr — утилита командной строки, которая предназначена для настройки отображения посредством взаимодействия с расширением RandR.
Проверка необходимого разрешения
Перед установкой необходимого разрешения в качестве постоянного следует проверить возможность и корректность его работы. Все команды выполняются от текущего пользователя без повышения привилегий.
1. Определить текущее имя разрешения экрана (в примере «1280x768»):
xrandr | grep '*'
1280x768 59.87* 59.99
2. Получить новую строку параметров для требуемого разрешения (в примере «1920x1080 60Гц»):
gtf 1920 1080 60
# 1920x1080 @ 60.00 Hz (GTF) hsync: 67.08 kHz; pclk: 172.80 MHz Modeline "1920x1080_60.00" 172.80 1920 2040 2248 2576 1080 1081 1084 1118 -HSync +Vsync
3. Создать новое разрешение в RandR, скопировав вывод предыдущего пункта после "Modeline" :
xrandr --newmode "1920x1080_60.00" 172.80 1920 2040 2248 2576 1080 1081 1084 1118 -HSync +Vsync
Здесь "1920x1080_60.00" — это имя разрешения, которое в дальнейшем используется при работе с xrandr .
4. Определить имя монитора в системе RandR и добавить новое разрешение:
xrandr --listmonitors
0: +*HDMI-1 1280/339x768/203+0+0 HDMI-1 xrandr --addmode HDMI-1 "1920x1080_60.00"
5. Запустить изменение разрешения монитора с возвратом к текущему заведомо работающему разрешению через 5 секунд:
xrandr --output HDMI-1 --mode "1920x1080_60.00" && sleep 5 && xrandr --output HDMI-1 --mode "1280x768"
При запуске произойдёт переключение монитора в новый режим. Если оно привело к исчезновению или неприемлемому искажению изображения, необходимо не предпринимать никаких действий в течении 5 секунд — разрешение будет восстановлено.
Настройка нового разрешения для постоянного использования
Для установки требуемого разрешения экрана в РЕД ОС для постоянного использования необходимо выполнить несколько шагов, описанных ниже.
Для выполнения действий данного раздела требуется перейти в сеанс root. Для этого выполните команду от имени пользователя, состоящего в группе wheel, и введите его пароль:
sudo -i
1. Создать новый файл конфигурации в подкаталоге /etc/X11/xorg.conf.d/. Например:
nano /etc/X11/xorg.conf.d/10-resolution.conf
2. Скопировать в него следующее содержимое:
Section "Device"
Identifier "Configured Video Device"
EndSection
Section "Monitor"
Identifier "Configured Monitor"
EndSection
Section "Screen"
Identifier "Default Screen"
Monitor "Configured Monitor"
Device "Configured Video Device"
EndSection
Сохранить содержимое и закрыть файл последовательным нажатием сочетаний клавиш «Ctrl+O», «Ctrl+X».
3. Выполнить следующие команды для дополнения созданного конфигурационного файла требуемым разрешением (в примере разрешение «1920x1080 60Гц»):
NEWMODE=$(gtf 1920 1080 60|grep -i modeline) sed -i '/Section "Monitor"/ a\'"$NEWMODE" /etc/X11/xorg.conf.d/10-resolution.conf
4. В большинстве случаев необходимо установить новое разрешение в окне входа в систему, а также для сессий пользователей в качестве разрешения по умолчанию. Для этого необходимо вновь открыть конфигурационный файл /etc/X11/xorg.conf.d/10-resolution.conf и добавить опцию «PreferredMode» в секцию «Monitor». Значение параметра необходимо скопировать из первого параметра строки «Modeline».
Пример конечного варианта файла конфигурации X11:
Section "Device"
Identifier "Configured Video Device"
EndSection
Section "Monitor"
Modeline "1920x1080_60.00" 172.80 1920 2040 2248 2576 1080 1081 1084 1118 -HSync +Vsync
Identifier "Configured Monitor"
Option "PreferredMode" "1920x1080_60.00"
EndSection
Section "Screen"
Identifier "Default Screen"
Monitor "Configured Monitor"
Device "Configured Video Device"
EndSection
Сохранить содержимое и закрыть файл последовательным нажатием сочетаний клавиш «Ctrl+O», «Ctrl+X».
5. Перезагрузить ОС.
6. Войти в сеанс пользователя и проверить наличие нового разрешения, открыв «Главное меню» — «Центр управления» — «Экраны».
Работа с несколькими мониторами
Для отображения списка интерфейсов, по которым могут быть подключены мониторы, а также доступных режимов работы монитора (разрешение и частота обновления в герцах) выполните команду:
xrandr Screen 0: minimum 320 x 200, current 3840 x 1080, maximum 16384 x 16384 VGA-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 527mm x 296mm 1920x1080 60.00*+ 1680x1050 59.95 1280x1024 75.02 60.02 1440x900 59.89 1280x960 60.00 1280x720 60.00 1024x768 75.03 70.07 60.00 832x624 74.55 800x600 72.19 75.00 60.32 56.25 640x480 75.00 72.81 66.67 59.94 720x400 70.08 DP-1 disconnected (normal left inverted right x axis y axis) HDMI-1 disconnected (normal left inverted right x axis y axis)
Вывод команды сообщает, что в данный момент монитор подключен к видеокарте по порту VGA-1, порты DP-1 и HDMI-1 отключены.
В случае, если РЕД ОС используется на ноутбуке, моноблоке или другом устройстве, имеющем встроенный дисплей, интерфейс может иметь название LVDS или DSI.
При подключении второго монитора система определит первый подключенный монитор как основной. Для изменения основного монитора необходимо выполнить команду вида:
xrandr --output <интерфейс> --primary
Например:
xrandr --output HDMI-1 --primary
Данная команда установит монитор, подключенный по HDMI-1, в качестве основного.
Настройка положения монитора
Также можно настроить положение мониторов относительно друг друга. Например, мониторы подключены к портам VGA-1 и HDMI-1. Необходимо монитор HDMI-1 расположить справа относительно монитора VGA-1. Для этого следует выполнить команду:
xrandr --output "HDMI-1" --right-of "VGA-1"
Аналогично можно использовать параметр --left-of.
Настройка виртуального разрешения
В случае, если необходимо сделать виртуальный экран большего разрешения, чем физический, используется команда:
xrandr --output <интерфейс> --mode 1920x1080 --fb 2560x1440 --panning 2560x1440
После использования данной команды размер виртуального разрешения будет установлен 2560x1440 пикселей при размере 1920x1080 пикселей физического.
Данный режим НЕ работает как DSR от Nvidia или Виртуальное сверхвысокое разрешение от AMD, и изображение не будет подстраиваться под реальное разрешение экрана, объекты вне границ экрана отображаться не будут.
Поворот изображения
Для поворота изображения на экране для нужного интерфейса используется параметр --rotate, где значения left и right поворачивают изображение в указанную сторону. Также можно использовать параметр inverted для поворота экрана на 180°.
Отключение монитора
Отключить ненужный в данный момент дисплей можно с помощью опции --off, например:
xrandr --output HDMI-1 --off
Дисплей, подключенный через порт HDMI-1, будет отключен.
Дата последнего изменения: 27.01.2025
Если вы нашли ошибку, пожалуйста, выделите текст и нажмите Ctrl+Enter.