我的rsnapshot冻结没有错误

我尝试做备份系统。 我尝试使用rsnapshot

描述:
带有rsnapshot的客户机将数据放在sshfs-mounted文件夹(sftp备份服务器)中。 我做了ssh-key,装上它,一切正常。

在rsnapshot conf中,我启用了link_dest = 1,因为默认值0使得rsnapshot关于ssh挂载文件夹上的硬链接。

错误描述:
我使用cron创build了rsnapshot autostart。 几天后,我检查了我的文件夹,我看到他们是一个小尺寸。 (所有数据都是4GB,但是文件夹大约是300MB,400MB)。

我检查了复制到ssh文件夹。 cp data ssh_folder. 一切顺利,不那么慢:大约30分钟,我看到我的4GB的SSH文件夹。

好的,我用文件verbose手动启动了rsnapshot。

 rsnapshot -V hourly 

唯一的错误是chown错误(ssh不是那么容易)也没有在日志文件中。 这只是冻结一些文件。

这是第一个奇怪的想法。 第二个是:我尝试进行增量备份,尽量减less同步到ssh的时间。 但是,当我检查我的新的小时目录,我只看到我的数据的一部分,而不是新的数据或旧数据的链接。 只是在新文件夹中的相同的文件。

非常大的感谢任何意见感谢满意。

UPD:没有大文件。 这是一个Web服务器

UPD:使用strace

 select(5, [], [4], [], {tv_sec=60, tv_usec=0}) = 0 (Timeout) select(5, [], [4], [], {tv_sec=60, tv_usec=0}) = 0 (Timeout) select(5, [], [4], [], {tv_sec=60, tv_usec=0}) = 0 (Timeout) select(5, [], [4], [], {tv_sec=60, tv_usec=0}) = 0 (Timeout) select(5, [], [4], [], {tv_sec=60, tv_usec=0}) = 0 (Timeout) select(5, [], [4], [], {tv_sec=60, tv_usec=0}) = 0 (Timeout) select(5, [], [4], [], {tv_sec=60, tv_usec=0}) = 0 (Timeout) select(5, [], [4], [], {tv_sec=60, tv_usec=0}) = 0 (Timeout) select(5, [], [4], [], {tv_sec=60, tv_usec=0}) = 0 (Timeout) select(5, [], [4], [], {tv_sec=60, tv_usec=0}) = 0 (Timeout) select(5, [], [4], [], {tv_sec=60, tv_usec=0}) = 0 (Timeout) select(5, [], [4], [], {tv_sec=60, tv_usec=0}) = 0 (Timeout) select(5, [], [4], [], {tv_sec=60, tv_usec=0}) = 0 (Timeout) select(5, [], [4], [], {tv_sec=60, tv_usec=0}) = 0 (Timeout) 

