Гид по технологиям

Как настроить два монитора с помощью XRandR в Linux

• 6 min read • Linux • Обновлено 26 Nov 2025
XRandR: настройка двух мониторов в Linux
XRandR: настройка двух мониторов в Linux

Два монитора и вывод xrandr

Содержание

  • Найти поддерживаемые разрешения дисплеев
  • Как читать вывод xrandr
  • Базовые команды XRandR для размещения и зеркалирования
  • Добавление нового режима (modeline)
  • Сохранение конфигурации навсегда
  • GUI: ARandR и средства окружений рабочего стола
  • Советы по отладке и распространённые ошибки
  • Когда XRandR не помогает и альтернативы
  • Методология быстрого устранения проблем
  • Чек-листы для пользователя и администратора
  • Краткий глоссарий

Найти поддерживаемые разрешения дисплеев

Сначала посмотрите, какие режимы (modes) доступны для подключённых дисплеев:

xrandr -q

Вывод xrandr с перечнем подключённых выходов

В выводе вы увидите список выходов (например HDMI-A-1, DP-1, VGA-1) и для каждого — таблицу режимов (разрешение × частота). Звёздочка (*) означает выбранный в настоящий момент режим. Знак плюс (+) указывает режим, который XRandR считает оптимальным.

Важно: префикс типа кабеля (HDMI, DP, VGA, DVI) в имени выхода помогает однозначно идентифицировать подключение.

Как читать вывод xrandr

  • Screen 0 — виртуальное «рабочее пространство», его размер равен сумме областей всех активных мониторов и их положений.
  • Выходы перечислены с текущим состоянием: connected или disconnected.
  • Под каждым выходом перечислены поддерживаемые разрешения и частоты.

Пример: если у HDMI-A-1 разрешение 1920×1080 и рядом стоит DP-1 с тем же разрешением, то Screen 0 может иметь ширину 3840×1080 при горизонтальном расширении.

Базовые команды XRandR для размещения и зеркалирования

Ниже — корректные примеры команд. Обратите внимание на пробелы между опциями — это важно.

  • Расширить два монитора горизонтально (DP-0 слева от DP-1):
xrandr --auto --output DP-0 --mode 1920x1080 --left-of DP-1
xrandr --auto --output DP-1 --mode 1920x1080
  • Расширить вертикально: замените –left-of на –above или –below.

  • Зеркалирование (DP-1 зеркалит DP-0):

xrandr --auto --output DP-1 --same-as DP-0
  • Установить частоту обновления (rate):
xrandr --auto --output DP-0 --mode 1920x1080 --rate 60
  • Выключить монитор:
xrandr --output DP-1 --off
  • Включить монитор и задать режим:
xrandr --auto --output DP-1 --mode 1920x1080

Важно: XRandR не может установить режим или частоту, которые не объявлены в таблице EDID дисплея или не были созданы вами через newmode/addmode.

Добавление нового режима (modeline)

Если нужного разрешения или частоты нет в выводе xrandr, создайте его через cvt или gtf и добавьте в XRandR:

# создаём модель для 1920x1080 при 75 Hz
cvt 1920 1080 75

# cvt выведет строку типа:
# Modeline "1920x1080_75.00"  220.75  1920 2056 2264 2608  1080 1083 1089 1120 -hsync +vsync

# добавляем новый режим в X
xrandr --newmode "1920x1080_75.00" 220.75 1920 2056 2264 2608 1080 1083 1089 1120 -hsync +vsync

# связываем режим с выходом DP-0
xrandr --addmode DP-0 "1920x1080_75.00"

# применяем режим
xrandr --output DP-0 --mode "1920x1080_75.00"

Примечание: используйте cvt для стандартных режимов; при редких EDID-ограничениях экспериментируйте осторожно — некорректные modeline могут приводить к нестабильной картинке.

Сохранение конфигурации навсегда

Если вы настроили мониторы вручную, эти настройки не сохранятся после перезагрузки по умолчанию. Ниже — несколько надёжных способов автоприменения при старте с примерами.

Важно: выбирайте один метод, иначе несколько автозапусков могут конфликтовать.

Скрипт в домашней папке

Создайте ~/monitorsetup.sh и сделайте исполняемым:

#!/bin/bash
xrandr --auto --output DP-0 --mode 1920x1080 --left-of DP-1
xrandr --auto --output DP-1 --mode 1920x1080
chmod a+x ~/monitorsetup.sh

Затем добавьте вызов этого скрипта в автозагрузку вашего окружения (GNOME: Startup Applications, KDE: Autostart, XFCE: Session and Startup), либо вызовите скрипт из ~/.xprofile или ~/.xinitrc.

Файл ~/.xprofile или ~/.xinitrc

Если вы входите в сессию через X (не Wayland), добавьте вызов скрипта в ~/.xprofile:

# в конце ~/.xprofile
~/monitorsetup.sh &

или поместите команды напрямую в ~/.xinitrc перед exec …

systemd user unit (удобно и надёжно)

Создайте сервис:

~/.config/systemd/user/monitorsetup.service

Содержимое:

[Unit]
Description=Apply XRandR monitor layout
After=graphical-session.target

[Service]
Type=oneshot
ExecStart=/home/USERNAME/monitorsetup.sh

[Install]
WantedBy=default.target

Замените USERNAME на своё имя. Затем включите и запустите:

systemctl --user daemon-reload
systemctl --user enable --now monitorsetup.service

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

Автозапуск через .desktop

Создайте файл ~/.config/autostart/monitorsetup.desktop:

