Hi folks; thanks for the responses.
I figured out the problem. My arguments to rsync were causing the
remote tree to be reconstructed one level down from where I wanted it to
go, which obviously caused all the files to be sent over. Because I was
using -n just to see what would happen, so no actual files were being
created, I didn't realize that this was the reason it was sending
everything.
I was using:
rsync -avz --stats --rsync-path=/usr/global/bin/rsync --delete \
/foo remotehost:/remote/foo
This was creating /remote/foo/foo on remotehost, instead of just
/remote/foo as I wanted. I switched the commandline to:
rsync -avz --stats --rsync-path=/usr/global/bin/rsync --delete \
/foo/ remotehost:/remote/foo
^
(note extra "/" after source directory) and it worked.
I still feel rsync could stand some improvement in its verbose output
levels; this makes two things I'd like to see:
1) A line specifying _why_ each file was eligible for update (modtime,
uid/gid change, whatever).
2) Output showing the fully-qualified source *and* destination
pathnames, so it's easy to see when rsync is going to put a
directory hierarchy where you don't expect it.
Anyway, after fixing this rsync -n was able to determine that only
20-odd files needed to be updated on my 2.7G filesystem in only 5
minutes!
Not bad at all, and blows rdist (also in verify mode) out of the water
(I don't know what rdist is doing, but it takes hours to do it).
--
-------------------------------------------------------------------------------
Paul D. Smith <[EMAIL PROTECTED]> HASMAT--HA Software Methods & Tools
"Please remain calm...I may be mad, but I am a professional." --Mad Scientist
-------------------------------------------------------------------------------
These are my opinions---Nortel Networks takes no responsibility for them.