UPD:我认为我find了解决办法。 我的备份文件夹在我的主文件夹,我尝试备份。 排除之后,一切似乎都没有问题,但没有。 0(超时)晚了很多。 从其他(接收方)的strace:

 --- SIGSTOP {si_signo=SIGSTOP, si_code=SI_USER, si_pid=124744, si_uid=0} --- --- stopped by SIGSTOP --- select(5, [3], [], NULL, NULL) = ? ERESTARTNOHAND (To be restarted if no handler) --- SIGCONT {si_signo=SIGCONT, si_code=SI_USER, si_pid=124744, si_uid=0} --- select(5, [3], [], NULL, NULL) = ? ERESTARTNOHAND (To be restarted if no handler) --- SIGSTOP {si_signo=SIGSTOP, si_code=SI_USER, si_pid=124744, si_uid=0} --- --- stopped by SIGSTOP --- select(5, [3], [], NULL, NULL) = ? ERESTARTNOHAND (To be restarted if no handler) --- SIGCONT {si_signo=SIGCONT, si_code=SI_USER, si_pid=124744, si_uid=0} --- select(5, [3], [], NULL, NULL) = ? ERESTARTNOHAND (To be restarted if no handler) --- SIGSTOP {si_signo=SIGSTOP, si_code=SI_USER, si_pid=124744, si_uid=0} --- --- stopped by SIGSTOP --- select(5, [3], [], NULL, NULL) = ? ERESTARTNOHAND (To be restarted if no handler) --- SIGCONT {si_signo=SIGCONT, si_code=SI_USER, si_pid=124744, si_uid=0} --- select(5, [3], [], NULL, NULL) = ? ERESTARTNOHAND (To be restarted if no handler) --- SIGSTOP {si_signo=SIGSTOP, si_code=SI_USER, si_pid=124744, si_uid=0} --- --- stopped by SIGSTOP --- select(5, [3], [], NULL, NULL) = ? ERESTARTNOHAND (To be restarted if no handler) --- SIGCONT {si_signo=SIGCONT, si_code=SI_USER, si_pid=124744, si_uid=0} --- select(5, [3], [], NULL, NULL) = ? ERESTARTNOHAND (To be restarted if no handler) --- SIGSTOP {si_signo=SIGSTOP, si_code=SI_USER, si_pid=124744, si_uid=0} --- --- stopped by SIGSTOP --- select(5, [3], [], NULL, NULL) = ? ERESTARTNOHAND (To be restarted if no handler) --- SIGCONT {si_signo=SIGCONT, si_code=SI_USER, si_pid=124744, si_uid=0} --- select(5, [3], [], NULL, NULL) = ? ERESTARTNOHAND (To be restarted if no handler) --- SIGCONT {si_signo=SIGCONT, si_code=SI_USER, si_pid=124744, si_uid=0} --- select(5, [3], [], NULL, NULL) = ? ERESTARTNOHAND (To be restarted if no handler) --- SIGCONT {si_signo=SIGCONT, si_code=SI_USER, si_pid=124744, si_uid=0} --- select(5, [3], [], NULL, NULL) = ? ERESTARTNOHAND (To be restarted if no handler) --- SIGCONT {si_signo=SIGCONT, si_code=SI_USER, si_pid=124744, si_uid=0} --- select(5, [3], [], NULL, NULL) = ? ERESTARTNOHAND (To be restarted if no handler) --- SIGCONT {si_signo=SIGCONT, si_code=SI_USER, si_pid=124744, si_uid=0} --- select(5, [3], [], NULL, NULL) = ? ERESTARTNOHAND (To be restarted if no handler) --- SIGCONT {si_signo=SIGCONT, si_code=SI_USER, si_pid=124744, si_uid=0} --- select(5, [3], [], NULL, NULL) = ? ERESTARTNOHAND (To be restarted if no handler) --- SIGCONT {si_signo=SIGCONT, si_code=SI_USER, si_pid=124744, si_uid=0} --- select(5, [3], [], NULL, NULL) = ? ERESTARTNOHAND (To be restarted if no handler) --- SIGCONT {si_signo=SIGCONT, si_code=SI_USER, si_pid=124744, si_uid=0} --- select(5, [3], [], NULL, NULL) = ? ERESTARTNOHAND (To be restarted if no handler) --- SIGCONT {si_signo=SIGCONT, si_code=SI_USER, si_pid=124744, si_uid=0} --- select(5, [3], [], NULL, NULL) = ? ERESTARTNOHAND (To be restarted if no handler) --- SIGCONT {si_signo=SIGCONT, si_code=SI_USER, si_pid=124744, si_uid=0} --- select(5, [3], [], NULL, NULL) = ? ERESTARTNOHAND (To be restarted if no handler) 

不要使用sshfs,因为它的稳定性并不总是一stream,而且rsync的行为可能是次优的。

而是将rsnapshotconfiguration为直接使用rsync-over-ssh。 来自rsnapshot手册页的示例:

备份[email protected]:/ etc / foo.com/

查看rsync手册页也可获取更多信息。

我认为我find了解决办法。 有2个错误。
首先 – 我的备份文件夹在同步文件夹中。 (我在/ home / backup中挂载了备份服务器,但同步整个/ home)。
所以rsync总是给超时(0)试图做这个奇怪的recursion任务。

第二个问题是连接。 同步开始一段时间后,服务器和客户端之间出现了一些不同步现象(提供者的限制我认为,不是连接问题导致它被正确安装)。 这也导致超时(0)。
如果只有我有第二个错误 – 这完全没有问题,因为rsync的几个启动和文件夹将在服务器上。 但是,因为我有第一个错误,rsync不能继续同步,并开始一次又一次。