directories that change into symlinks

John Van Essen vanes002 at
Mon Jan 6 08:06:01 EST 2003


What you need is the --force option.  It's not obvious from the
all-too-generic name, but that will do the trick.

To the rsync maintainers - this is somewhat of an FAQ.  Perhaps
the error message could also say '(see the --force option)' to
help users discover the solution more easily.
        John Van Essen  Univ of MN Alumnus  <vanes002 at>
        3DGamers  Systems Software Support  <jve at>

On Sun, 05 Jan 2003, David Garamond <davegaramond at> wrote:

>just to correct myself: this has nothing to do with rdiff-backup (which 
>uses *rdiff*, not rsync). local backups with the rdiff-backup tool are 
>fine. the problem is with rsync, when we are trying to mirror the local 
>backups to another machine using rsync.
>David Garamond wrote:
>> our daily backup is done using the rdiff-backup tool, which in turn 
>> utilizes rsync/librsync to do the actual mirroring work.
>> a few days ago we did a refactoring and renamed a bunch of directories. 
>> for backward compatibility we maintain the old names by symlinking it to 
>> the new names. so, for example, oldname1/ now becomes newname1/, and 
>> oldname1 is now a symlink to newname1/.
>> we found that now the mirroring cannot complete. rsync doesn't seem to 
>> be able to handle this. it tries to do an rmdir(oldname1) followed by 
>> symlink(newname1,oldname1). however, since the directory oldname1/ in 
>> the old mirror is not empty, rmdir fails with "Directory not empty" and 
>> thus symlink fails too with "File exists" (since oldname1 has not been 
>> deleted yet).
>> any pointers? we looked at the available rsync options but have found no 
>> clue yet.

More information about the rsync mailing list