我正在使用 rsync 通过 cygwin 从 Windows 8.1 计算机创建增量备份。它运行良好,已经超过一年了。但几周前它开始重新复制现有文件(并且这些文件在备份光盘上的修改日期错误。)
重新复制的文件始终是可执行文件:exe、bat、js、vbs、dll
命令行如下:
rsync.exe“-rltv”“--progress”“--hard-links”“--delete”“--ignore-errors”“--force”“--link-dest=../../2016.07.04_09.52.23/?????”“/cygdrive/G/?????/”“/cygdrive/W/?????/2016.08.15_13.18.49/?????”
我尝试禁用防病毒保护,但没有成功。
是什么导致了这个问题?为什么修改日期突然错误地传输了?为什么只针对可执行文件?
最近我发现我遇到的问题也出现在其他人身上,只不过他使用的应用程序不同:http://www.2brightsparks.com/bb/viewtopic.php?t=11567看起来像是 Windows 复制文件的问题……?
答案1
备份磁盘上的修改日期错误是怎么回事?Rsync 使用修改时间(和大小)来确定是否应该跳过文件。如果这些数据出了问题,这可能解释了为什么你遇到了麻烦。
试试看。您可以附加参数--checksum
,让 rsync 根据校验和而不是修改时间和大小跳过文件。
rsync 命令
-c, --checksum skip based on checksum, not mod-time & size
答案2
尝试使用 rsync:
rsync --modify-window=2