Работа с несколькими мониторами в Linux может превратиться в настоящий кошмар, если не знать тонкостей настройки. Даже такая простая задача, как перестановка экранов местами, часто вызывает путаницу у пользователей. В отличие от Windows или macOS, где интерфейс настройки мультимониторных систем стандартизирован, в Linux всё зависит от графического окружения (GNOME, KDE, Xfce) и даже от версии дистрибутива. Где-то достаточно перетащить экраны мышкой, а где-то придётся вручную прописывать команды в терминале.

В этой статье мы разберём все актуальные способы поменять мониторы местами — от визуальных инструментов до консольных утилит вроде xrandr и arandr. Особое внимание уделим типичным ошибкам, из-за которых экраны могут не сохранять порядок после перезагрузки или отображаться в зеркальном режиме. Если вы используете Linux на рабочей станции с 2-3 мониторами (или больше), эта инструкция поможет избежать часов бессмысленных экспериментов с настройками.

1. Способ для начинающих: настройка через графический интерфейс (GNOME/KDE/Xfce)

Большинство современных дистрибутивов (Ubuntu, Fedora, Mint) по умолчанию используют графические окружения с встроенными инструментами для управления мониторами. Это самый простой способ, не требующий знания команд. Рассмотрим процесс на примере GNOME (Ubuntu 22.04+), KDE Plasma (Kubuntu) и Xfce (Xubuntu).

В GNOME (и производных вроде Cinnamon):

  1. Откройте Настройки → Дисплеи (или Settings → Displays в английской версии).
  2. В верхней части окна вы увидите схему подключённых мониторов. Перетащите их мышкой в нужном порядке.
  3. Нажмите Применить (Apply) и подтвердите изменения.

В KDE Plasma:

  • 🖥️ Перейдите в Настройки системы → Устройства → Дисплеи и мониторы.
  • 🔄 Вкладка Расположение позволяет перетаскивать экраны мышкой.
  • 💾 Не забудьте нажать Применить и сохранить как схему (опция Сохранить как...).

В Xfce:

  • 🛠️ Откройте Настройки → Дисплей.
  • 🖱️ Перетащите мониторы на схеме в нужные позиции.
  • ⚠️ В Xfce может отсутствовать кнопка "Применить" — изменения применяются автоматически после закрытия окна.
📊 Какое графическое окружение вы используете?
GNOME
KDE Plasma
Xfce
Другое
Не знаю
⚠️ Внимание: В некоторых дистрибутивах (например, Debian с минимальной установкой) графические настройки мониторов могут отсутствовать. В этом случае придётся использовать xrandr или установить дополнительные утилиты вроде arandr.

2. Универсальный метод: команда xrandr в терминале

Утилита xrandr — это стандартный инструмент для управления дисплеями в Linux на уровне X-сервера. Она работает во всех дистрибутивах и позволяет гибко настраивать расположение экранов, даже если графический интерфейс отсутствует. Прежде чем менять мониторы местами, нужно узнать их имена и текущую конфигурацию.

Выполните в терминале:

xrandr --query

Вывод будет похож на этот:

HDMI-1 connected 1920x1080+1920+0 (normal left inverted right x axis y axis) 530mm x 300mm

DP-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 530mm x 300mm

VGA-1 disconnected (normal left inverted right x axis y axis)

В этом примере:

  • 📺 HDMI-1 — второй монитор, смещённый вправо на 1920 пикселей (+1920+0).
  • 🖥️ DP-1 — основной монитор (primary) с координатами +0+0.
  • VGA-1 — отключён (disconnected).

Чтобы поменять мониторы местами, используйте команду:

xrandr --output HDMI-1 --auto --primary --output DP-1 --auto --right-of HDMI-1

Разберём флаги:

  • --output HDMI-1 --auto — включает первый монитор в native-разрешении.
  • --primary — делает его основным.
  • --right-of HDMI-1 — размещает второй монитор справа от первого.

Убедитесь, что мониторы включены и распознаны системой|Запишите текущую конфигурацию (на случай отката)|Проверьте поддерживаемые разрешения для каждого экрана|Используйте флаг --dryrun для тестирования без применения-->

⚠️ Внимание: Если после применения xrandr один из мониторов стал чёрным, попробуйте перезапустить X-сервер (Ctrl+Alt+Backspace) или вернуть старые настройки командой xrandr --output HDMI-1 --off --output DP-1 --auto.

3. Сохранение настроек после перезагрузки

Основная проблема при ручной настройке через xrandr — изменения сбрасываются после перезагрузки или выхода из сессии. Чтобы этого избежать, нужно автоматизировать применение команд. Способы зависят от используемого дисплейного менеджера (LightDM, GDM, SDDM) и графического окружения.

Общий алгоритм:

  1. Создайте скрипт с вашей командой xrandr (например, ~/.screenlayout/monitors.sh).
  2. Сделайте его исполняемым:
    chmod +x ~/.screenlayout/monitors.sh
  3. Добавьте автозапуск:
    • 🖥️ В GNOME: Настройки → Автозагрузка.
    • 🐬 В KDE: Настройки системы → Автозапуск.
    • 🐧 В Openbox/LXDE: добавьте строку в ~/.config/autostart.
  4. Для систем с systemd (Ubuntu 22.04+, Fedora) можно создать сервис:

    sudo nano /etc/systemd/system/monitors.service

    Добавьте в файл:

    [Unit]
    

    Description=Monitor Layout Setup

    After=graphical.target

    [Service]

    ExecStart=/home/USER/.screenlayout/monitors.sh

    User=USER

    [Install]

    WantedBy=multi-user.target

    Затем активируйте сервис:

    sudo systemctl enable monitors.service
    

    sudo systemctl start monitors.service

    💡

    Если после перезагрузки мониторы всё равно сбрасываются, проверьте, не переопределяет ли настройки ваш дисплейный менеджер. Например, в LightDM можно отключить автонастройку экранов, отредактировав файл /etc/lightdm/lightdm.conf (добавить строку display-setup-script=/path/to/your/script.sh).

    4. Использование утилиты arandr для визуальной настройки

    Если xrandr кажется слишком сложным, а стандартные настройки окружения не устраивают, попробуйте arandr — графический фронтенд для xrandr с интуитивным интерфейсом. Утилита позволяет перетаскивать мониторы мышкой, настраивать разрешения и сохранять схемы в виде скриптов.

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

    • 📦 Debian/Ubuntu: sudo apt install arandr
    • 📦 Fedora: sudo dnf install arandr
    • 📦 Arch Linux: sudo pacman -S arandr

Как пользоваться:

  1. Запустите arandr из терминала или меню приложений.
  2. Перетащите мониторы на схеме в нужном порядке.
  3. Настройте разрешение, ориентацию и основной экран (правая кнопка мыши на мониторе).
  4. Сохраните схему через Файл → Сохранить как.... Это создаст исполняемый скрипт, который можно добавить в автозагрузку.

Пример сохранённого скрипта (~/.screenlayout/monitors.sh):

#!/bin/sh

xrandr --output DP-1 --primary --mode 1920x1080 --pos 0x0 --rotate normal

xrandr --output HDMI-1 --mode 1920x1080 --pos 1920x0 --rotate normal

Что делать, если arandr не видит мониторы?

Если arandr отображает только один экран или не видит мониторы вообще, проблема может быть в драйверах или конфигурации X-сервера. Попробуйте:

1. Обновить драйверы для видеокарты (особенно актуально для NVIDIA).

2. Перезапустить X-сервер (sudo systemctl restart display-manager).

3. Проверить подключение кабелей (иногда HDMI/DisplayPort не распознаются из-за плохого контакта).

4. Запустить arandr от имени суперпользователя (sudo arandr), но это не рекомендуется для постоянного использования.

5. Особенности настройки для NVIDIA и AMD

Если вы используете дискретную видеокарту NVIDIA или AMD, стандартные инструменты вроде xrandr могут работать некорректно. Производители предоставляют собственные утилиты для управления мультимониторными системами, которые часто конфликтуют с настройками X-сервера.

Для NVIDIA:

  • 🖥️ Используйте NVIDIA X Server Settings (nvidia-settings).
  • 🔧 Перейдите в раздел X Server Display Configuration.
  • 🔄 Перетащите мониторы в нужном порядке и примените изменения.
  • 💾 Сохраните конфигурацию в /etc/X11/xorg.conf (требуются права суперпользователя).

Для AMD:

  • 📊 Утилита amdcccle (Catalyst Control Center) устарела и не рекомендуется.
  • 🐧 Вместо неё используйте xrandr или arandr.
  • 🔄 Если мониторы не определяются, проверьте, что используется драйвер amdgpu (а не radeon).

Типичные проблемы с проприетарными драйверами:

Проблема NVIDIA AMD
Мониторы не сохраняют порядок Сохраните конфиг в xorg.conf Используйте скрипт с xrandr в автозагрузке
Чёрный экран после применения настроек Отключите Composite в nvidia-settings Проверьте совместимость разрешений
Некорректное масштабирование Настройте Metamodes в nvidia-settings Используйте --scale в xrandr
⚠️ Внимание: Если вы используете гибридную графику (например, NVIDIA Optimus на ноутбуке), для корректной работы мультимониторной системы может потребоваться отключить интегрированную графику в BIOS или использовать prime-select для принудительного переключения на дискретную карту.

6. Настройка в Wayland (GNOME/KDE на современных дистрибутивах)

Многие современные дистрибутивы (Fedora 36+, Ubuntu 22.04+) по умолчанию используют Wayland вместо X11. Это меняет подход к настройке мониторов, так как xrandr в Wayland не работает. Вместо него используются инструменты, специфичные для графического окружения.

В GNOME на Wayland:

  • 🖥️ Откройте Настройки → Дисплеи.
  • 🔄 Перетащите мониторы мышкой (как в X11).
  • 💾 Настройки сохраняются автоматически и применяются после перезагрузки.

