4

I'd like to rsync (backup) a chroot environment from outside the chroot. For that I first make a lvm snapshot of the chroot volume and then run rsync on that.

The only problem with this approach: Symlinks that inside the chroot are absolute are now pointing to the outer-chroot-system and are of course not matching. Since I would like to use copy-unsafe-links, this leads to a false link resolution. Is there a way to make rsync resolve symlinks from another directory than the main root or is there another way to solve this?

3
  • so you're trying to copy the file the link points to (-L)? or copy the symlink itself (-l)? Commented Oct 3, 2012 at 19:48
  • Neither, I am doing --copy-unsafe-links as stated above. Commented Oct 3, 2012 at 20:26
  • No chance with rsync-means. I just played with -R, -l, -k- this does not do what you want. There has to be a chroot-mode for rsync to accomplish what you want. Make a feature-request to the rsync-developers... Commented Oct 4, 2012 at 9:21

2 Answers 2

3

You could replace your absolute symlinks with relative ones before doing the rsync.

1
  • Yes, that. This is just one of the ways absolute symlinks cause trouble. The oldie-but-goodie symlinks utility is convenient for that. Commented Oct 4, 2012 at 0:04
2

Changing all absolute symlinks to relative is definitely a good solution, if it can't be done, a convoluted and inefficient way around it that could work is use sshfs that has a --transform_symlinks option to do just that.

You'd need to set a separate ssh server or a user with a separate configuration in the currently running sshd and use a combination of

Subsystem sftp internal-sftp 

and

ChrootDirectory /path/to/jail 

Now, if you're --copy-unsafe-link and thus don't care to preserve symlinks or save space, you could just run rsync chrooted inside the jail (copy a statically linked rsync there, run nscd, bind-mount /var/run/nscd and exclude both /var/run/nscd and that rsync binary from the sync (you may have to bind-mount /dev and/or proc as well and use --one-file-system))

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.