[Top][All Lists]

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

Re: [rdiff-backup-users] adding --resume back

From: Dominic Raferd
Subject: Re: [rdiff-backup-users] adding --resume back
Date: Thu, 04 Sep 2014 15:39:14 +0100
User-agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:31.0) Gecko/20100101 Thunderbird/31.1.0

On 04/09/2014 15:02, Chris Wilson wrote:
Hi all,

On Thu, 4 Sep 2014, Dominic Raferd wrote:

If I had enough space for the LVM snapshot, I would probably rsync the current data and run rdiff-backup locally on the destination every time rsync succeeds. This would provide - in our setup - the same protection as LVM with respect to broken increments, but also resume a partial session after network shortage
and server restarts.

You are facing quite a tough situation! You didn't comment on the idea of lengthening the ssh timeouts, but given the severity of the situations you have to allow for, maybe this can't help. I should point out that using an LVM snapshot should not need nearly as much space as rsync because it only has to store the differences between the old rdiff-backup archive and the new, and it does not have to persist once the backup is complete. Still rsync is a simpler (and more familiar) solution and surely the lack of disk space is cheaper to fix than the value of your time recoding rdiff-backup?

That gives me an interesting idea. Since the rdiff-backup destination is a mirror of the source, we can rsync over it. Of course if we did this on a real repository it would destroy it, but we could safely do this:

* create a writable LVM snapshot containing the rdiff-backup repository,
* delete the rdiff-backup-data directory from it,
* rsync from the target over the snapshot's rdiff directory,
* run rdiff-backup from the snapshot back to the original location,
* then discard the snapshot.

Cheers, Chris.

I like that idea. But whereas the initial snapshot takes up almost no disk space, I think that deleting its rdiff-backup-data directory would cause it to swell in size by the size of the rdiff-backup-data directory, or perhaps somewhat more (since snapshotting works at block level). Better just to rsync to it ignoring the rdiff-backup-data directory on the destination (I think using rsync --excl /rdiff-backup-data should do it). Then, as you suggest, run rdiff-backup from the snapshot back to the original location, again ignoring /rdiff-backup-data on the source (rdiff-backup-data --exclude /rdiff-backup-data) - or maybe rdiff-backup would ignore it anyway?

Cheers, Dominic

reply via email to

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