Rsync 意外关闭

Rsync 意外关闭

我有一个在大约 100 个客户端上运行的备份脚本,并且通常工作正常。现在我遇到了 1 位通常没有任何问题的客户的问题

这条线路通常运行良好。

rsync -z --partial --times  -vvvvv --recursive --log-file="/backup/clientx/clientx.debug-star2.log" --rsync-path="nice -n19 ionice -c3  rsync" --timeout=3600 --delete-after --bwlimit=500 --rsh "nice -n19 ionice -c3  ssh -o StrictHostKeyChecking=no -i /root/.ssh/clientx_rsync_id_rsa" /backup/clientx/dir1/ backup@remote-server:/backup/clientx/dir1

它启动正常并开始构建文件列表。

note: iconv_open("UTF-8", "UTF-8") succeeded.
(Client) Protocol versions: remote=30, negotiated=30
building file list ...
[sender] change_dir(/backup/clinetx/dir1)
[sender] make_file(.,*,0)
[sender] make_file(inc,*,2)
[sender] make_file(clientx.log,*,2)
[sender] make_file(full,*,2)
[sender] make_file(inc/2015,*,2)
[sender] make_file(inc/2007,*,2)
[sender] make_file(inc/2012,*,2)

但它停止了,没有构建文件列表并退出。

rsync: connection unexpectedly closed (9 bytes received so far) [sender]
[sender] _exit_cleanup(code=12, file=io.c, line=601): entered
rsync error: unexplained error (code 255) at io.c(601) [sender=3.0.7]
[sender] _exit_cleanup(code=12, file=io.c, line=601): about to call exit(255)

但如果我在另一个目录上尝试相同的操作,那就没问题了。唯一的区别是dir2大约有 1600 个文件和dir1大约 4300 个文件。

正如我所说,它在具有相同数量的文件的所有其他客户端上运行良好。

ls -ld
dir1 - drwxrwx--- 4 root nagios 4096 May 23 20:59 .
dir2 - drwxrwx--- 7 root nagios 4096 Feb 22  2016 .

有人知道出了什么问题吗?

答案1

这里的情况相同:一个古老的备份脚本可以在任何地方工作,除了 ISP 是 AT&T 光纤服务的单个远程站点上的主机;调制解调器有一个Arris。它总是工作很短的时间(< 2 秒),然后连接突然终止。

唉,我最黑暗的怀疑被证明是真的。通过反复试验,对 rsync“--bwlimit”参数使用不同的值,我发现连接不会因“--bwlimit=56”或更少而中断,但它是总是用“--bwlimit=57”或更多中断。

在远程站点,我查看了 Arris 调制解调器的用户界面(192.168.1.254),没有发现任何需要调整的地方。所有端口都通过它转发到那里的 OpenWRT 18.06 路由器(“DMZplus 模式”)。该路由器与其他几个站点的其他几台路由器是同一台路由器,具有非常相似的设置,但没有一个路由器存在这种连接中断问题。

将通信限制为 56 KB/秒是一个糟糕的解决方案,但至少它是一个看起来确实有效的解决方案。确实令人震惊。当心 AT&T。 (在这个特定的偏远地区享有垄断地位。)

答案2

您正在尝试使用 id 备份到远程系统,backup但远程系统上的权限阻止该帐户访问目标目录。

您需要放宽权限,以便用户backup可以写入dir1dir2或者使用该root帐户作为目标用户。

相关内容