Решено: Как переключить уже запущенное приложение между одновременными терминал сессиями разных пользователей. (Или между экземплярами рабочих столов)

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС.

Модераторы: SLEDopit, Модераторы разделов

Ism
Сообщения: 1261
Статус: Никто, по сути быдло

Решено: Как переключить уже запущенное приложение между одновременными терминал сессиями разных пользователей.

Сообщение Ism »

А задачка хитрая.

Есть 10 пользователей подключенных к терминал серверу (какому , неважно , скажем freenx). Каждый видит свой рабочий стол
(скажем gnome) как и должно быть.
Так вот надо , чтоб однажды запущенное приложение одним пользователем мог увидеть и пользоваться другой , то есть окно
приложения надо както передать между разными копиями рабочих столов разных пользователей. Один забрал у другого исчезло.
Это делается, чтоб другие пользователи не тратили время на загрузку с нуля, так как приложение может работать в только в
одном экземпляре (виртуальная машина)

Пробовал сделать подобное на vnc но там всего лишь много пользователей работают с одним рабочим столом, что не годится, так
как нельзя управлять процессом перехвата приложения (рабочего стола) пользователями.


Возможно есть определенные команды гнома или терминал сервера, но поиск в упор ничего не дает
Спасибо сказали:
Аватара пользователя
Bluetooth
Сообщения: 4395
Статус: Блюзовый
ОС: Debian Squeeze amd64

Re: Решено: Как переключить уже запущенное приложение между одновременными терминал сессиями разных пользователей.

Сообщение Bluetooth »

в качестве костыля можно запускать вместо vncviewer скрипт, убивающий все vncviewer-ы в системе и только после этого запускающий vncviewer :)

А еще можно попробовать параметр vnc сервера:
-nevershared
Never allow shared desktops.
Но я лично не знаю, как он себя ведет - отключает старого клиента или не пускает нового...
Спасибо сказали:
Ism
Сообщения: 1261
Статус: Никто, по сути быдло

Re: Решено: Как переключить уже запущенное приложение между одновременными терминал сессиями разных пользователей.

Сообщение Ism »

А можно заставить определенный экземпляр VNC показывать определенное приложение ?
Спасибо сказали:
Аватара пользователя
Bluetooth
Сообщения: 4395
Статус: Блюзовый
ОС: Debian Squeeze amd64

Re: Решено: Как переключить уже запущенное приложение между одновременными терминал сессиями разных пользователей.

Сообщение Bluetooth »

Ism писал(а):
11.01.2011 18:17
А можно заставить определенный экземпляр VNC показывать определенное приложение ?

запускаете несколько внц серверов на разных экранах, в каждом запускаете что нужно, коннектитесь к ним по разным портам.
Спасибо сказали:
Ism
Сообщения: 1261
Статус: Никто, по сути быдло

Re: Решено: Как переключить уже запущенное приложение между одновременными терминал сессиями разных пользователей.

Сообщение Ism »

Как хорошо, что я привычный к заклинаниям :) посмотрю

запускаете несколько внц серверов на разных экранах, в каждом запускаете что нужно, коннектитесь к ним по разным портам.


Что такое экраны ? screen или экраны иксов? Дело в том , что нужно более 20 отдельных экранов которыми надо управлять (точнее показывать в них отдельные приложения). А насколько я знаю экранов иксов может быть не более 6 .
Спасибо сказали:
Ism
Сообщения: 1261
Статус: Никто, по сути быдло

Re: Решено: Как переключить уже запущенное приложение между одновременными терминал сессиями разных пользователей.

Сообщение Ism »

почитал о screen, это же программа для консоли , а в моем случае нужно управлять gui приложениями
Спасибо сказали:
BIgAndy
Сообщения: 1923

Re: Решено: Как переключить уже запущенное приложение между одновременными терминал сессиями разных пользователей.

Сообщение BIgAndy »

Ism писал(а):
12.01.2011 01:17
почитал о screen, это же программа для консоли , а в моем случае нужно управлять gui приложениями

И что? Кто-нибудь запрещал гуёвину запускать в screen?
Спасибо сказали:
Ism
Сообщения: 1261
Статус: Никто, по сути быдло

Re: Решено: Как переключить уже запущенное приложение между одновременными терминал сессиями разных пользователей.

Сообщение Ism »

и он также будет управлять ими как консолью ? тогда буду пробовать
Спасибо сказали:
Ism
Сообщения: 1261
Статус: Никто, по сути быдло

Re: Решено: Как переключить уже запущенное приложение между одновременными терминал сессиями разных пользователей.

Сообщение Ism »

похоже все идет к тому, что надо связать screen и vnc на разных портах
Спасибо сказали:
BIgAndy
Сообщения: 1923

Re: Решено: Как переключить уже запущенное приложение между одновременными терминал сессиями разных пользователей.

Сообщение BIgAndy »

Ism писал(а):
12.01.2011 01:39
похоже все идет к тому, что надо связать screen и vnc на разных портах

Нафик vnc? SSH нехватит?
Спасибо сказали:
Аватара пользователя
Bluetooth
Сообщения: 4395
Статус: Блюзовый
ОС: Debian Squeeze amd64

Re: Решено: Как переключить уже запущенное приложение между одновременными терминал сессиями разных пользователей.

Сообщение Bluetooth »

Ism писал(а):
12.01.2011 01:06
Как хорошо, что я привычный к заклинаниям :) посмотрю

запускаете несколько внц серверов на разных экранах, в каждом запускаете что нужно, коннектитесь к ним по разным портам.


Что такое экраны ? screen или экраны иксов? Дело в том , что нужно более 20 отдельных экранов которыми надо управлять (точнее показывать в них отдельные приложения). А насколько я знаю экранов иксов может быть не более 6 .

Конечно же, экраны иксов. А экранов иксов, в случае с vnc, может быть дохренища.
похоже все идет к тому, что надо связать screen и vnc на разных портах
Причем здесь скрин? он для консольных приложений. для внц он явно не поможет :)
Спасибо сказали:
Ism
Сообщения: 1261
Статус: Никто, по сути быдло

Re: Решено: Как переключить уже запущенное приложение между одновременными терминал сессиями разных пользователей.

Сообщение Ism »

Конечно же, экраны иксов. А экранов иксов, в случае с vnc, может быть дохренища.


Что такое в случае с vnc ? Тоесть vnc можно запускать с разными экранами или нужно готовить заранее экраны иксов

Похоже придется копать мануалы, играть в лего, задачка уж больно нестандартная, подозреваю что в сети просто нет ничего на эту тему.
Спасибо сказали:
Аватара пользователя
SLEDopit
Модератор
Сообщения: 4824
Статус: фанат консоли (=
ОС: GNU/Debian, RHEL

Re: Решено: Как переключить уже запущенное приложение между одновременными терминал сессиями разных пользователей.

Сообщение SLEDopit »

UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity. © Dennis Ritchie
The more you believe you don't do mistakes, the more bugs are in your code.
Спасибо сказали:
Ism
Сообщения: 1261
Статус: Никто, по сути быдло

Re: Решено: Как переключить уже запущенное приложение между одновременными терминал сессиями разных пользователей.

Сообщение Ism »

То что надо, спасибо !
Осталось выяснить как запускать копии VNC с заранее указанными портами (не в конфиге), надеюсь такая опция есть

Тогда можно будет подключиться к нужной копии сервера с нужным окном программы

осталось это испытать
Спасибо сказали:
Ism
Сообщения: 1261
Статус: Никто, по сути быдло

Re: Решено: Как переключить уже запущенное приложение между одновременными терминал сессиями разных пользователей.

Сообщение Ism »

появилась проблема, не стартуют в новой vnc сессии все kde и gnome приложения . xcalc еще прокатывает, но остальное просто крашится .
Спасибо сказали:
Ism
Сообщения: 1261
Статус: Никто, по сути быдло

Re: Решено: Как переключить уже запущенное приложение между одновременными терминал сессиями разных пользователей.

Сообщение Ism »

кажется нашел причину, должен быт запущен хотябы самый простой window manager. В Ubuntu заработало (x-window-manager в скрипте руководства), но там упрощенный гном. Теперь ищу ананлог в kde

также для запуска нескольких приложений надо использовать клиент xvnc4viewer -listen 58000 (слушать порт)
запускаем сколько надо слушающих клиентов и запускаем сервер с приложениями на разных экранах

VNCAPP=firefox vncserver -depth 24 :30 (номер дисплея) (из руководстваhttp://romanrm.ru/persistent-apps-in-vnc)
VNCAPP=gnome_calculator vncserver -depth 24 :31

а затем соединить клиент и сервер командой

vncconfig -display :30 -connect localhost:58000


Блин, это как пяткой левое ухо чесать, зато работает :)

Осталось сделать то же в kde, может кто знает, существует ли упрощенный (без панелей, голый экран) kde4 оконный менеджер.
Спасибо сказали:
Аватара пользователя
Ленивая Бестолочь
Бывший модератор
Сообщения: 2760
ОС: Debian; gentoo

Re: Решено: Как переключить уже запущенное приложение между одновременными терминал сессиями разных пользователей.

Сообщение Ленивая Бестолочь »

Ism
просто kwin запускать пробовали?
Солнце садилось в море, а люди с неоконченным высшим образованием выбегали оттуда, думая, что море закипит.
Спасибо сказали:
Ism
Сообщения: 1261
Статус: Никто, по сути быдло

Re: Решено: Как переключить уже запущенное приложение между одновременными терминал сессиями разных пользователей.

Сообщение Ism »

Спасибо , прокатило, теперь я всемогущ !!!

~/.vnc/xstartup

#!/bin/sh

if [ -z "$VNCAPP" ]
then
# Uncomment the following two lines for normal desktop:
# unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc

[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
kdm &
else
xsetroot -solid black &
kdm &
$VNCAPP
sleep 10
vncserver -kill $DISPLAY
fi
Спасибо сказали: