[Yes, I am reviving a thread from 27 months ago. Why? Because I gave up on the problem way back then and didn't move the vault. Now that I'm really trying to do this, it still doesn't make any sense... :) Matt CC'ed directly since he was the primary respondent and I have no idea if such an old thread would otherwise be noticed.]
So, having tried your solution 1 and solution 2 (long pause while Matt and/or others page in their state, probably by visiting something like http://www.mail-archive.com/rsync@lists.samba.org/msg23196.html :), I can't make either one work. Here's a transcript of what happens. Clearly I'm missing something. A, B, C are hosts; 1, 2 3 are ostensibly dates; all are representations of a dirvish vault (e.g., extensively hardlinked --link-dest backups). The src tree started out with all files with "foo" in their names all hardlinked together. Ideally, the dst tree will end up likewise. If I rsync the entire tree at once, it works fine. But the real use case can't do this, because the trees are enormous and there are dozens of them. Note that each time, not every foo* in dst winds up with all the same inode as the rest. Am I just up too late? [nsn] 21:51:34 /home/blah# rsync -aviH --stats src/ dst/ sending incremental file list .d..t...... ./ cd+++++++++ a/ cd+++++++++ a/1/ cd+++++++++ a/2/ cd+++++++++ b/ cd+++++++++ b/1/ cd+++++++++ b/2/ cd+++++++++ c/ cd+++++++++ c/1/ cd+++++++++ c/2/ >f+++++++++ c/2/foofoofoo hf+++++++++ c/1/foofoo => c/2/foofoofoo hf+++++++++ b/2/b-foo2 => c/2/foofoofoo hf+++++++++ b/1/b-foo => c/2/foofoofoo hf+++++++++ a/2/foo => c/2/foofoofoo hf+++++++++ a/1/foo => c/2/foofoofoo Number of files: 16 Number of files transferred: 1 Total file size: 24 bytes Total transferred file size: 4 bytes Literal data: 4 bytes Matched data: 0 bytes File list size: 255 File list generation time: 0.001 seconds File list transfer time: 0.000 seconds Total bytes sent: 459 Total bytes received: 175 sent 459 bytes received 175 bytes 1268.00 bytes/sec total size is 24 speedup is 0.04 [nsn] 21:52:17 /home/blah# find . -ls 224133160 4 drwxr-xr-x 4 root root 4096 Apr 24 21:51 . 224133161 4 drwxr-xr-x 5 root root 4096 Apr 24 21:42 ./src 224133166 4 drwxr-xr-x 4 root root 4096 Apr 24 21:42 ./src/b 224133168 4 drwxr-xr-x 2 root root 4096 Apr 24 21:49 ./src/b/2 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/2/b-foo2 224133167 4 drwxr-xr-x 2 root root 4096 Apr 24 21:49 ./src/b/1 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/1/b-foo 224133169 4 drwxr-xr-x 4 root root 4096 Apr 24 21:42 ./src/c 224133171 4 drwxr-xr-x 2 root root 4096 Apr 24 21:49 ./src/c/2 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/2/foofoofoo 224133170 4 drwxr-xr-x 2 root root 4096 Apr 24 21:49 ./src/c/1 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/1/foofoo 224133163 4 drwxr-xr-x 4 root root 4096 Apr 24 21:42 ./src/a 224133165 4 drwxr-xr-x 2 root root 4096 Apr 24 21:44 ./src/a/2 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/2/foo 224133164 4 drwxr-xr-x 2 root root 4096 Apr 24 21:43 ./src/a/1 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/1/foo 224133162 4 drwxr-xr-x 5 root root 4096 Apr 24 21:42 ./dst 224133175 4 drwxr-xr-x 4 root root 4096 Apr 24 21:42 ./dst/b 224133180 4 drwxr-xr-x 2 root root 4096 Apr 24 21:49 ./dst/b/2 224133183 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./dst/b/2/b-foo2 224133179 4 drwxr-xr-x 2 root root 4096 Apr 24 21:49 ./dst/b/1 224133183 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./dst/b/1/b-foo 224133176 4 drwxr-xr-x 4 root root 4096 Apr 24 21:42 ./dst/c 224133182 4 drwxr-xr-x 2 root root 4096 Apr 24 21:49 ./dst/c/2 224133183 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./dst/c/2/foofoofoo 224133181 4 drwxr-xr-x 2 root root 4096 Apr 24 21:49 ./dst/c/1 224133183 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./dst/c/1/foofoo 224133174 4 drwxr-xr-x 4 root root 4096 Apr 24 21:42 ./dst/a 224133178 4 drwxr-xr-x 2 root root 4096 Apr 24 21:44 ./dst/a/2 224133183 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./dst/a/2/foo 224133177 4 drwxr-xr-x 2 root root 4096 Apr 24 21:43 ./dst/a/1 224133183 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./dst/a/1/foo [nsn] 21:52:26 /home/blah# find . -ls | grep foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/2/b-foo2 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/1/b-foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/2/foofoofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/1/foofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/2/foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/1/foo 224133183 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./dst/b/2/b-foo2 224133183 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./dst/b/1/b-foo 224133183 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./dst/c/2/foofoofoo 224133183 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./dst/c/1/foofoo 224133183 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./dst/a/2/foo 224133183 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./dst/a/1/foo [nsn] 21:52:45 /home/blah# rm -rf dst [nsn] 21:52:58 /home/blah# mkdir dst [nsn] 21:53:00 /home/blah# find . -ls | grep foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/2/b-foo2 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/1/b-foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/2/foofoofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/1/foofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/2/foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/1/foo [nsn] 21:53:03 /home/blah# mkdir dst/a [nsn] 21:53:51 /home/blah# rsync -aviH --stats src/a/1 dst/a/ sending incremental file list cd+++++++++ 1/ >f+++++++++ 1/foo Number of files: 2 Number of files transferred: 1 Total file size: 4 bytes Total transferred file size: 4 bytes Literal data: 4 bytes Matched data: 0 bytes File list size: 35 File list generation time: 0.001 seconds File list transfer time: 0.000 seconds Total bytes sent: 99 Total bytes received: 35 sent 99 bytes received 35 bytes 268.00 bytes/sec total size is 4 speedup is 0.03 [nsn] 21:54:00 /home/blah# find . -ls | grep foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/2/b-foo2 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/1/b-foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/2/foofoofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/1/foofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/2/foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/1/foo 224133176 4 -rw-r--r-- 1 root root 4 Apr 24 21:43 ./dst/a/1/foo [nsn] 21:54:05 /home/blah# mkdir dst/b [nsn] 21:54:50 /home/blah# rsync -aviH --stats --link-dest dst/a/1 src/b/1 dst/b/ sending incremental file list --link-dest arg does not exist: dst/a/1 cd+++++++++ 1/ >f+++++++++ 1/b-foo Number of files: 2 Number of files transferred: 1 Total file size: 4 bytes Total transferred file size: 4 bytes Literal data: 4 bytes Matched data: 0 bytes File list size: 41 File list generation time: 0.001 seconds File list transfer time: 0.000 seconds Total bytes sent: 105 Total bytes received: 35 sent 105 bytes received 35 bytes 280.00 bytes/sec total size is 4 speedup is 0.03 [nsn] 21:54:54 /home/blah# find . -ls | grep foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/2/b-foo2 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/1/b-foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/2/foofoofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/1/foofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/2/foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/1/foo 224133179 4 -rw-r--r-- 1 root root 4 Apr 24 21:43 ./dst/b/1/b-foo 224133176 4 -rw-r--r-- 1 root root 4 Apr 24 21:43 ./dst/a/1/foo [nsn] 21:55:16 /home/blah# rm dst/b/1/b-foo [nsn] 21:55:42 /home/blah# rsync -aviH --stats --link-dest /home/blah/dst/a/1 src/b/1 dst/b/ sending incremental file list .d..t...... 1/ >f+++++++++ 1/b-foo Number of files: 2 Number of files transferred: 1 Total file size: 4 bytes Total transferred file size: 4 bytes Literal data: 4 bytes Matched data: 0 bytes File list size: 41 File list generation time: 0.001 seconds File list transfer time: 0.000 seconds Total bytes sent: 105 Total bytes received: 35 sent 105 bytes received 35 bytes 280.00 bytes/sec total size is 4 speedup is 0.03 [nsn] 21:56:00 /home/blah# find . -ls | grep foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/2/b-foo2 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/1/b-foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/2/foofoofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/1/foofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/2/foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/1/foo 224133179 4 -rw-r--r-- 1 root root 4 Apr 24 21:43 ./dst/b/1/b-foo 224133176 4 -rw-r--r-- 1 root root 4 Apr 24 21:43 ./dst/a/1/foo [nsn] 21:56:06 /home/blah# rm dst/b/1/b-foo [nsn] 21:56:17 /home/blah# rsync -aviH --stats --link-dest /home/blah/dst/a/1 /home/blah/src/b/1 /home/blah/dst/b/ sending incremental file list .d..t...... 1/ >f+++++++++ 1/b-foo Number of files: 2 Number of files transferred: 1 Total file size: 4 bytes Total transferred file size: 4 bytes Literal data: 4 bytes Matched data: 0 bytes File list size: 41 File list generation time: 0.001 seconds File list transfer time: 0.000 seconds Total bytes sent: 105 Total bytes received: 35 sent 105 bytes received 35 bytes 280.00 bytes/sec total size is 4 speedup is 0.03 [nsn] 21:58:18 /home/blah# find . -ls | grep foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/2/b-foo2 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/1/b-foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/2/foofoofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/1/foofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/2/foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/1/foo 224133179 4 -rw-r--r-- 1 root root 4 Apr 24 21:43 ./dst/b/1/b-foo 224133176 4 -rw-r--r-- 1 root root 4 Apr 24 21:43 ./dst/a/1/foo [nsn] 21:58:21 /home/blah# rm dst/b/1/b-foo [nsn] 21:58:56 /home/blah# rsync -aviH --stats --link-dest /home/blah/dst/a/1 /home/blah/src/b/1/ /home/blah/dst/b/1/ sending incremental file list .d..t...... ./ >f+++++++++ b-foo Number of files: 2 Number of files transferred: 1 Total file size: 4 bytes Total transferred file size: 4 bytes Literal data: 4 bytes Matched data: 0 bytes File list size: 36 File list generation time: 0.001 seconds File list transfer time: 0.000 seconds Total bytes sent: 95 Total bytes received: 34 sent 95 bytes received 34 bytes 258.00 bytes/sec total size is 4 speedup is 0.03 [nsn] 21:59:08 /home/blah# find . -ls | grep foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/2/b-foo2 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/1/b-foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/2/foofoofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/1/foofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/2/foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/1/foo 224133179 4 -rw-r--r-- 1 root root 4 Apr 24 21:43 ./dst/b/1/b-foo 224133176 4 -rw-r--r-- 1 root root 4 Apr 24 21:43 ./dst/a/1/foo [nsn] 21:59:13 /home/blah# rm dst/b/1/b-foo [nsn] 22:19:22 /home/blah# rsync -aviH --stats src/ dst/ sending incremental file list .d..t...... ./ .d..t...... a/ cd+++++++++ a/2/ hf+++++++++ a/2/foo => a/1/foo .d..t...... b/ .d..t...... b/1/ hf+++++++++ b/1/b-foo => a/1/foo cd+++++++++ b/2/ hf+++++++++ b/2/b-foo2 => a/1/foo cd+++++++++ c/ cd+++++++++ c/1/ hf+++++++++ c/1/foofoo => a/1/foo cd+++++++++ c/2/ hf+++++++++ c/2/foofoofoo => a/1/foo Number of files: 16 Number of files transferred: 0 Total file size: 24 bytes Total transferred file size: 0 bytes Literal data: 0 bytes Matched data: 0 bytes File list size: 255 File list generation time: 0.001 seconds File list transfer time: 0.000 seconds Total bytes sent: 359 Total bytes received: 103 sent 359 bytes received 103 bytes 924.00 bytes/sec total size is 24 speedup is 0.05 [nsn] 22:19:42 /home/blah# find . -ls | grep foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/2/b-foo2 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/1/b-foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/2/foofoofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/1/foofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/2/foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/1/foo 224133176 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./dst/b/2/b-foo2 224133176 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./dst/b/1/b-foo 224133176 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./dst/c/2/foofoofoo 224133176 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./dst/c/1/foofoo 224133176 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./dst/a/2/foo 224133176 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./dst/a/1/foo [nsn] 22:19:46 /home/blah# la dst/*/2/*foo* -rw-r--r-- 6 root root 4 Apr 24 21:43 dst/a/2/foo -rw-r--r-- 6 root root 4 Apr 24 21:43 dst/b/2/b-foo2 -rw-r--r-- 6 root root 4 Apr 24 21:43 dst/c/2/foofoofoo [nsn] 22:20:05 /home/blah# rm dst/*/2/*foo* [nsn] 22:20:14 /home/blah# find . -ls | grep foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/2/b-foo2 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/1/b-foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/2/foofoofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/1/foofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/2/foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/1/foo 224133176 4 -rw-r--r-- 3 root root 4 Apr 24 21:43 ./dst/b/1/b-foo 224133176 4 -rw-r--r-- 3 root root 4 Apr 24 21:43 ./dst/c/1/foofoo 224133176 4 -rw-r--r-- 3 root root 4 Apr 24 21:43 ./dst/a/1/foo [nsn] 22:20:17 /home/blah# rsync -aviH --stats --link-dest /home/blah/dst/a/1 /home/blah/src/a/2/ /home/blah/dst/a/2/ sending incremental file list .d..t...... ./ Number of files: 2 Number of files transferred: 0 Total file size: 4 bytes Total transferred file size: 0 bytes Literal data: 0 bytes Matched data: 0 bytes File list size: 34 File list generation time: 0.001 seconds File list transfer time: 0.000 seconds Total bytes sent: 46 Total bytes received: 15 sent 46 bytes received 15 bytes 122.00 bytes/sec total size is 4 speedup is 0.07 [nsn] 22:38:54 /home/blah# find . -ls | grep foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/2/b-foo2 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/1/b-foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/2/foofoofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/1/foofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/2/foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/1/foo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/b/1/b-foo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/c/1/foofoo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/a/2/foo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/a/1/foo [nsn] 22:39:17 /home/blah# rsync -aviH --stats --link-dest /home/blah/dst/a/1 --link-dest /home/blah/dst/a/2 /home/blah/src/b/2/ /home/blah/dst/b/2/ sending incremental file list .d..t...... ./ >f+++++++++ b-foo2 Number of files: 2 Number of files transferred: 1 Total file size: 4 bytes Total transferred file size: 4 bytes Literal data: 4 bytes Matched data: 0 bytes File list size: 37 File list generation time: 0.001 seconds File list transfer time: 0.000 seconds Total bytes sent: 96 Total bytes received: 34 sent 96 bytes received 34 bytes 260.00 bytes/sec total size is 4 speedup is 0.03 [nsn] 22:49:27 /home/blah# find . -ls | grep foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/2/b-foo2 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/1/b-foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/2/foofoofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/1/foofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/2/foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/1/foo 224133184 4 -rw-r--r-- 1 root root 4 Apr 24 21:43 ./dst/b/2/b-foo2 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/b/1/b-foo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/c/1/foofoo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/a/2/foo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/a/1/foo [nsn] 22:49:31 /home/blah# rm dst/b/2/b-foo2 [nsn] 23:03:32 /home/blah# rsync -aviH --stats --link-dest /home/blah/dst/a/1 --link-dest /home/blah/dst/a/2 /home/blah/src/b/1/ --link-dest /home/blah/dst/a/2 /home/blah/src/b/2/ /home/blah/dst/b/2/ sending incremental file list .d..t...... ./ >f+++++++++ b-foo2 hf+++++++++ b-foo => b-foo2 Number of files: 4 Number of files transferred: 1 Total file size: 8 bytes Total transferred file size: 4 bytes Literal data: 4 bytes Matched data: 0 bytes File list size: 60 File list generation time: 0.001 seconds File list transfer time: 0.000 seconds Total bytes sent: 133 Total bytes received: 48 sent 133 bytes received 48 bytes 362.00 bytes/sec total size is 8 speedup is 0.04 [nsn] 23:04:25 /home/blah# find . -ls | grep foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/2/b-foo2 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/1/b-foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/2/foofoofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/1/foofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/2/foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/1/foo 224133184 4 -rw-r--r-- 2 root root 4 Apr 24 21:43 ./dst/b/2/b-foo 224133184 4 -rw-r--r-- 2 root root 4 Apr 24 21:43 ./dst/b/2/b-foo2 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/b/1/b-foo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/c/1/foofoo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/a/2/foo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/a/1/foo [nsn] 23:04:30 /home/blah# rm dst/b/2/b-foo dst/b/2/b-foo2 [nsn] 23:30:26 /home/blah# find . -ls | grep foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/2/b-foo2 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/1/b-foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/2/foofoofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/1/foofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/2/foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/1/foo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/b/1/b-foo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/c/1/foofoo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/a/2/foo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/a/1/foo [nsn] 23:30:27 /home/blah# rsync -aviH --stats --link-dest /home/blah/dst/a/1 --link-dest /home/blah/dst/a/2 --link-dest /home/blah/src/b/1/ /home/blah/src/b/2 /home/blah/dst/b/2 sending incremental file list cd+++++++++ 2/ >f+++++++++ 2/b-foo2 Number of files: 2 Number of files transferred: 1 Total file size: 4 bytes Total transferred file size: 4 bytes Literal data: 4 bytes Matched data: 0 bytes File list size: 42 File list generation time: 0.001 seconds File list transfer time: 0.000 seconds Total bytes sent: 106 Total bytes received: 35 sent 106 bytes received 35 bytes 282.00 bytes/sec total size is 4 speedup is 0.03 [nsn] 23:31:56 /home/blah# find . -ls | grep foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/2/b-foo2 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/1/b-foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/2/foofoofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/1/foofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/2/foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/1/foo 224133185 4 -rw-r--r-- 1 root root 4 Apr 24 21:43 ./dst/b/2/2/b-foo2 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/b/1/b-foo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/c/1/foofoo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/a/2/foo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/a/1/foo [nsn] 23:31:59 /home/blah# rsync -aviH --stats --link-dest /home/blah/dst/a/1 --link-dest /home/blah/dst/a/2 --link-dest /home/blah/dst/b/1/ /home/blah/src/b/2 /home/blah/dst/b/2 sending incremental file list Number of files: 2 Number of files transferred: 0 Total file size: 4 bytes Total transferred file size: 0 bytes Literal data: 0 bytes Matched data: 0 bytes File list size: 42 File list generation time: 0.001 seconds File list transfer time: 0.000 seconds Total bytes sent: 56 Total bytes received: 13 sent 56 bytes received 13 bytes 138.00 bytes/sec total size is 4 speedup is 0.06 [nsn] 23:41:11 /home/blah# rm dst/b/2/2/b-foo2 [nsn] 23:41:25 /home/blah# rmdir dst/b/2/2 [nsn] 23:41:28 /home/blah# find . -ls | grep foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/2/b-foo2 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/1/b-foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/2/foofoofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/1/foofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/2/foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/1/foo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/b/1/b-foo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/c/1/foofoo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/a/2/foo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/a/1/foo [nsn] 23:41:32 /home/blah# rsync -aviH --stats --link-dest /home/blah/dst/a/1 --link-dest /home/blah/dst/a/2 --link-dest /home/blah/dst/b/1/ /home/blah/src/b/2/ /home/blah/dst/b/2 sending incremental file list .d..t...... ./ >f+++++++++ b-foo2 Number of files: 2 Number of files transferred: 1 Total file size: 4 bytes Total transferred file size: 4 bytes Literal data: 4 bytes Matched data: 0 bytes File list size: 37 File list generation time: 0.001 seconds File list transfer time: 0.000 seconds Total bytes sent: 96 Total bytes received: 34 sent 96 bytes received 34 bytes 260.00 bytes/sec total size is 4 speedup is 0.03 [nsn] 00:15:41 /home/blah# find . -ls | grep foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/2/b-foo2 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/1/b-foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/2/foofoofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/1/foofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/2/foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/1/foo 224133184 4 -rw-r--r-- 1 root root 4 Apr 24 21:43 ./dst/b/2/b-foo2 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/b/1/b-foo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/c/1/foofoo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/a/2/foo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/a/1/foo [nsn] 00:15:45 /home/blah# rm dst/b/2/b-foo2 [nsn] 00:15:50 /home/blah# find . -ls | grep foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/2/b-foo2 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/1/b-foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/2/foofoofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/1/foofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/2/foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/1/foo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/b/1/b-foo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/c/1/foofoo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/a/2/foo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/a/1/foo [nsn] 00:16:34 /home/blah# mkdir linkdest [nsn] 00:20:39 /home/blah# cd linkdest [nsn] 00:20:42 /home/blah/linkdest# mkdir b c [nsn] 00:20:45 /home/blah/linkdest# cd b [nsn] 00:20:45 /home/blah/linkdest/b# lk 2 /home/blah/dst/a/1 [nsn] 00:20:58 /home/blah/linkdest/b# cd ../c [nsn] 00:21:02 /home/blah/linkdest/c# lk 2 /home/blah/dst/a/1 [nsn] 00:21:03 /home/blah/linkdest/c# cd .. [nsn] 00:21:05 /home/blah/linkdest# find . -ls 224133184 4 drwxr-xr-x 4 root root 4096 Apr 25 00:20 . 224133185 4 drwxr-xr-x 2 root root 4096 Apr 25 00:20 ./b 224133187 0 lrwxrwxrwx 1 root root 39 Apr 25 00:20 ./b/2 -> /home/blah/dst/a/1 224133186 4 drwxr-xr-x 2 root root 4096 Apr 25 00:21 ./c 224133188 0 lrwxrwxrwx 1 root root 39 Apr 25 00:21 ./c/2 -> /home/blah/dst/a/1 [nsn] 00:21:07 /home/blah/linkdest# cd .. [nsn] 00:21:17 /home/blah# find . -ls | grep foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/2/b-foo2 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/1/b-foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/2/foofoofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/1/foofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/2/foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/1/foo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/b/1/b-foo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/c/1/foofoo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/a/2/foo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/a/1/foo [nsn] 00:21:25 /home/blah# rsync -aviH --stats --link-dest /home/blah/linkdest /home/blah/src/b/2/ /home/blah/dst/b/2 sending incremental file list .d..t...... ./ >f+++++++++ b-foo2 Number of files: 2 Number of files transferred: 1 Total file size: 4 bytes Total transferred file size: 4 bytes Literal data: 4 bytes Matched data: 0 bytes File list size: 37 File list generation time: 0.001 seconds File list transfer time: 0.000 seconds Total bytes sent: 96 Total bytes received: 34 sent 96 bytes received 34 bytes 260.00 bytes/sec total size is 4 speedup is 0.03 [nsn] 00:22:07 /home/blah# find . -ls | grep foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/2/b-foo2 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/b/1/b-foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/2/foofoofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/c/1/foofoo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/2/foo 224133172 4 -rw-r--r-- 6 root root 4 Apr 24 21:43 ./src/a/1/foo 224133189 4 -rw-r--r-- 1 root root 4 Apr 24 21:43 ./dst/b/2/b-foo2 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/b/1/b-foo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/c/1/foofoo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/a/2/foo 224133176 4 -rw-r--r-- 4 root root 4 Apr 24 21:43 ./dst/a/1/foo [nsn] 00:22:10 /home/blah# rsync --version rsync version 3.0.7 protocol version 30 Copyright (C) 1996-2009 by Andrew Tridgell, Wayne Davison, and others. Web site: http://rsync.samba.org/ Capabilities: 64-bit files, 64-bit inums, 64-bit timestamps, 64-bit long ints, socketpairs, hardlinks, symlinks, IPv6, batchfiles, inplace, append, ACLs, xattrs, iconv, symtimes rsync comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute it under certain conditions. See the GNU General Public Licence for details. [nsn] 00:28:08 /home/blah# -- 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