Something all full-service backup systems should have

February 15, 2007

Having spent much of today wrestling with this very question, I have a small suggestion for people designing full-service backup systems (by which I mean ones that have individual file indexes and an environment for restoring single files):

Please provide a command that summarizes all of the versions of a file that you know about.

Most full-service backup systems can go back in time, so you can ask for things like 'the version of the file on January 28th'. But what I really want is some way to ask the backup system for a rundown of when the file was changed, created, or deleted, because this usually is what I actually want. What tends to happen, at least around here, is not that a user deletes a file and immediately wants it back, but that they notice that they have a damaged or deleted file now and need to get back the last good version, whenever that was.

For serious bonus points, support this for directories too, with filtering so I can look only at deleted or added files. That would make it easy to deal with the situation when a user tells us that they've accidentally deleted some files from a directory, but they're not sure exactly what they deleted (after all, it was an accident).

(Note that 'restore the directory as of <X>' is not a really good solution. Users don't necessarily notice the accidental deletion right away, and so they may have new or updated files in the directory that they don't want to lose; they don't want the old version of the directory back, they just want the old files back.)

Comments on this page:

From at 2007-02-19 23:13:25:

Have you considered Bacula?


By cks at 2007-02-19 23:33:58:

I was going to say that Bacula looks good, but reading its implementation restrictions shows it currently has a crippling limitation: it doesn't pick up on file renames. As far as I am concerned, this completely disqualifies it, regardless of any other merits.

(Their suggested workaround is to touch all of the file timestamps. I'm sure that would go down real well with our users.)

Written on 15 February 2007.
« RPM tricks for dealing with multiarch machines
QOTD: There are three types of authentication »

Page tools: View Source, View Normal, Add Comment.
Login: Password:
Atom Syndication: Recent Comments.

Last modified: Thu Feb 15 15:00:27 2007
This dinky wiki is brought to you by the Insane Hackers Guild, Python sub-branch.