我使用 Windows 笔记本电脑并通过 Cygwin ssh 进入 ubuntu 桌面来完成一些工作。但是,如果我让 Cygwin 会话保持打开状态并且我的笔记本电脑整夜进入睡眠状态,它会断开连接并显示以下消息:
client_loop: send disconnect: Connection reset by peer
我尝试过设置服务器端和客户端的ServerAliveInterval/ClientAliveInterval/etc
参数,但似乎都不起作用。有没有办法让我的 ssh 在我的笔记本电脑休眠时保持活动状态,或者这是一个矛盾的说法?
答案1
当您的计算机处于睡眠状态时,上面不会运行任何内容,因此您的 SSH 客户端无法执行任何操作来保持连接处于活动状态。
您可以尝试对其进行配置,以便它不会注意到 TCP 连接何时消失,但这最终会适得其反,因为 TCP 连接无论如何都会断开。你可能会发现莫什有趣的是:当您的笔记本电脑唤醒时,它会透明地重新连接。
如果您不介意手动重新连接,但特别关心在离开时查找服务器会话,则也可以使用多路复用器,例如screen
或tmux
。当连接断开时,您可以再次连接到服务器,重新连接您的screen
/tmux
会话,然后继续,就像什么也没发生一样。