我试图从远程服务器同步文件是不可靠的,这意味着连接往往会“随机”失败
rsync:连接意外closures
Rsync是用–partial调用的,所以我希望能够在一个循环中调用rsync,直到文件被完全传输。 似乎没有一个标志告诉rsync重试。
什么是脚本的最好方法? 一个bash for循环?
如果你在一个同步中同步所有的东西,在一个循环中调用rsync直到rsync给你一个成功的返回码。
就像是:
RC=1 while [[ $RC -ne 0 ]] do rsync -a ..... RC=$? done
这将循环,调用rsync,直到它返回0代码。你可能想在那里添加一个睡眠,以防止DOS服务器的DOS。
我碰到了同样的问题。 最后我写了类似于David的回答,但是最多重试了一下,回复Ctrl-C,等等: http : //blog.iangreenleaf.com/2009/03/rsync-and-retrying-直到我们得到it.html 。