Problem with --partial and rsync algorithm

John Van Essen vanes002 at umn.edu
Sun Mar 12 10:23:01 GMT 2006


On Sun, 12 Mar 2006, Matias Surdi <matiassurdi at gmail.com> wrote:
> I'm running the following command for a remote host backup:
> 
> /usr/local/bin/rsync -a --delete --delete-excluded -v --timeout=120 -z
> --no-whole-file -partial --partial-dir .rsync-partial --exclude=/sys/*
[ snip ]

BTW, you are using "-partial", not "--partial".

By using "-partial", you are invoking individual -p -a -r -t -i -a -l
options.

But you don't want to use --partial, anyway, because --partial-dir is
an alternative (not a supplement) to --partial.

> I've specified the --no-whole-file, -partial and --partial-dir.... ¿Why
> rsync can't continue the transfer instead of deleting it and starting
> again and again????

Quoting the 2.6.7 man page for --partial-dir:

  If the partial-dir value is not an absolute path, rsync will
  add an exclude rule at the end of all your existing excludes.
  This will prevent the sending of any partial-dir files that may
  exist on the sending side, and will also prevent the untimely
  deletion of partial-dir items on the receiving side. An example:
  the above --partial-dir option would add the equivalent of
  "--exclude=.rsync-partial/" at the end of any other filter rules.

Since you use --delete-excluded, you are running afoul of an unforseen
consequence of this little kludge, and your .rsync_partial directory
gets deleted despite rsync's efforts to protect it.

If the receiving side content is changed only by rsync, and you don't
add additional --exclude arguments, then once you run a successful
rsync with --delete-excluded, that argument is no longer needed since
the receiving side will have had all the excluded content removed.
So try running without --delete-excluded until a better fix for this
problem can be developed.

   John



More information about the rsync mailing list