![9e0379eaccf41f5af802a3801eb23152.png](https://i-blog.csdnimg.cn/blog_migrate/d438f9986f1ca38064188a51d7b88f36.png)
- MacOS ssh 登陆超时后自动断开
- automatic disconnected from server in MacOS ssh
使用 Mac 进行 ssh 登陆服务器后,如果长时间不操作(比如隔一晚),可能会出现:
Write failed: Broken pipe
这是因为你的机器长时间没有对服务器端响应,因此被服务器踢下线了。
如果是如下错误
client_loop: send disconnect: Broken pipe
则是因为你的机器休眠了,然后断开了连接。
为了解决以上问题,需要进行一下2个步骤:
1. 方法一:如果您有多个人管理服务器,不想在每个客户端进行设置,只需在服务器的 /etc/ssh/sshd_config 中添加如下的配置:
ClientAliveInterval 60
方法二:但是一般你没有服务器权限,然后可能会有多台服务器,不想在每台服务器上设置,只需在客户端的 ~/.ssh/ 文件夹中添加 config 文件,并添加下面的配置:
TCPKeepAlive yes
ClientAliveInterval 60
ClientAliveCountMax 40000
2. 除了添加相关配置,你还需要设置自己机器的电源模式:
系统偏好设置 - 节能 - 如图勾选和反勾选
![7c4703623861fa99db40c16f0891c6b4.png](https://i-blog.csdnimg.cn/blog_migrate/a7de01408bc972dd300dd665a08d7a28.png)
只有经过以上 2 步设置,才能保证机器很久未使用的情况下仍然保持连接。
当然你还可以尝试另外一种方式:tmux,这个需要时间好好折腾了。