I have an rsync job that incrementally copies files from a Windows server that I have in the field to another Windows Server that I have here in my data center. The incremental jobs run perfectly and don't take very long. I now have to migrate these jobs to a CentOS box and am currently seeding the data. One thing I'm noticing is that the subsequent jobs take almost as long as the original. I'm using the same command that I had before it's just that now it's going to a different target. The command is
rsync -v -rlt -z --chmod=a=rw,Da+x --exclude=*.mdb --exclude=*.mp3 --exclude=*.mp4 --exclude=*.dll --exclude=*.exe --exclude=*.iso --exclude=*.nsf --exclude=*.bkf --exclude=*.ntf "/mnt/server1/share1/" "/backups/server1/share1/"
Before, the backups were initiated directly from the field server via a scheduled task. Now, I've mounted the share to the CentOS box via CIFS and the job is now initiated from the CentOS box via cron.
I've run an strace and it looks like rsync is still running through every single file and copying only the ones that have changed. Are there any parameters that would alter this behaviour to only process files using, say, the archive bit and, at the same time, not delete files at the destination that have been deleted at the source (I understand that this is what the -a flag does)?