Monday, March 27, 2006


Blogs are great ways to spread memes and a meme worth spreading is the concept of a backup.

I don't do mine as often as I should and I have been bitten in the past by dodgy hard disks and software installs that render machines inoperable.

Herein, my backup strategy. What's yours?

Setup: I run a Thinkpad T42p laptop with a dual boot setup - Ubuntu Linux and Windows XP. I boot most of the time into Linux.
  1. There are about a dozen files on my machine that change very frequently. I create backups of these every week onto a USB key I keep in my bag.
  2. In Propylon, we make extensive use of CVS, SVN, mailing lists (mailman) and WIKI(confluence) technology for project management. In short, no work-critical material lives solely on my machine. Everything important for the company that can be server-side *is* server-side.
  3. Every two months I backup my laptop onto an external 120G USB disk. I have formatted it as a Linux ext3 partition. (It came pre-formatted as VFAT but that is no use for backups because of file size limitations.)
  4. I don't do any backups directly from Windows. Instead, from time to time, I include the Windows partition /media/windows in my backup TAR.
  5. I don't worry about bit-for-bit disaster recovery. The way I see it, by the time my machine goes ga-ga there will be so many new versions and upgrades to this-and-that...its better to upgrade as part of recovery. All I need to get going again is a Linux setup that can read my external USB hard disk. The apps I use most are Thunderbird, OpenOffice, Firefox and Emacs and these are generally pre-installed these days in Linux distros. I can use all of these from Windows too if I need to.
  6. I create backups on the USB disk with date-stamped filenames with this command:
tar cvpzf /media/usbdisk/backupDDMMYYYY.tgz --no-absolute-paths --ignore-sockets --verify --exclude="/media" --exclude "/proc" --exclude "/lost+found" --exclude "/mnt" --exclude "/sys" --exclude-caches / >/media/usbdisk/backupDDMMYYYY.log

No comments: