I'm going to have to digest this for awhile. It makes sense, but I have to work on it a bit before I understand it enough to actually apply it.
This would make a good howto article. Thanks to both of you. On 11/17/2014 04:56 AM, Matthias Schniedermeyer wrote: > On 16.11.2014 18:38, Karl O. Pinc wrote: >> On 11/16/2014 03:53:12 PM, Joe wrote: >>> I have a lot of files (and directories) (up to a few hundred at a >>> time) >>> that I get from various sources. Some time after I get them (after >>> they >>> are already backed up), I often have to move them around and >>> normalize >>> their names. >>> >>> When I do this, rsync sees them as unrelated to the copies of these >>> files which are already on the backup destination. >> I don't know if it suits your use case but >> you could consider using hardlinks. > It should be noted that using hardlinks has 1 major caveat: > Order > > It only saves a copy when the new hardlinks appears in the hierachy > AFTER the original file. > > (This is true for "incremental"-mode (default for >=3.0). It might work > differently for <3.0 or "--no-inc-recursive"-mode, but i haven't tried.) > > Otherwise rsync will copy the "new" file and later hard link the > "old"-file to the "new"-file and not the other way around. > > So i personally use a directory '.z' in the root of a hierarchy where > each file has an additional hardlink, so i can move files around in the > hierarchy however i want. > That way rsync "see"s the '.z'-directory first and acts accordingly. > > > Such a directory can be created after the fact. > Make a directory that is LAST in sort-order. Assuming plain ASCII > filesnames: > mkdir zzzzzzzzzzz > Then link all files into that directory and rsync (Don't forged adding > "-H"). > Then rename it to be first in sort-order (on both sides!): > mv zzzzzzzzzzz .z > > And after you have made the necessary changes to your procedures to make > the additonal hardlink you are free to move around files without rsync > having to copy them each time they are moved. > > After deleting files you can use: > find .z -type f -links 1 -delete > to find and delete files that don't have an additional hardlink. > > > > -- Please use reply-all for most replies to avoid omitting the mailing list. To unsubscribe or change options: https://lists.samba.org/mailman/listinfo/rsync Before posting, read: http://www.catb.org/~esr/faqs/smart-questions.html