Saturday, February 03, 2007

Book Review: O'Reilly's Backup & Recovery

"No one cares if you can back up -- only if you can recover."

This is probably the most important point in this book. Using a variety of open source tools, you are shown how to backup, test and restore your Windows, Macintosh, Unix, or Linux systems, including filesystem and database backups. There is even a chapter that will help guide you in choosing a commercial alternative if the open source solutions don't meet your needs.

This is not a book for the beginner. It is aimed at professional systems administrators, although it contains useful information for anybody who needs backups. You should be comfortable with using command line tools and the shell. Having said that, the author (W. Curtis Preston) does an excellent job of explaining the various tools and concepts he presents. There are lots of examples given, and the most fun parts of the book are the real world examples of backups gone wrong.

The first two chapters provide an introduction to the concept of the book and basic backup principles. You are shown why backups are necessary and what should be backed up. Preston explains his philosophy of backing up the entire system, excluding what's not necessary, and automation. There are a lot of eye openers in the beginning chapters, and they should not be missed.

The next chapters cover the open source tools used to do backups and restores. Starting with basic tools such as cpio, dump, dd, tar and rsync for Unix and Linux systems, ditto for Mac OS, and ntbackup and System Restore for Windows, the book continues on with more advanced tools such as Amanda, BackupPC, and Bacula. The reader is walked through each program, with ample explanations and examples given.

How to achieve near-CDP (Continuous Data Protection) with open source tools is given a chapter of its own. rsync with snapshots, rsnapshot, and rdiff-backup are all explained, going over the advantages and disadvantages of each.

Commercial software and hardware are also covered. The author has chosen to not suggest specific utilities, but rather gives guidance on how to choose a backup solution that will meet your needs. The reasoning is that there are so many programs available that are constantly changing that a specific recommendation will soon be obsolete. It seems to be the "if you teach a man to fish" technique. If you are shown what to look for in a backup utility, you can see for yourself the benefits of the various programs available.

Bare-metal recovery, restoring the entire system from the operating system on up, is explained for Linux, Windows, MacOSX, and Solaris, HP-UX, and AIX Unix systems. Preston recommends testing all recoveries, but I found the technique here particularly interesting. He shows how to trash your hard drive so your root filesystem is completely lost. An effective way to see if you can build your system back from scratch. Of course, that's only recommended on a test system, not on an active server.

The chapters on database recovery are very extensive. It is not assumed that the reader is intimately familiar with the structure of databases, and there are plenty of explanations of the concepts of relational databases and the problems with backing them up. Oracle, Sybase, DB2, SQL Server, Exchange, PostgreSQL, and MySQL are all covered, sometimes with multiple backup solutions.

The final part of the book covers VMware, volatile filesystems, and other bits and pieces that didn't fit into the rest of the book.

A companion website is provided at to cover additional material that didn't make it into the book as well as detailing changes that have happened since publication. A searchable online Safari version is also offered for a 45 day free trial.

Backup & Recovery is clearly written and is full of excellent advice and information. If you need to be able to get your system up after a disaster, you need this book.

No comments: