>You're using the wrong tool -- you want a binary diff program instead. >Run that on your files, then rsync/tar/cp/whatever the diffs.
Not exactly, I need the rsync algorithm to check the new version of the file against the checksums of that file calculated when the previous backup was made, and to obtain the delta needed to upgrade the previous backup to the current state (in a similar way the rsync batch-mode delta file is saved) >I don't use it myself, but a Google search for "binary diff" lands >XDelta <http://sourceforge.net/projects/xdelta/>. I don't need to have different version of the same file in the same filsystem. I need just to backup a filesystem in a incremental way such as much tape space is saved. I think the most similar package to what I would like to write is rdiff (a sample program of librsync inside rproxy project). Again, what I've asked at the beginning was some advice if someone thinks it is useful to modify rsync batch mode to work as rdiff, otherwise I start writing something new. BTW rdiff is an example program that uses librsync. It permits to do 3 different things: 1) fom a file calculate its checksums. rdiff [options] signature old-file signature-file 2) from a modified file and previous checksums calculate the delta. rdiff [options] delta signature-file new-file delta-file 3) from a unmodified file and a delta file obtain the new file. rdiff [options] patch basis-file delta-file new-file If I decide to start from this program, what I need is to make it work for a filesystem and not just a file. I don't know which of the two options is easier (modifying rsync / modifying or rewriting rdiff), is there in this list some developer that can suggest me the right path to choose? Thanks. Diego Liziero. -- To unsubscribe or change options: http://lists.samba.org/mailman/listinfo/rsync Before posting, read: http://www.tuxedo.org/~esr/faqs/smart-questions.html