我正在尝试保持3个大目录(9G,400G,800G)在我们的主站点和另一个很远很远的地方之间的同步,通过一个有点不可靠的网络链接(速度很慢,偶尔会掉下来)。数据是在安装之前复制到磁盘上的,因此rsync只需要发送更新。我遇到的问题是rsync在客户端挂起了几个小时。较小的9G作业完成后,400G作业已处于不确定状态15小时-在此期间没有输出到日志文件,但尚未超时。
我为此所做的设置(在阅读了许多关于rsync/rsync server/ many的论坛文章后,因为我不是真正的系统管理员)
我在本地系统上设置了rsync服务器(/etc/rsyncd.conf),将其导入到xinetd中,并编写了一个脚本在远程服务器上运行rsync,如果rsync在尝试处理不可靠的网络时失败,它就会循环。脚本中的rsync命令如下所示:
rsync -avzAXP --append root@homesys01::tools /disk1/tools注意"-P“选项等同于"--progress --partial”
我可以在日志文件中看到,rsync在某一时刻确实失败了,循环重新启动了rsync,之后根据日志文件中的条目传输了数据,但最后一次更新日志文件是在15小时前,客户端上的rsync进程仍在运行。
CNT=0
while [ 1 ]
do
rsync -avzAXP --append root@homesys01::tools /disk1/tools
STATUS=$?
if [ $STATUS -eq 0 ] ; then
echo "Successful completion of tools rsync."
exit 0
else
CNT=`expr ${CNT} + 1`
echo " Rsync of tools failure. Status returned: ${STATUS}"
echo " Backing off and retrying(${CNT})..."
sleep 180
fi
done因此,我预计这些作业将花费很长时间,我希望在日志文件(我有)中看到偶尔出现的失败消息,并看到rsync重新启动(它确实有)。我没想到rsync会挂起15个小时或更长时间,没有任何进展,也没有超时错误。
有没有一种方法可以判断客户端上的rsync是否挂起,而不是处理不可靠的网络?
我在/etc/rsyncd.conf文件中没有设置超时。我是否应该以及如何确定合理的超时设置?
我将rsync设置为可通过xinetd使用,但并不总是看到"rsync --daemon“进程正在运行。如果我从远程系统运行rsync,它将重新启动。但是它不是应该一直运行吗?
如有任何指导或建议,将不胜感激。
发布于 2019-08-28 16:07:26
要使用verbose选项告知rsync客户端的工作状态并保留日志文件,请更改此行
rsync -avzAXP --append root@homesys01::tools /disk1/tools 至
rsync -avzAXP --append root@homesys01::tools /disk1/tools >>/tmp/rsync.log.`date +%F`这将在尾部目录下每天生成一个日志文件,然后您可以使用/tmp -f命令来跟踪最新的日志文件,如果它正在滚动,则它正在工作
另请参阅rsync - what means the f+++++++++ on rsync logs?以了解有关日志的更多信息
发布于 2019-09-04 04:22:49
我想我会发布我的最终解决方案,以防它能帮助其他任何人。我添加了--timeout 300和--append-verify。超时消除了rsync无限期挂起的情况,循环将在超时后重新启动。append-verify是必要的,让它检查它更新的任何部分文件。
注以下代码在shell脚本中,输出被重定向到日志文件。
CNT=0
while [ 1 ]
do
rsync -avzAXP --append-verify --timeout 300 root@homesys01::tools /disk1/tools
STATUS=$?
if [ $STATUS -eq 0 ] ; then
echo "Successful completion of tools rsync."
exit 0
else
CNT=`expr ${CNT} + 1`
echo " Rsync of tools failure. Status returned: ${STATUS}"
echo " Backing off and retrying(${CNT})..."
sleep 180
fi
donehttps://stackoverflow.com/questions/57681316
复制相似问题