There are many places where the practice of system administration has been regarded as a real profession for less than a decade. Regardless of when one believes this profession received its start, it is very young, and as a consequence, its practice varies greatly from organization to organization. There is very little wide-scale agreement on what standard practice ought to be. As the field becomes more mature, experienced system administrators will try to move the profession to a set of procedures that resemble engineering more and artistry less. One of the people leading the charge to improve and standardize the practice of system administration is Mark Burgess.
Principles of Network and System Administration is less about the "How" of System Administration and more about the "Why". Other books, like Nemeth, et. al.'s, UNIX System Administration Handbook, do a good job of explaining how to unjam a printer and how to set up NFS mounts. Burgess' book is about more strategic issues, how to keep systems maintainable and how to manage configuration files across an enterprise. It is my opinion that during the 80s and most of the 90s the frontiers of system administration were about understanding what what the job entailed and building tools in order to manage networks more efficiently. The next phase of SA research will be about standardization of management and practice, making system administration more formal and less ad hoc, and Burgess' book is one of the first to begin to push into this area.
Burgess rejects the notion of a system in isolation. A computer interacts with users and other computers. It's impossible to separate an individual machine from its environment. His focus is on tools, like cfengine, which he wrote, which use the network to help manage it. He ends up discussing issues such as the importance of standardizing the configuration of machines and the reducing the human element by automating as many administrative tasks as possible. Two areas of particular interest are the realm of baselining a running system and checking for deviations against its normal behavior, and the idea that systems should be equipped with tools to help repair themselves. These are important concepts which are just now making their way into the system administration canon.
While I'm happy to cut the author some slack since this is one of the first attempts to blaze the trail on this topic, there are a number of serious shortcomings in the book that I just can't ignore. The first is that Burgess sometimes loses focus of his strategic view of the network and delves into the minutia of system configuration. Describing how to build PHP support into the Apache web server is, in my opinion, more of a distraction than a help in this volume. Certainly, it's useful information, but in my opinion it belongs in a different book. There's no information on how to use this tool, nor significant information about why it's important, and the instructions for its inclusion is simply outside the scope of this work. While some get-your-hands-dirty examples are more than appropriate to illustrate some big-picture issue, several times the author delves into these details without a larger context, and I believe it complicates the book.
The second criticism I have with this book is that there are far too many significant factual errors on information that should have been caught by Burgess, or if not by the author, than certainly during the editing process. One egregious example of this is where Burgess discusses RAID levels. His explanation of some of these levels is flat out wrong and does a disservice to the reader. In my opinion, there are an uncomfortable number of other places where his explanations range between the misleading to the incorrect, and it would be unfortunate if readers were misled by them.
While these problems are serious, I will still recommend this book as a sincere effort to engage the profession in a dialogue on the larger issues involved in system administration. However, due to some of its limitations, I would predict that five years from now this particular book will be marginalized in favor of books that have yet to be written on this topic, unless a successive edition addresses the book's current shortcomings. In the mean time, those system administrators who want to improve the way they think about their profession would be well served by reading what Burgess has written, including this book.
Principles of Network and System Administration is an attempt to address some of the larger issues in the profession of system administration by one of the industry's most provocative thinkers on the subject. The book is worth reading by those who want to understand the nature of this profession and how it can be improved. Unfortunately, the book is marred by some fairly grievous errors on the part of the author and an occasional lack of focus, but as bad as these transgressions are, there are still enough good ideas in this book on the bigger issues to make it worth reading.
Click here to return to the index of reviews.