rsync不会复制*仅*修改

时间:2015-07-05 18:19:32

标签: rsync

我使用rsync备份我的文件。我选择rysnc,因为它(应该)使用修改时间来确定是否已进行更改以及是否需要更新文件。

我使用以下命令开始备份(从我的计算机系统(debian)到便携式外置硬盘):

rsync -avz --update --delete --stats --progress --exclude-from=/home/user/scripts/ExclusionRSync --backup --backup-dir=/media/user/hdd/backups/deleted-files /home/user/ /media/user/hdd/backups/backup_user

效果很好,花了很多时间。我相信第二次会非常快(因为我没有修改文件)。不幸的是,第二,第三,第四......时间与第一次一样长。即使这些文件已经在我的便携式硬盘中,我仍然会看到我的所有文件都被复制了。

我不明白为什么rsync不会只复制修改(已知rsync是高效的,只能复制更改,我特别称之为--update选项。)

此问题的一个副作用是,所有文件在传输后立即移动到我的备份目录(已删除字段)。实际上,rsync删除之前的文件,以便在每次更新期间复制相同的文件...

1 个答案:

答案 0 :(得分:1)

我发现解决方案为an answer on Serverfault.SE。胖文件系统搞乱了时间戳:

  

FAT并不像文件那样精确地跟踪文件的修改时间   ext3(FAT仅精确到2秒钟内)。这导致   特别是rsync的令人讨厌的行为,因为它有时会决定   原始文件比备份文件更新或更旧   足够它需要重新复制数据或至少重新检查   哈希值。总而言之,它会使备份的性能非常差。如果   你必须坚持使用FAT,然后查看rsync&s -size-only和   --modify-window标志作为变通方法。