Я определил в терминале гномов, что он закрывается в конце оболочки. Когда я нажимаю Control-D или выполняю выход, терминал закрывается.
Но если я открою сеанс SSH с gnome-terminal -x ssh server
и выполню reboot
в сеансе SSH ( для перезагрузки удаленного сервера ), он зависнет и не закроется. Что происходит?
Это работало до меня, но я должен переустановить Ubuntu (локально), и теперь gnome-терминал не закрывается, когда заканчивается SSH-сессия.
Добавьте это к своему удаленному серверу ~/.bashrc
или ~/.profile
, какой бы ни является соответствующим:
alias reboot='{ sleep 2; reboot; }& exit'
Каждый раз, когда Вы вводите 'перезагрузку' на удаленном сервере, она говорит компьютеру перезагрузке за 2 секунды при непосредственном выходе, обеспечении, что терминал не просто зависнет.
Править: я неправильно понял Ваш вопрос?
Для закрытия терминала после, сессия SSH заканчивается, используйте псевдоним для sshing сервер и добавьте 'выход' в конец:
alias server_ssh='ssh user@site.com; exit'
Помещенный это в Ваш ~/.bashrc
Сервер ssh умирает без правильного закрытия соединения. Клиент будет сидеть там, потому что он не знает, что что-то случилось с сервером. Сервер просто некоторое время молчал; это неотличимо от присутствия сервера, но нечего сказать. В конечном итоге клиент отправит тестовый пакет, не получит ответа и умрет. Вы можете ускорить это, нажав клавишу; клиент отправит реальный пакет, не получит ответа и умрет. Или вы можете принудительно закрыть соединение на клиенте, нажав Return kbd>, затем ~.
.