What's the best Linux backup solution?
- by Jon Bright
We have a four Linux boxes (all running Debian or Ubuntu) on our office network. None of these boxes are especially critical and they're all using RAID. To date, I've therefore been doing backups of the boxes by having a cron job upload tarballs containing the contents of /etc, MySQL dumps and other such changing, non-packaged data to a box at our geographically separate hosting centre.
I've realised, however that
the tarballs are sufficient to rebuild from, but it's certainly not a painless process to do so (I recently tried this out as part of a hardware upgrade of one of the boxes)
long-term, the process isn't sustainable. Each of the boxes is currently producing a tarball of a couple of hundred MB each day, 99% of which is the same as the previous day
partly due to the size issue, the backup process requires more manual intervention than I want (to find whatever 5GB file is inflating the size of the tarball and kill it)
again due to the size issue, I'm leaving stuff out which it would be nice to include - the contents of users' home directories, for example. There's almost nothing of value there that isn't in source control (and these aren't our main dev boxes), but it would be nice to keep them anyway.
there must be a better way
So, my question is, how should I be doing this properly? The requirements are:
needs to be an offsite backup (one of the main things I'm doing here is protecting against fire/whatever)
should require as little manual intervention as possible (I'm lazy, and box-herding isn't my main job)
should continue to scale with a couple more boxes, slightly more data, etc.
preferably free/open source (cost isn't the issue, but especially for backups, openness seems like a good thing)
an option to produce some kind of DVD/Blu-Ray/whatever backup from time to time wouldn't be bad
My first thought was that this kind of incremental backup was what tar was created for - create a tar file once each month, add incrementally to it. rsync results to remote box. But others probably have better suggestions.