【问题标题】:Why does my rsync script do a full backup everytime?为什么我的 rsync 脚本每次都进行完整备份?
【发布时间】:2012-05-31 09:18:14
【问题描述】:

我创建了以下 rsync 脚本来执行增量备份:

rsync -arv --exclude-from '/usr/bin/exclude-list.txt' --delete /Volumes/DOCS/ /Volumes/BKUP1/DOCS/ 
&& rsync -arv --delete /Volumes/Webserver/ /Volumes/BKUP1/Webserver/

我的排除列表是

/Volumes/Webserver/.Spotlight-V100
/Volumes/Webserver/.Trashes
/Volumes/Webserver/.fseventsd

每次我运行这个备份。尽管 rsync 应该是增量备份解决方案,但它似乎每次都会遍历并复制所有文件。

例如第一次运行:

....
sites/website/sites/all/libraries/tinymce/jscripts/tiny_mce/plugins/style/js/.svn/prop-base/
sites/website/sites/all/libraries/tinymce/jscripts/tiny_mce/plugins/style/js/.svn/props/
sites/website/sites/all/libraries/tinymce/jscripts/tiny_mce/plugins/style/js/.svn/text-base/
....

第二次运行:

....
sites/website/sites/all/libraries/tinymce/jscripts/tiny_mce/plugins/style/js/.svn/prop-base/
sites/website/sites/all/libraries/tinymce/jscripts/tiny_mce/plugins/style/js/.svn/props/
sites/website/sites/all/libraries/tinymce/jscripts/tiny_mce/plugins/style/js/.svn/text-base/
....
etc...

再次复制相同的文件。我也经常遇到以下权限被拒绝错误,尽管它们在我的排除参数中被忽略了:

building file list ... rsync: opendir "/Volumes/Webserver/.Spotlight-V100" failed: Permission denied (13)
rsync: opendir "/Volumes/Webserver/.Trashes" failed: Permission denied (13)
rsync: opendir "/Volumes/Webserver/.fseventsd" failed: Permission denied (13)

有什么想法吗?我希望我可以调整这个脚本,这样它就只会复制修改过的/新的文件,并在详细输出中显示这些文件是什么。

非常感谢。

【问题讨论】:

    标签: macos backup rsync


    【解决方案1】:

    我自己也遇到过。尽管这听起来很愚蠢,但我能想到的最好的办法是文件的时间戳没有被保留。然后,当您再次执行此操作时,它会认为“嘿!这些时间戳不匹配 - 更好地同步它们!”如果您使用 -t 选项,它将发送时间戳,那么文件将被视为相同

    或者,如果您确定没有文件被修改但大小相同,您也可以使用“仅大小”选项,听上去就是这样。

    【讨论】:

      【解决方案2】:

      您是否要从不同格式的驱动器复制到 FAT32 驱动器?我的理解是 FAT32 保留一个 16 位时间戳,它只允许大约两秒的分辨率,这远不如其他驱动器格式精确。默认情况下,rsync 要求时间戳完全匹配,因此几乎每个文件都会通过此测试并被重新复制。

      要解决此问题,您需要使用 rsync 从源传递时间戳为 +/-1 秒(总范围为 2 秒)的文件。你可以通过添加

      --modify-window=1 
      

      到 rsync 命令。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-03-31
        • 2020-04-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多