My home data backup procedure

Most of the people have digital assets that would be terrible to lose: From digital photos, to documents, source codes, or even licensed software (without burned copies on CD/DVD).

Personally, my fear is divided at 50% between photographs (I scanned all "paper photos" and got rid of the originals so losing the digital ones would be catastrophic) and source codes: I store every single file of source code sicne I started learning C 13 years ago... I'd do the hara-kiri if I lost all this historical data.

So, to avoid that, here's the backup procedure I use.

  • One backup scheduled each 2 or as much as 3 weeks. Done on saturdays or sundays to avoid the "I don't have time" excuse. I use Google Calendar and email+popup+sms reminders to avoid forgetting it.
  • No skipping of a scheduled backup: If I really can't do it one day, I move the appointment to the following day. Is more safe to wait one more day than another 2-3 weeks.
  • Check-list: I have a spreadsheet with the check-list of every step I have to take to do a backup. As detailed as possible, like "Export your simp-pro full keyring" or "Export your gmail contacts as gmail csv file with the default name".
    This is very important if you (as happens to me) can't automate the whole process.
  • Export your outlook datafile. I do a full export in PST format of all the work's emails. It is easy to forget that if you download from Exchange (or use POP3) the emails, you only have your copy of them ;)
    Also I recommend (sadly because of a bad experience) not to ZIP/RAR the PST file, just in case data is corrupted (it is better to loose some emails that not being able to extract anything at all).
  • Export online content you feel necessary: I export a copy of every single doc & spreadsheet from Google Documents, my virtual drive sensible data..
  • Separate "static data" from "dynamic data".
    • First one is everything which probably won't change, like new photographs, icons, images...
    • Second one is everything which will get modified: Source codes, documents...
  • Incremental backup (using last point separation):
    • New static data is added to existing folders (like "Photos").
    • New dynamic data is copied in a new folder (like "06 Dec 2007").
  • Redundant backup: I have 2 laptop HDDs (60GB each actually). I make the backup at the same time on both of them (via USB 2.0). I prefer having two copies but being "double safe" that even in the disaster of a hardware fail on one of the HDDs, the other will still be there.
    In the past I used just one (of 30 GB), and as I did when changing it, I plan to replace them each 2 years probably with new and bigger ones.

I've still some work left to do, like taking advantage of CruiseControl.Net/NAnt capabilities to automate my server backups (SQLS, MySQL and SourceSafe databases), but until I move to my new house I have on hold setting up again the continuous integration server so backups will wait too.

Comments?

Posted by Kartones on 2007-12-26