A General Backup Plan
August 5th, 2006
We all have different computer usage patterns and therefore different backup demands. This post will explain the backup plan I have in place, I’m sure there’ll be people out there who will find this useful, and I’d appreciate any feedback that could improve the process.
A little bit of background. I am a heavy computer user, using at least two computers every day, often more. As a hobby I develop software and create and manage websites. My projects change on a daily basis (I actually do work on them!) and so does my personal documentation, such as finances, passwords, reference and todo notes, etc. Since I need access to these at all times, a USB drive is a crucial part of my setup and is where my working copies are located. My websites must be backed up on a nightly basis. This includes the static content, databases and Subversion repositories. I make enough photos to have to back them up once a week from my camera (not cutting edge backup, but good enough for me) and any new music should be backed up once a month, since I’d like a copy of it to survive all future disasters. All my email is stored on an IMAP server (Fastmail.FM), which is backed up locally with IMAPSize.
This is the diagram of my backup plan (click to enlarge):
The main idea with creating a backup plan is understanding how often the data changes and what data is “priceless”, meaning that once lost, the data would be extremely hard or impossible to regenerate. For me, my software, my websites, my personal documents, my email and my photos are the priceless electronic stuff. This data changes on a daily basis and for it I maintain both an automatic daily online backup and several copies of monthly offline snapshots.
Offline backups are performed on a monthly basis and include both a snapshot of my crucial data as well as less important data (can be found online) such as software, publicly available docs, etc.
These are the tools and services I use:
- SyncBackSE with powerful filtering options is used for moving everything to a centralized backup area on my main PC. I do this since my projects require some cleaning from unnecessary files (svn folders, build files, etc) before being backed up. This saves space and therefore backup times.
- Mozy is an excellent online backup service which I’ve been using for the past few months. The Mozy agent is transparent and does it’s job very well. Mozy provides a free account with a generous 2GB, but also provides paid accounts in case you need more space.
- Fastmail.FM is my email service provider. With a 2GB IMAP store my live email system is also my main email backup area (I’ve been with Fastmail for almost 5 years and they have earned my trust). However, I do backup up my email locally with a scheduled automatic backup every week with IMAPSize and monthly to a DVD. Fastmail also provides me with 1GB of flexible file storage which I use in case I need to share files online.
- For backing up my websites I use the widely available scripts for automatic backups. Even though I’m extremely satisfied with my main host A Small Orange and I do trust their backup strategy, I feel much better knowing that I have my own backups in case something goes terribly wrong. I keep two copies of my live websites at every time. One is the latest nightly backup and the other is the weekly backup, which is a Sunday’s copy of the daily backup. Due to space limitations I can’t afford to have more than two full backups, so this is a compromise I made. Ideally, at least a week of daily backups should be kept in case the latest backup is messed up for some reason.
In summary, all my important data is backed up automatically on a daily basis. An exception are photos and the address book in my phone, since these currently require my manual intervention. Once a month I perform the big offline backup to DVDs.