linux 上的rsync工具是支持断电续传的,类似(winscp),但是并不能做到自动的断点续传,比如在某些网络环境很不稳定的情况下,传输比较大的文件,就牵扯到自动断点续传的功能,那就需要自己写脚本进行判断处理了
步骤如下:
1. 设置ssh自动登录(本例子rsync工具使用默认的ssh协议),ssh-copy-id
2. 设置crontab执行脚本如下(每分钟检测一次)
*/1 * * * * /root/send.sh > /root/send.txt 2>&1
send.sh脚本内容
#!/bin/bash
ErrorNumber=$(strings /root/rsync.log|grep error|wc -l)
if [ ${ErrorNumber} -gt 0 ];then
pkill -f rsync
nohup rsync -avuP destip:/dir destdir > /root/rsync.log 2>&1 &
fi