rsync feature suggestion

Hadmut Danisch hadmut at
Fri Jan 3 16:34:00 EST 2003


I'd like to suggest a new feature to rsync.

Currently, rsync generates a recursive list of file
existing a the source directory, modifies this list by
includes and excludes, and then copies these files.
That's pretty good in most, but not all cases.

I am mirroring a debian archive, but unfortunately, 
debian mixes all files of several distributions in a 
subtree /pool. There is no way to select only the files
of a certain distribution through a simple exclude/include

There is a tool called debmirror, which first downloads 
the distribution index files, extracts all the filenames/paths
of the files needed and then calls rsync for every single file.
Thats certainly not useful, especially since rsync shows the
servers motd for every single file.

Therefore, I'd like to suggest a new option: Allow rsync to 
not build the list of files existing at the source directory 
by recursively walking through the source directory, but by
reading a file or stdin to get a list of files to be copied.

This would allow to mirror the distribution index files in a 
first step, then build the list of files needed and then to 
download these files is a second step.

An alternative method would be to keep the recursive method, but 
to open a pipe to an external program. Before downloading a
file, the path is printed to the pipe and an answer is read 
from the pipe. Thus, an external filter program can decide for
each single file whether to copy it or not.

(Please respond directly, I'm not on your mailing list)

More information about the rsync mailing list