В KDE Plasma на Wayland:

  • 🛠️ Используйте Настройки системы → Дисплеи и мониторы.
  • 🔧 Функциональность аналогична X11, но без поддержки xrandr.
  • ⚠️ Некоторые функции (например, поворот экрана) могут быть ограничены.

Для продвинутых пользователей в Wayland доступны альтернативные инструменты:

  • 🐧 wlr-randr — аналог xrandr для композиторов на базе wlroots (Sway, Hyprland).
  • 📊 kanshi — динамический менеджер конфигурации мониторов для Wayland.

Пример команды для wlr-randrSway):

wlr-randr --output DP-1 --pos 0,0 --output HDMI-1 --pos 1920,0
💡

В Wayland настройки мониторов привязаны к сессии пользователя и сохраняются автоматически. Однако некоторые функции (например, кастомные разрешения или нестандартные ориентации) могут быть недоступны без ручной настройки конфигурационных файлов композитора.

7. Решение типичных проблем

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

Проблема 1: Мониторы возвращаются к стандартному расположению после сна/пробуждения.

  • 🔌 Проверьте, не сбрасывает ли настройки дисплейный менеджер (например, GDM в GNOME).
  • 📜 Добавьте скрипт с xrandr в /etc/pm/sleep.d/ для обработки событий сна.

Проблема 2: Один из мониторов не определяется.

  • 🔌 Переподключите кабель (попробуйте другой порт на видеокарте).
  • 🐧 Проверьте вывод dmesg | grep -i drm на наличие ошибок.
  • 🔧 Обновите драйверы (sudo ubuntu-drivers autoinstall для Ubuntu).

Проблема 3: Некорректное масштабирование на HiDPI-мониторе.

  • 🖥️ В GNOME: настройте масштаб в Настройки → Универсальный доступ → Масштаб.
  • 🐧 В KDE: используйте Настройки системы → Дисплеи и мониторы → Масштаб.
  • 📏 Для xrandr: xrandr --output DP-1 --scale 1.5x1.5.

Проблема 4: Курсор "прыгает" между мониторами.

  • 🔄 Проверьте, что координаты мониторов в xrandr не пересекаются.
  • 🖱️ В GNOME/KDE отключите опцию "Зеркалирование экранов".
💡

Если после изменения расположения мониторов окна приложений открываются не на том экране, попробуйте сбросить их позиции. В GNOME это можно сделать через dconf reset -f /org/gnome/shell/, но будьте осторожны — это сбросит и другие настройки оболочки.

FAQ: Частые вопросы

Можно ли поменять мониторы местами без перезагрузки?

Да, в большинстве случаев изменения применяются сразу после выполнения команды xrandr или через графический интерфейс. Однако некоторые приложения (например, игры на полный экран) могут требовать перезапуска для корректного отображения на новом мониторе.

Почему после обновления драйверов мониторы перестали определяться?

Это типичная проблема при переходе с открытых драйверов (nouveau для NVIDIA или radeon для AMD) на проприетарные. Решение:

  1. Удалите старые драйверы: sudo apt purge nvidia-* (для Ubuntu).
  2. Установите рекомендуемую версию: sudo ubuntu-drivers autoinstall.
  3. Пересоберите конфиг X-сервера: sudo nvidia-xconfig (для NVIDIA).
  4. Перезагрузите систему.

Как сделать так, чтобы панель задач отображалась только на основном мониторе?

В большинстве окружений (GNOME, KDE, Xfce) панель задач по умолчанию отображается только на первичном (primary) мониторе. Если она дублируется:

  • В GNOME: откройте Расширения (gnome-tweaks) и настройте поведение панели.
  • В KDE: правый клик по панели → Настройки панелиВидимость.
  • В Xfce: правый клик по панели → Свойства → вкладка Дисплей.

Можно ли настроить разные обои на каждом мониторе?

Да, но способ зависит от окружения:

  • GNOME: используйте расширение Dynamic Wallpaper или Multi Monitors Add-On.
  • KDE: в настройках рабочего стола выберите Разные обои для каждого экрана.
  • Xfce: установите xfce4-genmon-plugin или используйте nitrogen.

Для терминала можно использовать feh:

feh --bg-fill /path/to/wallpaper1 /path/to/wallpaper2

Как вернуть стандартные настройки, если я всё сломала?

Если после экспериментов с xrandr или конфигами мониторы перестали работать корректно:

  1. Перезагрузите систему в режим восстановления (для GRUB: удерживайте Shift при загрузке).
  2. Удалите пользовательские конфиги:
    rm ~/.config/monitors.xml  # GNOME
    

    rm ~/.screenlayout/* # Кастомные скрипты

  3. Сбросьте настройки X-сервера:
    sudo mv /etc/X11/xorg.conf /etc/X11/xorg.conf.bak
  4. Перезагрузитесь в нормальном режиме.

Если экран чёрный, попробуйте переключиться на консоль (Ctrl+Alt+F2) и откатить изменения.