rdiff-backup-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [rdiff-backup-users] stupid, stupid question, but necessary to know


From: Maarten Bezemer
Subject: Re: [rdiff-backup-users] stupid, stupid question, but necessary to know answer
Date: Fri, 4 Aug 2006 22:32:17 +0200 (CEST)

On Fri, 4 Aug 2006, dean gaudet wrote:

> On Fri, 4 Aug 2006, Maarten Bezemer wrote:
> 
> > This made me think about something related: what happens if the tree
> > you're backing up contains an rdiff-backup-data directory? Will it be
> > escaped? Will it be ignored? Will it be used and screw up the whole thing?
> 
> danger danger.  you'll be unhappy if you let rdiff-backup recurse into the 
> mirror.  it's up to you to exclude it.

It's not always known beforehand what the source contains. Since
rdiff-backup is already checking for other filesystem capabilities, it
would make some sense to check for and escape directories (or
files!!) named rdiff-backup-data as well, so that they wouldn't interfere
with the rdiff-backup program. After all, why should anyone using the
source tree know that it's being backed up by rdiff-backup? Even moreso:
how *could* they know e.g. when an ISP is backing up their customer's
files using rdiff-backup. The contents of the source tree should have no
influence on the way rdiff-backup behaves.

I agree with others that placing the rdiff-backup-data directory outside
the backup tree (or at least allowing this to be done) could prevent
problems like that. But that leaves both the issue of keeping the two
locations in sync (which indeed isn't a problem with the current
philosophy) AND the next problem:

> > Maybe there's a difference between having an rdiff-backup-data directory
> > at the top-level of the backed-up tree or having it somewhere down the
> > tree. The latter case might give other problems when trying to restore
> > parts of the tree below that point?
> 
> you can restore any portion of the tree... the methods are documented on 
> the man page.

Let me explain this a bit more.
I know of the several ways to restore portions of the tree. I usually go
to the rdiff-backup-data/increments tree and restore the directory
increment file of the part I need. This should always work.
However, another way to restore is e.g. changing directory to the parent
of the subdirectory you want restored, and run rdiff-backup like this:
rdiff-backup --restore-as-of TIMESPEC portion_to_be_restored /to/location

Now, when issuing this command, rdiff-backup goes to find its
rdiff-backup-data directory. My question was: How is this done?

Imagine this tree:
[fileserver]
  /home
     /userX
        /mybackup
           /asdfg
              file1
              file2
              file3
           /rdiff-backup-data
              the usual contents of an rdiff-backup-data directory
        /work
           something
        .bash_profile

This tree is backed up to [backupserver], in /backups/fileserver/homes.
So, file2 of the above example is located on [backupserver] at
/backups/fileserver/homes/home/userX/mybackup/asdfg/file2.

If, at [backupserver], you change directory to
/backups/fileserver/homes/home/userX/mybackup and do a restore like:
rdiff-backup --restore-as-of 1D asdfg /tmp/rdiffrestoretest
then, which rdiff-backup-data directory will be used? The one at
/backups/fileserver/homes/rdiff-backup-data or the one at
/backups/fileserver/homes/home/userX/mybackup/rdiff-backup-data ?
Or: does rdiff-backup use a bottom-up search or a top-down
search? Note that both options have their own kinds of possible
problems...

By the way, I'm sorry that I now seem to be the cause that the OP's
question remains unanswered. It wasn't clear to me what exactly had
happened, but I also didn't see any other reaction to that question.

Regards,
 Maarten





reply via email to

[Prev in Thread] Current Thread [Next in Thread]