rsync rewrites all blocks of large files although it uses delta transfer

Delian Krustev krustev at krustev.net
Wed Feb 13 22:26:57 UTC 2019


On Wednesday, February 13, 2019 11:29:44 AM EET Kevin Korb via rsync 
<rsync at lists.samba.org> wrote:
> With --backup in order to end up with 2 files it has to write out a
> whole new file.
> Sure, it only sent the differences (normally that means
> over the network but there is no network here) but the writing end was
> told to duplicate the file being updated before updating it.

The copy is needed for the comparison of the blocks as "--inplace" overwrites 
the destination file. I've tried without "--backup" but then the delta 
transfers too much data - close to the size of the backed-up files.

The copy is in a temp file system which is discarded after the backup (by "rm 
-rf"). This temp filesystem is not log structured or copy-on-write so having a 
copy there is not a big problem. Although I don't want a backup of all files 
which are modified but rather a TMPDIR.

The ideal workflow would be to compare SRC and DST and write changed blocks to 
the TMPDIR, then read them from TMPDIR and apply it to DST.



 
Cheers
--
Delian





More information about the rsync mailing list