-H option causes unneccessary transfers

Albert Berger nbdspcl at gmail.com
Mon Mar 28 11:51:22 UTC 2016


when the daily system backup with rsync is performed, thousands of files (e.g. from /usr directory),
which are not modified are uselessly transferrred to the backup storage every day. 
The rsync command is the following:

rsync --update -DHAErlptgo --relative --atimes --delete-during ${SRCPATH} ${BACKUPDIR}

Quick investigation shown, that these files are hard links, and the command option related to this 
behaviour is -H: without it the unmodified files are not copied. Seemingly this situation is described 
in the rsync manual:

"If  incremental recursion is active (see --recursive), rsync may transfer a missing
hard-linked file before it finds that another link for that contents  exists  else‐
where  in  the  hierarchy.... One way to avoid this inefficiency  is  to  disable  
incremental  recursion  using the --no-inc-recursive option."

Adding --no-inc-recursive to the aforementioned command line doesn't help (are --recursive and 
--no-inc-recursive supposed to be used in one option set?). And I use --recursive to copy entire 
directory tree, including subdirectories. Could someone advise please how one can prevent copying 
unmodified hard-linked files?

A. Berger.

More information about the rsync mailing list