Если при настройке мультимониторной системы в Linux вы обнаружили, что фоновое изображение дублируется на обоих экранах или растягивается с искажениями, проблема решается изменением параметров рабочего стола. В большинстве дистрибутивов по умолчанию используется единый фон для всех мониторов, но современные окружения рабочего стола (DE) поддерживают индивидуальные обои для каждого дисплея. Основная сложность заключается в ручной настройке конфигурационных файлов или использовании специализированных утилит — в зависимости от выбранного DE.
Например, в GNOME (Ubuntu, Fedora) и KDE Plasma (Kubuntu, KDE Neon) настройка выполняется через графический интерфейс, тогда как в минималистичных окружениях типа i3 или Openbox потребуется редактировать конфиги вручную. Ключевой момент — корректное определение идентификаторов мониторов (xrandr) и указание путей к изображениям с учётом их разрешения. Если после применения настроек обои отображаются некорректно, проверьте соответствие разрешений экрана и изображений, а также наличие поддержки multi-monitor wallpaper в вашем DE.
Почему Linux по умолчанию не поддерживает разные обои на двух мониторах
Архитектура большинства Linux-окружений изначально проектировалась с расчётом на однодисплейные системы. Даже в современных DE поддержка мультимониторных конфигураций реализована как дополнительная функция, а не базовая возможность. Это связано с несколькими техническими ограничениями:
- 🖥️ Унаследованный код: Многие DE (например, XFCE или MATE) базируются на старых библиотеках, где фон рабочего стола обрабатывается как единое целое для всех экранов.
- 📝 Конфигурационные файлы: В минималистичных WM (например, i3 или AwesomeWM) настройки обоев хранятся в текстовых файлах, где нет встроенной логики для разделения дисплеев.
- 🔄 Менеджеры композитинга: Некоторые DE (например, GNOME с
mutter) используют композиторы, которые не всегда корректно обрабатывают несколько фоновых изображений. - 🛠️ Отсутствие стандарта: В отличие от Windows или macOS, в Linux нет универсального API для управления обоями на нескольких мониторах — каждый DE реализует это по-своему.
В результате пользователям приходится либо полагаться на плагины (например, gnome-shell-extension-multi-monitors для GNOME), либо редактировать конфиги вручную. Исключение составляют KDE Plasma и некоторые форки GNOME (например, Pop!_OS), где поддержка мультимониторных обоев реализована "из коробки".
Если ваше окружение не поддерживает разные обои, проверьте наличие обновлений для DE или установите специализированные утилиты вроде nitrogen или feh.
Подготовка: определение идентификаторов мониторов
Перед настройкой обоев необходимо узнать, как система идентифицирует ваши мониторы. Для этого используйте утилиту xrandr (для X11) или wlr-randr (для Wayland). В терминале выполните:
xrandr --query
В выводе вы увидите список подключённых дисплеев с их разрешением и текущим положением. Например:
HDMI-1 connected 1920x1080+1920+0
DP-1 connected primary 1920x1080+0+0
Здесь:
HDMI-1иDP-1— идентификаторы мониторов.1920x1080— разрешение.+1920+0и+0+0— смещение (позиция второго экрана относительно первого).
Запишите идентификаторы — они понадобятся для дальнейшей настройки. Если вы используете Wayland, замените xrandr на:
wlr-randr
Определите идентификаторы мониторов через xrandr или wlr-randr|Проверьте разрешение каждого экрана|Подготовьте два изображения с разрешением, соответствующим мониторам|Убедитесь, что изображения находятся в доступной директории (например, ~/Pictures/)
-->
Настройка разных обоев в GNOME (Ubuntu, Fedora, Pop!_OS)
В GNOME поддержка разных обоев реализована через расширения. Самый надёжный способ — установить Multi Monitors Add-On:
- Откройте GNOME Extensions в браузере.
- Найдите расширение
Multi Monitors Add-Onи установите его. - Активируйте расширение в
gnome-tweaks(Утилита настройки GNOME). - Перейдите в Параметры → Фон, где теперь можно выбрать разные обои для каждого монитора.
Если расширение не работает:
- 🔄 Проверьте версию GNOME: расширение может не поддерживать старые версии (ниже 40).
- 🛠️ Установите зависимость
gnome-shell-extension-manager:
sudo apt install gnome-shell-extension-manager # Для Debian/Ubuntu
sudo dnf install gnome-extensions-app # Для Fedora
Альтернативный метод — использование gsettings для ручной настройки. Например, чтобы установить разные обои для HDMI-1 и DP-1:
gsettings set org.gnome.desktop.background picture-uri 'file:///path/to/wallpaper1.jpg'
gsettings set org.gnome.desktop.background picture-uri-dark 'file:///path/to/wallpaper1.jpg'
Для второго монитора (требует дополнительных плагинов)
dconf write /org/gnome/shell/extensions/multi-monitors/monitor-hdmi-1/picture-uri "'file:///path/to/wallpaper2.jpg'"
GNOME (Ubuntu, Fedora)|KDE Plasma (Kubuntu)|XFCE (Xubuntu)|i3/sway (Tile WM)|Другое-->
Установка разных обоев в KDE Plasma
KDE Plasma — одно из немногих окружений, где поддержка мультимониторных обоев реализована нативно. Чтобы настроить разные фоновые изображения:
- Щёлкните правой кнопкой по рабочему столу и выберите Настроить рабочий стол.
- Перейдите на вкладку Обои.
- В выпадающем меню Экран выберите первый монитор и установите для него обои.
- Повторите шаг 3 для второго монитора.
Если опция недоступна:
- 🔄 Убедитесь, что в Системные настройки → Экран мониторы распознаны корректно.
- 🛠️ Проверьте версию Plasma: в старых версиях (ниже 5.20) может потребоваться ручная настройка через
plasma-apply-wallpaperimage:
plasma-apply-wallpaperimage --monitor 1 /path/to/wallpaper1.jpg
plasma-apply-wallpaperimage --monitor 2 /path/to/wallpaper2.jpg
Для автоматической смены обоев на каждом мониторе установите утилиту variety:
sudo apt install variety
В настройках Variety выберите Мультимониторный режим и укажите отдельные папки с обоями для каждого экрана.
Если обои сбрасываются после перезагрузки
Проблема может быть связана с кэшем KDE. Попробуйте очистить его:
rm -rf ~/.cache/plasma*
Затем перезапустите Plasma:
kquitapp5 plasmashell && kstart5 plasmashell
Ручная настройка для XFCE, i3, Openbox и других WM
В минималистичных окружениях (например, XFCE, i3, Openbox) настройка обоев выполняется через конфигурационные файлы или внешние утилиты. Самые популярные инструменты:
| Утилита | Поддерживаемые WM | Команда установки | Пример использования |
|---|---|---|---|
feh |
i3, Openbox, bspwm | sudo apt install feh |
feh --bg-fill --no-fehbg /path/to/wallpaper1.jpg --bg-fill --no-fehbg /path/to/wallpaper2.jpg |
nitrogen |
XFCE, LXDE, i3 | sudo apt install nitrogen |
nitrogen --set-zoom-fill --head=0 /path/to/wallpaper1.jpg --head=1 /path/to/wallpaper2.jpg |
hsetroot |
Openbox, Fluxbox | sudo apt install hsetroot |
hsetroot -fill /path/to/wallpaper1.jpg (только для одного экрана) |
xwallpaper |
i3, sway | sudo apt install xwallpaper |
xwallpaper --output HDMI-1 --zoom /path/to/wallpaper1.jpg |
Для XFCE также можно использовать встроенную утилиту xfconf-query:
xfconf-query -c xfce4-desktop -p /backdrop/screen0/monitor0/image-path -s /path/to/wallpaper1.jpg
xfconf-query -c xfce4-desktop -p /backdrop/screen0/monitor1/image-path -s /path/to/wallpaper2.jpg
Чтобы изменения применялись автоматически при запуске, добавьте команду в автозагрузку. Например, для i3 отредактируйте файл ~/.config/i3/config:
exec --no-startup-id feh --bg-fill --no-fehbg /path/to/wallpaper1.jpg --bg-fill --no-fehbg /path/to/wallpaper2.jpg
В минималистичных WM (i3, Openbox) обои устанавливаются через внешние утилиты (feh, nitrogen). Без них функция недоступна.
Решение распространённых проблем
Если после настройки обои отображаются некорректно, проверьте следующие моменты:
⚠️ Внимание: В Wayland некоторые утилиты (например,feh) могут не работать. Используйтеswaybgдля sway или настройте обои через DE.
- 🖼️ Искажение изображений: Убедитесь, что разрешение обоев совпадает с разрешением монитора. Используйте параметр
--bg-scale(дляfeh) или--zoom(дляnitrogen). - 🔄 Обои сбрасываются после сна: Добавьте команду для смены обоев в скрипт обработки событий
acpidилиsystemd. - 🛠️ Не работают горячие клавиши: В i3 или sway привяжите команду к клавише в конфиге:
bindsym $mod+w exec feh --bg-fill --randomize ~/Pictures/wallpapers/* - 🖥️ Мониторы определяются неверно: Проверьте порядок подключения кабелей или обновите драйверы (
sudo apt install xserver-xorg-video-intelдля Intel,nvidia-driverдля NVIDIA).
Если проблема сохраняется, проверьте логи Xorg:
cat /var/log/Xorg.0.log | grep -i error
Для NVIDIA может потребоваться отключить TearFree в /etc/X11/xorg.conf:
Section "Screen"
Option "metamodes" "HDMI-1: 1920x1080 +0+0, DP-1: 1920x1080 +1920+0"
Option "TearFree" "false"
EndSection
Автоматизация смены обоев с помощью скриптов
Чтобы автоматически менять обои на каждом мониторе, создайте скрипт на bash и добавьте его в cron или автозагрузку. Пример для feh:
#!/bin/bash
WALLPAPER_DIR="/home/user/Pictures/wallpapers"
MONITOR1="HDMI-1"
MONITOR2="DP-1"
Выбор случайных обоев
WALLPAPER1=$(find "$WALLPAPER_DIR" -type f | shuf -n 1)
WALLPAPER2=$(find "$WALLPAPER_DIR" -type f | shuf -n 1)
Установка обоев
feh --bg-fill --no-fehbg "$WALLPAPER1" --bg-fill --no-fehbg "$WALLPAPER2"
Сохраните скрипт как change_wallpaper.sh, сделайте его исполняемым:
chmod +x change_wallpaper.sh
Затем добавьте в crontab для смены обоев каждый час:
crontab -e
Добавьте строку:
0 /path/to/change_wallpaper.sh
Для KDE можно использовать variety с настройкой мультимониторного режима, а в GNOME — расширение Dynamic Wallpaper.
Как проверить, поддерживает ли ваш DE разные обои
Выполните команду:
xdpyinfo | grep -i multi
Если в выводе есть строки с XINERAMA или RANDR, ваше окружение поддерживает мультимониторные настройки.
FAQ: Частые вопросы по настройке обоев на двух мониторах в Linux
Можно ли установить разные обои в Ubuntu 22.04 без расширений?
В стандартном GNOME Ubuntu 22.04 нет встроенной поддержки разных обоев. Вам потребуется установить расширение Multi Monitors Add-On или использовать gsettings с ручной настройкой через dconf.
Почему после обновления KDE Plasma обои сбросились на стандартные?
Это связано с обновлением конфигурационных файлов Plasma. Попробуйте сбросить настройки обоев через System Settings → Workspace Behavior → Desktop Effects или удалите кэш Plasma (rm -rf ~/.cache/plasma*).
Как сделать разные обои в Arch Linux с i3?
В Arch Linux установите feh или nitrogen:
sudo pacman -S feh
Затем добавьте команду в ~/.config/i3/config:
exec --no-startup-id feh --bg-fill /path/to/wallpaper1.jpg --bg-fill /path/to/wallpaper2.jpg
Поддерживает ли Wayland разные обои на двух мониторах?
Поддержка зависит от композитора. В GNOME на Wayland требуется расширение, в KDE Plasma — работает нативно, а в sway (аналог i3 для Wayland) используйте swaybg:
swaybg -i /path/to/wallpaper1.jpg -o HDMI-A-1 -m fill
swaybg -i /path/to/wallpaper2.jpg -o DP-1 -m fill
Как вернуть стандартные обои, если настройки сломались?
Для сброса настроек в GNOME выполните:
gsettings reset org.gnome.desktop.background picture-uri
gsettings reset org.gnome.desktop.background picture-uri-dark
В KDE удалите файл ~/.config/plasma-org.kde.plasma.desktop-appletsrc и перезапустите Plasma.