В Linux некоторые приложения при переходе в полноэкранный режим меняют разрешение экрана. Но при закрытии программы, настройки не всегда возвращаются к прежнему состоянию. С этой проблемой можно столкнуться, например, запуская многие старые игры. Встречаются приложения, с которыми очень трудно работать при высоких разрешениях экрана. Одним из решений будет старт программы в новой сессии X-сервера.
Кроме того, этот подход можно применить, чтоб ускорить работу программы. Или для запуска графического приложения на сервере, где невыгодно устанавливать и запускать полновесные DE.
Последовательность действий при этом следующая:
1. В директории
/etc/X11 создаем копию файла
xorg.conf (понадобятся права суперпользователя)
$ sudo cp /etc/X11/xorg.conf /etc/X11/alternative.conf
2. В файле
/etc/X11/alternative.conf ищем секцию
Screen и для параметра
Modes записываем нужное нам разрешение. Например:
Section "Screen"
Identifier "Screen0"
Device "Card0"
Monitor "Monitor0"
SubSection "Display"
Viewport 0 0
Depth 24
Modes "640x480"
EndSubSection
EndSection
3. Запускаем приложение (application) в новом терминале
$ sudo startx application -- :1 -config alternative.conf
Здесь
:1 означает номер экрана. Наше текущее графическое окружение запущено на экране
:0. Переключаться между графическими терминалами можно с помощью сочетаний клавиш
Ctrl+Alt+F7 и
Ctrl+Alt+F8. Если конфигурационный файл скопирован не в директорию
/etc/X11, то надо указать полный путь к нему.
Дополнение для пользователей Ubuntu.
В Ubuntu по умолчанию отсутствует файл
/etc/X11/xorg.conf. Для того, чтоб его сгенерировать нужно выполнить следующие шаги:
1. Переключаемся на текстовый терминал
tty1 с помощью сочетания клавиш
Ctrl+Alt+F1. И выполняем вход.
2. Останавливаем графический сервер (предварительно завершив работу важных для нас приложений).
$ sudo service lightdm stop
3. Создаем конфиг.
$ sudo Xorg -configure
4. Переименовываем его в
alternative.conf (тогда первый шаг предыдущей инструкции не потребуется).
$ sudo mv /etc/X11/xorg.conf /etc/X11/alternative.conf
5. Снова запускаем графическое окружение.
$ sudo service lightdm start
Готово! Если есть проблемы со входом в графическое окружение, проверяем права на файл
.Xauthority. Или просто удаляем его, предварительно остановив
lightdm.