В чем разница между ~. (точка тильды) и «выход» при выходе из SSH-соединения
1651
Hải Phong
Всякий раз, когда у меня есть фоновое соединение X11 в сеансе SSH, я должен использовать, ~.а не exitвыходить из сеанса SSH.
Какая здесь разница? Могу ли я всегда использовать escape-последовательность ~.?
2 ответа на вопрос
5
Marcus Müller
exitговорит вашей текущей оболочке выйти. Поскольку (когда нет туннельного соединения, например, X11, активно), это означает, что процесс, вызванный sshd на стороне сервера, завершился, SSH затем отключается.
~. это «магическая» escape-последовательность, которую SSH захватывает и немедленно отключает (включая туннель X11).
Так что нет, они не взаимозаменяемы. Если вы хотите, чтобы ваша удаленная оболочка (или какая-либо программа, запущенная удаленно) корректно завершилась, вы должны соответствующим образом завершить ее.
3
Jakuje
Это хорошо описано уже в другом ответе, но я бы добавил немного предыстории:
Сегодня одно SSH-соединение может содержать несколько сеансов (ваши оболочки, команды), каналы пересылки TCP и каналы пересылки X11 . И тут возникает разница: