как запустить gnome-terminal на удаленной машине centos 7?

Моя локальная машина - linux mint, а удаленная - centos 7. Я пытаюсь открыть gnome-terminal на удаленной машине с помощью x-forwarding, и он не работает.

Когда я подключаюсь к хосту в интерактивном режиме

$ ssh -Y centos-host

Затем в открытом сеансе я могу запустить gnome-terminal и работать с x-forwarding

$ gnome-terminal 
$ netstat -nltp
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name 
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      -
tcp        0      0 127.0.0.1:6010          0.0.0.0:*               LISTEN      -  

Однако, когда я пытаюсь запустить yo

$ ssh -Y centos-host gnome-terminal

Окно с терминалом gnome открыто, но нет Создан туннель для X.

Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name 
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      -

У меня есть другая удаленная машина linux mint, и я не испытывал с ней такой проблемы. Так что, думаю, что-то не так с centos 7.

Пожалуйста, помогите.
Спасибо.

-1
задан 19 January 2017 в 13:04
2 ответа

Причина в том, что gnome-terminal уходит на задний план. Если вы запустите его в интерактивном сеансе ssh , вы заметите, что получаете новую командную строку, даже если терминал все еще открыт. В неинтерактивном случае, как только это произойдет, ssh подумает, что команда завершена, и закроет сеанс, включая закрытие прослушивающего сокета X11 на сервере. Поскольку все еще есть активные соединения X11, ssh не завершается немедленно, поэтому выглядит так, как будто сеанс все еще активен, однако новые соединения X11 не могут быть открыты.

Раньше вы могли сделать это с помощью gnome-terminal --disable-factory , но, к сожалению, в какой-то момент это было удалено из gnome-terminal . Теперь у вас есть два варианта:

  • Использовать другую терминальную программу, которая не работает в фоновом режиме, например xterm
  • Непосредственно после запуска gnome-terminal в том же сеанс ssh запускает команду, которая не завершается, например ssh -Y server 'gnome-terminal; эхо Нажмите Enter для выхода; прочтите '
8
ответ дан 5 December 2019 в 18:58

Конфигурация:

  • CentOS Linux, выпуск 7.6.1810 (Core)
  • / etc / ssh / sshd_config содержит:
X11Forwarding yes

Следующее У меня работает команда:

ssh -Y HOST bash -l -c gnome-terminal --display=${DISPLAY} < /dev/null > /dev/null  2>&1 &

gnome-terminal --disable-factory сообщил мне - disable-factory больше не поддерживается.

0
ответ дан 5 December 2019 в 18:58

Теги

Похожие вопросы