During December, I was out of town and away from my desktop PC, intending to connect to it using LogMeIn to keep working. Although my laptop has enough disk space and is a reasonable enough specced machine, my desktop PC is my main machine and has everything set up already, and remote access software generally works well.
Unfortunately, during this period, the Western Digital Raptor in my desktop PC with all my data decided to fail. This is my first real drive failure, and having it fail while being 4000 miles away in a different continent really magnifies the problem. The first signal was connecting to my PC and seeing two drive letters vanish into thin air. Rebooting the PC ended up in losing connection permanently (which I later learned was because it had hung on boot while detecting the drives), followed by a couple of hours troubleshooting with a friend who managed to get in front of my PC, finally accepting the fact that the problem could not be easily resolved and leaving the machine switched off until I could get back.
Fortunately, the code I needed to work with was in an offsite SVN repository and essential dev tools like Visual Studio and SQL Server are available from MSDN, allowing me to get my laptop in a state that was at least usable. This managed to allow me to keep working, but it did get me thinking about my general backup strategy though.
About a year or two ago, I tried several online backup solutions and although I preferred Mozy’s backup software, the actual backup process refused to work properly on my machine and eventually I settled for Carbonite, in tandem with Syncback SE for syncing changes to an external drive. This strategy worked fine until recently, when I upgraded to Windows 7. Unfortunately, Carbonite’s software had some issues with this, and I didn’t re-install, leaving my PC without form of online backup.
Reluctant to have no backup in place all, I decided to go for a disk imaging solution instead and eventually settled on Macrium Reflect. The pro version offers scheduled backups, and I had weekly full backups and nightly incremental backups for system and data drives. The backup images are stored on a third separate hard disk in my PC and copied over to an external 1TB drive to offer some redundancy.
Once I got back to FL, getting back up and running was mostly a case of getting a new drive and simply restoring from the most recent image created by Macrium Reflect. The whole process took about a couple of hours and was relatively painless. However, the Raptor was partitioned into two drives, one containing utilities. This wasn’t backed up as it didn’t seem like there was anything too important on there. Getting the essential ones back took a couple of hours too and a lot of time and hassle could have been saved by backing this up too.
It seems like Carbonite have fixed most of their issues with Windows 7, but there’s still a conflict with SVN where Carbonite causes the SVN icon overlays to disappear. Generally unsatisfied with Carbonite, my search for a viable online backup solution continued.
It’s been a couple of weeks since I’ve been using JungleDisk (as suggested by Shawn Wildermuth), and so far, I’m liking it. The cost structure is a bit different from Carbonite, with the desktop addition costing $3 per month plus the cost of storage with Amazon S3, which is about $0.10 per gigabyte per month, plus fees for data transfer – though this is currently free until June 30th, 2010. There’s a slightly cheaper version for backups only at $2 per month, but with the added features of folder sync and a mapped network drive in the cloud, the desktop version is easily worth the extra cost.
The software doesn’t look as fancy as Carbonite, though I actually prefer my Windows applications to look like Windows applications rather than having big fonts and bright colors, and JungleDisk definitely offers users more control over their backups. However, it does lack shell integration which would’ve been nice, and I don’t think there’s any way to restore files via the web. But the features all work well and as expected. It’s also great to be able to use the software on multiple machines, with the only additional cost being incurred for the extra storage.
The yearly fee for Carbonite is about $55. My backup is about 60gb, though the first 5gb is free, so this is going to be about $8.25 per month. Adding in the Jungle Disk fee of $3 per month, and the total cost per year is about 2.5 times the cost of Carbonite, but still not unreasonable and given the cost and pain of losing important data, it’s worth it.
Overall, my backup strategy consists of the following now:
- Backups every 5 minutes to Amazon S3 with Jungle Disk
- Automated weekly full backups of system and data drives using Macrium Reflect to a separate physical internal drive
- Automated nightly incremental backups of system and data drives using Macrium Reflect to a separate physical internal drive
- Both weekly and nightly incremental backup images are also copied to a separate external USB drive.
- Non-automated backup of utilities drive (this hardly changes and is just to ease restoring if another drive failure happens)
- Code backed up to offsite SVN repository
This seems like it should cover everything, from a full-blown drive failure to accidentally deleting some important data.