为什么当 SSH 会话断开连接时 gnome-terminal 会冻结?

为什么当 SSH 会话断开连接时 gnome-terminal 会冻结?

这是一个非常简单的问题。我每天都使用 gnome-terminal 来 SSH 到其他机器。我在办公室随身携带的笔记本电脑上执行此操作,因此我经常在有线和无线网络之间切换。当这种情况发生时,我的 SSH 会话会中断,终端会冻结。

为什么会发生这种情况(冻结,而不是会话中断)?有办法防止这种情况发生吗?我知道在我知道要断开笔记本电脑与以太网的连接之前,我可以通过从远程服务器注销来解决这个问题。

这很烦人,因为终端会话冻结后我必须手动关闭,这会弹出一个对话框,而且我还会丢失会话的标题 - 所有这些都非常耗时。如果 ssh 会话被终止,它会让我回到本地 bash 提示符,那就好多了。

答案1

会话最终会超时并断开连接;如果您在 中配置ServerAliveInterval和,此情况会更快发生。要强制立即断开连接,。ServerAliveCountMax~/.ssh/configReturn~.

答案2

无需深究其原因,以下是修复方法:

~.

那是波浪号。依次按下这两个键,这将断开挂起的 ssh 会话并返回到您的终端。耶!

相关内容