specifying a list of files to transfer

Lee Eakin Leakin at dfw.Nostrum.com
Sat Jan 18 00:45:01 EST 2003

---begin quoted text---
> From: jw schultz <jw at pegasys.ws>
> Date: Fri, 17 Jan 2003 16:21:59 -0800
> On Fri, Jan 17, 2003 at 04:42:51PM -0600, Dave Dykstra wrote:
> > On Thu, Jan 16, 2003 at 11:14:50PM -0800, Wayne Davison wrote:
> > 
> > Oh, right, I hadn't thought of that implication of the way this is
> > implemented.  Definitely we want the -R functionality implied.  That's
> > the only way I can imagine people wanting to use this.
> > 

  I can think of a couple of uses for a --no-relative option.  It would not
  be the common case, I agree with the examples below.  They illustrate
  both the common case and the exception quite well.

  I can see a case where you want to backup several critical files from a
  one system to a single (flat) directory on another.  The flattened
  example below would work well for this.  Of course the example also shows
  a filename stepping on another, but since --no-relative would would be
  the exception instead of default, the user can deal with it (they
  explicitly asked for it after all).

  I can also see a case where you have several files in a single directory
  that you want to update from a master repository, but the repository has
  them spread out in different dirs (may due to different files for
  different architectures).  This option could allow you to update say
  /usr/local/bin pulling from several known locations save in the distlist

  Sorry, just had to throw this in.  I understand stand the desire to avoid
  feeping creaturism.  Making software more useful to more people with
  hideous bloat is a very difficult balance.

> 	rsync -lptgoDu --delete --files-from=distlist distserver::8.0/i386 /root2
> where distlist is
> 	etc/init.d/rsyncd
> 	etc/rsyncd.conf
> 	usr/bin/rsync
> 	usr/bin/rsyncstats
> 	usr/sbin/rcrsyncd
> 	usr/sbin/rsyncd
> 	usr/share/doc/packages/rsync
> 	usr/share/doc/packages/rsync/COPYING
> 	usr/share/doc/packages/rsync/README
> 	usr/share/doc/packages/rsync/tech_report.ps
> 	usr/share/doc/packages/rsync/tech_report.tex
> 	usr/share/man/man1/rsync.1.gz
> 	usr/share/man/man5/rsyncd.conf.5.gz
> It should not do /root2/i386/etc/init.d/rsyncd and so on as
> -R would have it.
> It should not create (flattened)
> 	/root2/rsyncd		# from /etc/init.d
> 	/root2/rsyncd.conf
> 	/root2/rsync
> 	/root2/rsyncstats
> 	/root2/rcrsyncd
> 	/root2/rsyncd		# from usr/sbin?
> 	/root2/COPYING
> 	/root2/README
> 	/root2/tech_report.ps
> 	/root2/tech_report.tex
> 	/root2/rsync.1.gz
> 	/root2/rsyncd.conf.5.gz
> What it should create or update is /root2/etc/init.d/rsyncd and so on.
> and it should be equivalent to
> 	rsync -lptgoDu --delete --files-from=distlist \
> 		distserver:/data/distribution/8.0/i386 /root2
> or
> 	rsync -lptgoDu --delete --files-from=distlist \
> 		/data/distribution/8.0/i386 client:/root2
> If /root2/usr/share/doc/packages doesn't exist it should be
> created with perms from source but it should not be recoursed.
> This example is drawn from one of the most recent emails
> requesting this feature.
---end quoted text---

    Lee Eakin - leakin at dfw.nostrum.com
Life's not fair, but the root password helps.

More information about the rsync mailing list