Les Mikesell <lesmikesell <at> gmail.com> writes: > > Shawn Perry wrote: > > Take a look at how Unison does it's compares. > > > > It's not impossible - it just can't be done with existing tools > and storage scheme. >
This look indeed like a complicated problem. There is an rsync patch which add an option --link-by-hash=DIR pretty similar to the pool of backuppc. It create hard links of similar files ordered by md4 sum on the fly during the sync process. I tested it and I'm looking at the C code right now. I'm sure there is less than 5 lines to make it skip a remote file whom the hash match a file in the pool. It imply a patched rsync. That may be acceptable for precise cases like mine where bandwidth is critical but only on the backuppc side of rsync (the client). This mean the rsyncd part will stay regular rsync and send sums of the whole files not following BackupPC_Link logic. So It would imply in turn to change the way BackupPC_Link manage the pool, etc... And there is also the duplicate hash problem. My better idea so far would be to use a patched rsync and a separate pool directory for rsyncd method only. Matching against this pool would be done only if the classic matching by path failed. The matching file would also not be just hard-linked but rather serve as base file for rsync update, so in case we have several candidate one can safely use the first coming file. This way it can be integrated in BackupPC only with some host configuration. Malik. ------------------------------------------------------------------------------ This SF.Net email is sponsored by the Verizon Developer Community Take advantage of Verizon's best-in-class app development support A streamlined, 14 day to market process makes app distribution fast and easy Join now and get one step closer to millions of Verizon customers http://p.sf.net/sfu/verizon-dev2dev _______________________________________________ BackupPC-users mailing list BackupPC-users@lists.sourceforge.net List: https://lists.sourceforge.net/lists/listinfo/backuppc-users Wiki: http://backuppc.wiki.sourceforge.net Project: http://backuppc.sourceforge.net/