Могу ли я поддерживать работу приложений в X-сеансах?

11

Допустим, у меня есть окно Firefox, загружающее большой файл, которое займет много времени. Теперь, когда он работает на полпути, и я хочу переключиться на другой DE (например, с GNOME на KDE), могу ли я сделать это, не прерывая загрузку?

РЕДАКТИРОВАТЬ: я не использую GDM или KDM или любой настольный менеджер, который может усложнить ситуацию ...

phunehehe
источник

Ответы:

8

Вы должны оставить работающий оригинальный X-сервер. Вы можете запустить другой X-сервер на другом tty. Так, на обычной системе, сделать ctrl+ alt+ f1, а затем войти и запустить startx -- :1. Вы должны закончить с другим сеансом X на ctrl+ alt+ f8.

Любое количество X-серверов может быть запущено путем изменения числа после двоеточия; если вы используете число больше 12, вы можете использовать chvtего вместо ключевого комбо.

Если вы хотите, вы можете настроить специальные .xinitrcфайлы, которые запускаются в различных средах рабочего стола. Таким образом, вы можете .xinitrc-kdeзапустить сеанс KDE. В этом файле у вас будет что-то вроде exec startkde. И вы бы начали X, как и все startx ./.xinitrc-kde -- :1.

Если вы планируете запускать Firefox на обоих сеансах, могут возникнуть некоторые проблемы. Просмотрите параметры командной строки «no-remote» и «ProfileManager» для Firefox .

Шон Дж. Гофф
источник
1
+1 Круто. Я вижу много других полезных применений для этого.
Натан Осман
7

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

Одна возможность для виртуального X-сервера - это VNC . Запустить vncserverпрограмму; это создает виртуальный X-сервер и работает ~/.vnc/xstartup, который обычно работает ~/.xinitrcкак startx. Затем вызовите, xvncviewerчтобы показать окно, содержащее дисплей виртуального X-сервера. Виртуальный сервер продолжает работать, пока сеанс не завершится или вы не запустите vncserver -kill; Вы можете подключать и отключать зрителей по желанию. Возможно, вам потребуется указать номер дисплея в командной строке, например, vncserver :3и xvncviewer :3. Сессии VNC можно получить из различных машин , если брандмауэр не мешает: xvncviewer somehost:3. Существует несколько реализаций серверов и зрителей VNC.

Жиль "ТАК - прекрати быть злым"
источник
5

Вы можете запустить вложенный X-сервер (Xnest или лучше Xephyr) и запустить в нем другую графическую среду.

jlliagre
источник
1

Да, ты можешь. Если вы используете GNOME, нажмите System -> Logout username , чтобы открыть этот диалог:

альтернативный текст

Нажатие на пользователя Switch User приводит меня в окно gdm, которое спрашивает меня, на какого пользователя я хочу переключиться. После того, как вы закончили вход в систему, вы всегда можете вернуться к исходному пользователю с помощью одной CtrlAltF7или нескольких команд, указанных выше.

tshepang
источник
Err, забыл добавить, что я не использую менеджер рабочего стола.
phunehehe