在mac中使用终端, ssh连接到服务器后 隔一段时间没有数据传递时会自动断开,终端会卡着无响应,要等几分钟后才会显示断开并且返回到本地终端命令行。
解决方法:
- 用vim编辑器打开ssh配置文件,修改为每60秒发送向目标服务器发送一次心跳
sudo vim /etc/ssh/ssh_config
- 按要求输入mac用户的登陆密码后打开文件,GG跳转至文件末尾,按o在文件末尾添加 ServerAliveInterval 60,添加后效果如下所示:
Host *
SendEnv LANG LC_*
ServerAliveInterval 60
ServerAliveCountMax 2
ServerAliveInterval 60
ServerAliveCountMax 2
- 添加完成后按ESC键,输入:wq退出vim编辑器
参数含义:
ServerAliveInterval 60 表示每隔60秒,mac客户端会主动向服务器发出一次请求,用来维持长连接。
ServerAliveCountMax 2 表示服务器发出请求后客户端没有响应的次数达到2次, 就自动断开. 正常情况下, 客户端不会不响应。