4

Having read through the rsync manpage, I can't see any way for rsync to automagically transform absolute symlinks between machines, i.e

Server A
file -> /home/username/path/file

Server B
file -> /home/differentusername/path/file

Any ideas (bearing in mind that the rsync would only be run under /home/username/)?

2
  • I assume using relative symlinks is not an option?
    – andol
    Jul 25, 2010 at 19:10
  • 1
    I'll put it this way, I'd ideally like to do it without :) Jul 25, 2010 at 19:29

1 Answer 1

3

Would this information lead to a solution?

From man rsync:

. . .

If you want to duplicate a server-side symlink, include both the symlink via its path, and referent directory via its real path.

. . .

It is also possible to limit the amount of path information that is sent as implied directories for each path you specify. With a modern rsync on the sending side (beginning with 2.6.7), you can insert a dot and a slash into the source path, like this:

rsync -avR /foo/./bar/baz.c remote:/tmp/

That would create /tmp/bar/baz.c on the remote machine. (Note that the dot must be followed by a slash, so “/foo/.” would not be abbreviated.)

. . .

[omitted some information regarding earlier versions of rsync]

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .