我每天都在运行cronjob
,用来rsync
从 Drobo FS 复制文件,该 FS 按需autofs
作为 CIFS 共享在本地安装。为什么我会收到有关文件存在和重命名的警告?备份时文件是否正在使用中?还有其他我可以包含的选项吗rsync
?
/usr/bin/nice -n +20 /usr/bin/rsync --update -raz --progress --no-specials
--no-devices --fuzzy --delay-updates --delete-delay --exclude cache/
--exclude=.cache --exclude /local/dsm/sbin/exclude.txt /mnt/Public/myuser/
myuser@mydomain:/mnt/myfolder
RESULT CODE: 12
ERROR OUTPUT:
rsync: rename "/mnt/myfolder/myuser/Book Analysis
Project/loading_utils/.data_loader.py.MPk9YW" -> "myuser/Book Analysis
Project/loading_utils/.~tmp~/data_loader.py": File exists (17)
编辑:该--fuzzy
选项来自另一个 SE 线程。
答案1
我能够让错误消失。此用户提到使用-b
带有 - 的选项-backup-dir=DIR
,因此所有不同的文件都将进入DIR
。我没有使用过该-b
选项,但我注意到当前发生的情况。原始文件放在新创建的目录中,在本例中为.~tmp~
: ls -al myuser/Book\ Analysis\ Project/scripts/.~tmp~/ total 37 drwx------ 2 myuser domain users 1400 Jul 14 07:28 。 drwxrwxrwx 5 myuser 域用户 3640 7 月 8 日 12:09 .. -rwxrwxrwx 1 myuser 域用户 14385 7 月 5 日 14:42 book_data_extractor.py -rwxrwxrwx 1 myuser 域用户 6038 7 月 5 日 14:42 cfg_extractor.py -rwxrwxrwx 1 myuser 域用户 10963 7 月 8 日 19:44 run_book_data_extractor.py
我找到了另一个这里有建议,也就是使用--delete-excluded
,正如这位用户指出的那样:
如果您已排除文件或目录的传输,则 如果
--delete-excluded
在目标端(不一定是“远程服务器”,您可以使用它rsync
从服务器复制到本地计算机)找到它们,它将从目标端删除它们。例如,如果您使用--exclude=*.o --delete-excluded
,那么如果rsync
在目标端找到任何以 .o 结尾的文件,它将删除它们,无论它们是否存在于源目录中。
一旦 rsync 运行并删除所有.~tmp~
文件/目录,错误就会停止。
但是,-b
如果文件多次更改,则选项似乎会创建另一个子文件夹。除了更改为之外,rsnapshot
我认为这是正确的操作?最终看起来像这样:
/myuser/original-file/original-file/original-file/original-file/original-file
完整选项如下所示:--backup-dir=/path/to/original-file