在两台Linux机器之间使用rsync时,我遇到了这个非常棘手的问题。我家里有一个工作站可以完成我的大部分计算,还有另一台机器可以在我之间传输文件。很长一段时间,我在两台机器之间传输文件时没有任何问题。我运行下面给出的传输命令,并且复制过的文件没有任何问题。
rsync -avz --delete-after --rsh='ssh -p 22' -u --progress $homecomp:$HOME/folder $HOME/.
最近,我开始遇到问题,几天之后使用上述命令删除的文件以及那些被转移的文件似乎在工作机器中丢失了。换句话说,删除的文件会重新出现在工作机器上,并且必须再次传输已传输的文件。在rsync运行之后,我经常检查以确保一切正常,文件总是被删除或传输。所以我不知道文件是如何消失或神奇地返回的。这些文件始终是命令最后传输的内容。
这实际上只是在我从上面的文件夹和另一个rsynced文件夹添加了一些符号链接到我的Documents文件夹之后才开始发生,我在两个系统之间进行同步。问题绝对不会每次都发生,但它发生了很多。我也使用相同的上述命令进行文档同步。消失或重新出现的文件不仅仅是sym链接的文件。
基本上,我是rsync文件,它们被转移或删除。大约一天后,传输的文件消失,删除的文件重新出现。重复。
我不确定我能提供什么其他信息而不会过分,所以希望这足以提供一些问题的想法。这不是一个可怕的问题,因为当文件消失时我可以再次rsync内容。然而,它确实耗尽了我的有线电视提供商的数据限制,这有点令人讨厌,因为当你每月超过400GB时它们会踩油门。任何帮助将不胜感激。
答案 0 :(得分:0)
不知道这是否有帮助,但我之前遇到过--delete-after问题。 大多数时候我只是使用--delete,就像这样:
rsync -az --delete -e ssh / home / foo / bar / foobar@10.0.0.1:/ home / bar /