[Desktop Entry]
Type=Application
Name=Monitorsetup
Exec=/home/USERNAME/monitorsetup.sh
X-GNOME-Autostart-enabled=true

Этот метод работает во многих окружениях рабочего стола.

GUI: ARandR и средства окружений рабочего стола

Большинство окружений (GNOME, KDE, XFCE) имеют встроенные средства настройки дисплеев. Если их нет или вы используете минималистичный менеджер окон, попробуйте ARandR — простую графическую оболочку для XRandR.

  • Установите пакет arandr через менеджер пакетов вашей дистрибуции.
  • Запустите arandr, расположите мониторы и сохраните конфигурацию: меню -> Save As -> shell script.

ARandR: визуальный редактор расположения экранов

ARandR генерирует корректные xrandr-команды и позволяет экспортировать shell-скрипт для автозапуска.

Советы по отладке и распространённые ошибки

  • «Requested mode not supported» — режим не поддерживается дисплеем. Проверьте вывод xrandr -q или создайте модель через cvt/gtf.
  • Проблемы с EDID — некоторые мониторы или док-станции передают некорректный EDID. Попробуйте использовать другой кабель или другой порт, обновите прошивку монитора/дока.
  • Окружение сбрасывает настройки — некоторые DE при запуске перезаписывают конфигурацию. В этом случае используйте systemd user unit с задержкой или вызывайте скрипт после загрузки сессии.
  • Несовместимость частот — вы не сможете поднять частоту выше, чем поддерживает самый медленный монитор, если DE/композитор ограничивает общую частоту.

Важно: если вы используете ноутбук с гибридной графикой (NVIDIA + Intel), иногда настройки XRandR могут конфликтовать с драйверами (особенно проприетарной NVIDIA). В таких случаях изучите документацию драйвера или рассмотрите использование nvidia-settings.

Когда XRandR не помогает и альтернативы

  • Wayland: XRandR работает только под X11. На Wayland настройка дисплеев зависит от compositor’а (GNOME Shell, KDE Plasma, Sway). Для Sway используется swaymsg/swayconfig; для GNOME — настройки дисплея в Shell.
  • Проприетарные драйверы: иногда лучше использовать утилиты производителя (nvidia-settings) для сложных конфигураций.

Методология быстрого устранения проблем

  1. Запустить xrandr -q и записать имена выходов и доступные режимы.
  2. Попробовать применить желаемый режим вручную через xrandr.
  3. Если режим недоступен — создать modeline через cvt и добавить его.
  4. Если команды работают вручную, сохранить их в скрипт и настроить автозапуск.
  5. Если поведение сбрасывается — проверить автозапуск DE и конфликтующие сервисы.
  6. В крайнем случае проверить драйверы и EDID (поменять кабель/порт).

Чек-листы

Чек-лист для обычного пользователя:

  • Выполнить xrandr -q и зафиксировать имена выходов.
  • Проверить доступные режимы и выбрать подходящие.
  • Применить xrandr-команды вручную и убедиться в работе.
  • Сохранить команды в ~/monitorsetup.sh и сделать исполняемым.
  • Добавить скрипт в автозагрузку через DE или systemd user unit.

Чек-лист для администратора/инженера поддержки:

  • Проверить вывод xrandr -q и EDID через dmesg или /var/log/Xorg.0.log.
  • При отсутствии режима — сгенерировать modeline через cvt.
  • Проверить конфликтующие автозапуски в DE и systemd.
  • Тестировать на другом кабеле/порту и обновить прошивки при необходимости.
  • Рассмотреть использование nvidia-settings или Wayland-средств при специфичных драйверах.

Когда и зачем переходить на Wayland

Wayland — современная альтернатива X11. У неё иной подход к управлению выводами: compositor определяет политики. При успешной миграции многие проблемы с XRandR исчезают, но перенос может требовать адаптации: новые инструменты, разные конфигурационные файлы и особенности драйверов.

Совет: тестируйте Wayland в отдельной сессии перед окончательным переходом.

Decision flowchart

flowchart TD
  A[Начать: проблема с дисплеем?] --> B{xто у вас: X11 или Wayland?}
  B -->|X11| C[xrandr -q]
  B -->|Wayland| D[Использовать compositor/DE средства]
  C --> E{Есть нужный режим?}
  E -->|Да| F[Применить xrandr и сохранить скрипт]
  E -->|Нет| G[Создать modeline через cvt и добавить через xrandr --newmode]
  G --> F
  F --> H[Настроить автозапуск: ~/.xprofile или systemd user]
  H --> I[Проверить при перезагрузке]

Короткий глоссарий

  • XRandR — утилита для динамической настройки экранов в X11.
  • Mode (режим) — комбинация разрешения и других параметров (частота и пр.).
  • EDID — данные, которые монитор сообщает системе о своих возможностях.
  • Modeline — строка с характеристиками видеорежима, создаваемая cvt/gtf.

Заключение

XRandR остаётся мощным и гибким инструментом для настройки нескольких мониторов под X11. Правильное чтение вывода xrandr, умение создавать modeline при необходимости и надёжное сохранение конфигурации (скрипты, systemd, .desktop) позволят вам контролировать рабочее пространство без привязки к DE. Если вы используете Wayland или проприетарные драйверы, изучите соответствующие средства управления дисплеями в целевой среде.

Важно: тестируйте изменения по шагам и сохраняйте рабочие скрипты, чтобы быстро возвращаться к рабочей конфигурации.

Image credit: Minh Phuc via Pexels; все скриншоты — автор

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро