Вопрос:
У меня есть Linux-сервер, к которому я подключаюсь по ssh. Он отлично работает, а также отлично работает X-forwarding (в локальной сети).
Теперь я хотел запустить серверную программу под вином. Поскольку это приложение для Windows, оно не запускается в командной строке, поэтому мне приходится запускать его через x-forwarding. Пока не проблема, работает замечательно.
Моя проблема в том, что я подключаюсь к целевому компьютеру с помощью X-forwarding, например:
ssh ip.of.target.computer -X
тогда я начинаю
gnome-session
с терминала ssh. Gnome загружается, и я могу запустить приложение графического сервера через вино. Но когда я хочу выйти из X-пересылки, это закрывает сеанс gnome (и серверное приложение X-window) ...
Как я могу войти в систему, запустить приложение X-window, а затем выйти из ssh, не закрывая X-приложение?
Вы можете найти -N
опция полезная:
-N Do not execute a remote command. This is useful for just for‐ warding ports (protocol version 2 only).
и / или -T
вариант:
-T Disable pseudo-tty allocation.
Таким образом, вы не получите приглашение оболочки.
Попробуйте совместить это с disown
.
ssh <host> -X -N -T &
disown %<number>
где <number>
любое число, напечатанное в скобках после запуска ssh
команда.
Например:
$ ssh -X -N -T myserver&
[1] 10317
$ disown %1
Это отделит ssh
из оболочки и окна, поэтому вы можете закрыть окно и ssh
будет продолжать бежать.
Вы можете запустить X на удаленном компьютере и использовать x11vnc для удаленного управления запущенными приложениями.