SSH连接到远程计算机和注销的影响


0

一个愚蠢的问题:我刚刚通过cmd线注销了远程机器的ssh会话。有没有什么可以杀死其他工作或关闭机器?这一切都是由于网络连接和ssh会话被绞死所致。我只需要在那一点上按住ctrl + z,它说已经停止了工作。

远程机器:Ubuntu

提前致谢!


任何事情都可能停止工作或关闭机器。检查日志。至于SSH关闭机器或停止作业,取决于您正在使用的程序以及是否将该程序设置为在断开连接时关闭机器。除了断开连接之外,失去SSH连接的可能性几乎不大。
安德鲁

Answers:


2

好吧,如果网络问题导致连接挂起,则意味着数据包无法通过。这当然意味着客户端的“密切连接”数据包也无法通过。

因此,在网络问题期间,服务器还不知道您已经杀死了客户端。如果它试图发送更多数据并且a)没有收到确认,或者b)收到重置数据包(“此连接不再存在”),它将只计算出来。

无论哪种方式,一旦它确定SSH连接被破坏,sshd将向前台运行的任何程序(你的shell,或你的文本编辑器,或其他)发送一个“挂断”(SIGHUP)信号。然后,shell将在退出之前向所有后台作业发送相同的SIGHUP。因此,您的后台作业也将退出。(nohup毕竟,这就是工具存在的原因。)

如果您ssh在网络正常时终止,同样的情况发生 - 服务器将收到“连接重置”数据包并向shell发送“挂断”。

最后,如果您通过shell本身注销(使用exitCtrlD),它也将自己完成相同的清理过程,尽管这次它有机会提醒您有关正在运行的作业。


我的网络回来了,我可以再次ssh到机器,一个明确的迹象,它没有关闭。但我不确定退出了哪些后台工作。
2014年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.