运行一个远程拷贝的脚本,因涉及到长时间通过ssh到另外一台服务器进行脚本的运行,整个运行时间需要一个小时,但有时候莫名其妙的就会中断,导致脚本需要跑到3个小时左右。
于是怀疑是ssh的连接超时了,通过网络上搜索,需要在服务器端增加如下参数:
编辑ssh的配置文件,在最后添加如下标红部分
# vi /etc/ssh/sshd_config
# Example of overriding settings on a per-user basis
#Match User anoncvs
# X11Forwarding no
# AllowTcpForwarding no
# PermitTTY no
# ForceCommand cvs server
ClientAliveInterval 60
ClientAliveCountMax 3
重启一下sshd服务
#systemctl stop sshd
#systemctl start sshd
意思如下
ClientAliveInterval :指定了服务器端向客户端请求消息的时间间隔, 默认是0,不发送。
每一分钟,sshd都和ssh client打个招呼,检测它是否存在,不存时即断开连接。
ClientAliveCountMax:指如果发现客户端没有相应,则判断一次超时,这个参数设置允许超时的次数