On Feb 14, 2008, at 12:02 PM, Richard Wilson wrote:
Increasingly, I find that I have many servers, especially OpenBSD
servers, where the only bit of the hard drive worth backing up is /
etc.
Good examples are routers or spamtrap boxes where everything is part
of
base. If a hard drive goes pop, all I need is to install the OS, and
re-populate /etc.
Currently I back up /etc on these machines using variants on rsync and
rsnapshot, and it works OK. However, I've got it into my head to shift
to using CVS to back up /etc on these machines. Advantages I think I
see:
1) /etc is mostly flat text files. It makes more sense to back it up
using a system which is text-based, rather than the belt and braces of
rsync.
2) CVS is big on diffs and such. Checking to see which config changes
happened to a given file, and when, gets really easy.
3) The nightly backup procedure just becomes a 'cvs ci' in cron. If
nothing changed, no additional space is taken. However, if a change
has
been made, that change is stored efficiently, and cron will
auto-magically send me an email of the change delta, because of the
output from the cvs ci.
4) If someone makes big changes, they can manually do a checkin,
just to
be sure.
5) If everything goes hideously titsup, and there's disk corruption on
the CVS server, I've still got a chance to recover data, as the CVS
data
storage format looks vaguely like plain text. This is more of a
cvs-vs-svn (eep BDB.) If things are sufficiently bad that both a
machine
I back up and the CVS server are having issues, I suspect I will care
about something this unlikely.
Before I embark on this, I have a couple of questions:
1) Can anyone think of an idea why I'm being dumb? I hope not, but it
doesn't hurt to ask.
No. Revision control is always a good thing.
2) How will /etc, and the things that read it, react to /etc
becoming a
working copy, with CVS, Entries, et al? I'm thinking of things that eg
"Include /etc/appname/*" barfing on unexpected files left by CVS.
When's the last time you checked out your /etc from cvs.openbsd.org?
If the answer is "never", then you have nothing to worry about.
We use subversion, but the principles are the same. The biggest
question you should be asking yourself is if you want the production /
etc to be your working copy, or if you check out a temporary copy,
overwrite your changes, and commit them.
---
Jason Dixon
DixonGroup Consulting
http://www.dixongroup.net