One of the most neglected areas of personal computing is data backups. Why is that, when most of us know the pain of a hard drive crash, or have at least heard a friend or colleague describe their own experience with Murphy’s Law? The loss of important information can have a lasting impact when one considers that many of us keep things like passwords, account numbers, receipts and documents on our computers. Many of us also maintain vast collections of music, video and movies on hardware that is not meant to last forever and is prone to failure. If you own your own small business, you might don’t differentiate between a personal and work computer, because they are probably one and the same. Not only can a dead hard drive be costly in terms of lost memories and time, it can potentially be a big financial headache. Given all this, I thought it was time to write something about how I back up my data. This is not a blueprint that everyone can or should follow, but I think that I have all the bases covered and this should work for most users.
To begin, I have an iBook G4 running Mac OS X 10.4 Tiger, and I do three types of backups on a regular basis.
- Daily: Individual folders backed up to an external FireWire hard drive
- Weekly: Full hard disk clone to the same FireWire drive
- Weekly: External drive backed up to another computer
The difference between the daily and weekly backups above really comes down to timing. Certain files and folders on my drive are updated more than others, such as my development folder. For these individual folders, I make a backup once daily.
I have this daily backup automated for me with an Automator workflow and an application called CronniX. CronniX is a GUI app that lets you edit the crontab for your user account. The crontab keeps track of all the scheduled processes that you have added to it over time. CronniX just makes working with your crontab very simple. Basically, the crontab for my user account is set up so that it runs the Automator workflow daily, copying all my important folders to an external FireWire hard drive that is connected to my iBook. The script also happens to add all the folders to a new disk image, which it creates, so I can compress the whole thing down to a nice, small size (disk images are great if you need to compress something). Creating the disk image isn’t really necessary, but I added it as a way to minimize the size of my backups folder.
I also do a full clone of my hard drive on a weekly basis, to guard against losing everything else that I don’t back up daily. For this, I use an app called SuperDuper, from Shirt Pocket. This software, which sells for $19.95, shines when it comes to making a clone of your entire hard disk. The first time you run SuperDuper, you will notice that it takes a great deal of time to create the clone. About 25 GB of data on my iBook took just over and hour to back up to my FireWire hard drive. But, this was the last time I ever saw a clone time anywhere near this long, because I have SuperDuper set to back up files incrementally going forward (SuperDuper calls this a “smart update”). Now, every week when I run SuperDuper, it looks at the backup on my FireWire drive (I have the drive partitioned into two volumes, one for the SuperDuper clone and the other for miscellaneous file storage) to determine which files have changed in comparison with my iBook’s hard disk. Once it knows the files it needs to copy over, it begins the process of copying them. It will even determine which files have been deleted on my iBook hard disk and delete them from the backup drive, maintaining an exact clone of the disk. Each week, my backup takes about twelve minutes to complete, which is considerably less than the hour it initially took to back up the drive.
The best part about making a clone is that it’s bootable (if you use a FireWire drive), meaning that, if I need to boot into the backup itself, it will function as if I were using my hard disk. This makes the loss of a hard drive less of a problem. Imagine your hard disk crashing on you. Now tell yourself that everything is OK and get up from the floor. If you still have support on your Mac, you can send it back and have the drive replaced. If you have a second Mac, you can just plug in your FireWire drive and use the second Mac to boot into the backup. You can continue working until your drive is replaced, and then just do a full restore on your new hard disk, returning all your data, applications, and settings back to their original location in about the same time it took to make the initial clone.
SuperDuper will also let you do things like back up to a disk image, and it comes with four predefined scripts that let you choose the type of backup you wish to perform. You can create more scripts if you need to, but I’ve found that I only use the one that creates a clone of my hard disk. The other scripts included, however, will allow you to backup just the user files (all the folders under your user folder) and make safety clones of the shared users and applications.
Despite it being great at making a clone of your hard drive, there are some things that SuperDuper cannot do. If you are looking for software that will back up your data to CD or DVD media, SuperDuper might not be for you. It seems to be designed around backing up data to your internal hard drive or an external USB or FireWire hard drive.
The other feature that is missing from SuperDuper is the ability to schedule backups. Shirt Pocket states on their Web site that this feature is coming soon, but, until then, users are forced to use the AppleScript file that comes with SuperDuper and schedule it via the crontab (this is when I started using CronniX). For my purposes, however, scheduling SuperDuper backups isn’t really practical, because I clone my entire drive. When running a clone job, it is best to make sure that all applications have been closed first, so if I were to schedule the backup, it might start running while I have applications open, and I may not get a clone of every file.
Now, the part above about scheduling backups is only half true. I do, in fact, schedule my backups. I have modified the script that came with SuperDuper so that it asks me, before it tells SuperDuper to run the specified backup script, if I would like to run the backup now, logout, or cancel. Usually, I’ll see that little message pop to my screen and I’ll click the “Log Out” button so I can log back in with my login items deactivated. To do this, I simply hold the shift key down after I type my password at the login screen, and then click the login button. This ensures that nothing starts up in the background during the login process. Then, I can run the script again (it’s in my script menu for easy access) and tell it to go ahead and run the backup. Then I have twelve minutes to kill, so I usually switch to my Windows PC (which doesn’t get much of my attention anymore) and do something else.
I should also mention that there is another application, called Carbon Copy Cloner, that will also make a clone of your hard disk. I didn’t choose to use this software because it was not Tiger-ready at the time. It is now fully compatible with Mac OS X 10.4, however, and may be a great choice for many users, especially if all you want to do it create a clone of your hard disk. It does not have some of the added features of SuperDuper, but it does have something that SuperDuper does not, and that’s a scheduler. When you schedule something with CCC, it will create a shell script and add an entry in the system crontab to run the script at the specified time. It’s similar to what I’m doing with CronniX, but it’s included in the app, which is a big plus. The best thing is that it’s free, so you won’t have to pay to make a clone of your hard disk (so now you have no excuse).
At this point, you might be saying, “All this is great, but what about that FireWire drive that you use to store ‘miscellaneous’ files?” Good question. There is an application, called Archive Assistant, part of the SuffIt Deluxe suite of apps, that I use to copy the entire contents of the second partition on my FireWire drive into a compressed archive, which is saved to my Windows PC. I have a task set up in Archive Assistant so that all I have to do is click the “Run Task” button and the process starts. It takes a couple of hours, and it’s not incremental, but it gets the job done. My Mac can see my Windows PC, so sending the files over the network is not a problem (it is the cause of the slow speed at which the process runs, however). I wrote a simple little AppleScript that displays a dialog saying that it’s time to back up the files on my FireWire drive, and scheduled it via CronniX, so I can get a reminder once a week. This may all seem complicated, and I suppose it is more complicated than it needs to be. The thing is, I only have one Mac and one FireWire drive, and backing up all the files on my FireWire drive to a Windows PC requires that I compress them first, so that none of them can be touched in any way by the Windows operating system. It’s really just a cheap way to back up my Mac files without having either another FireWire drive or another Mac. Frankly, Archive Assistant isn’t even necessary, as I could use the Finder to create an archive and have it saved to my Windows PC. I just like that I can set everything up in Archive Assistant and then simply click a button to get the process going.
I’ve found that making backups is something that I seriously neglected before, and I don’t really know why, considering just how easy it is to get into a backup routine. The method or software you use to make your backups doesn’t really matter as long at you meet two criteria: backup allyour important data, and do it in a way that is comfortable and convenient for you. For many people, backing up the users folder, located at the root of your hard disk, is enough. For me, a little more is needed, but that’s because I don’t want to have to reinstall all my applications and get things set up the way I like it after a hard disk crash.
I hope that my backup routine helps someone else who might have questions about backing up their data. If you have any suggestions, please feel free to comment on this article so others can benefit from your experience.