I just finished to read a copy of “CentOS System Administration Essentials”, written by Andrew Mallett, which I got from the editor for review. Here is what I found.
Virdict: a good book, except a couple of (small) points
I have enjoyed reading this book, which I am going to call CSEA from now on for brevity. I think it is, indeed, a useful, synthetic tool for beginner system administrators. At 174 pages for the printed version, CSEA does provide only the essentials, as its title honestly says, but it does explain them well.
I only have two “negative” (note the quotes) things to say about CSEA, and none of them is serious. The first is about Chapter 1, titled “Taming vi”, which explains a few tricks of both vi/Vim and the Unix command line. In my opinion, those pages are not useful as a starter (even only a motivational one) for readers who had never seen those tools before, and too little for all the others. In other words, while there is nothing technically wrong in that chapter, it doesn’t add any value to the book.
The second “critique” I have about CSEA is something I found in the title itself: something good for the reader, after all, but potentially bad for the author and the editor. Rather than “CentOS System Administration Essentials” I’d have called this book something like “Learning Linux System Administration Essentials using Centos as a reference system”.
By this I mean that most of the content is valid on the great majority of GNU/Linux distributions, with the obvious exception of Chapter 4, which covers RPM and YUM. That’s why I said “good for readers”: CSEA is useful also for people who are not going to use Centos/RHEL or Fedora, and stays useful even for those users, if/when they move to another distribution.
The “potentially bad” part is, just because of what I already explained, the title seems misleading. People who judge a book only by its cover, I mean title, may not buy CSEA only because they are currently using another distribution, even if they would benefit from the book.
What’s in the book?
CSEA is explicitly aimed to people who are thinking to a career as Red Hat Enterprise Linux administrators, but as I said it is immediately useful to whoever wants to follow best practices in Linux administration of every flavour. In general, all chapters deliver what the book preface promises: clear explanations of some essential concepts, synthetic enough to make a quick read, and with just enough practical details to make further reading on each subject much easier. Here is the list of chapters, with a few comments where needed:
- Taming vi: see above
- Cold Starts: the GRUB boot loader, and how to customize its behavior
- CentOS Filesystems: again, good content with a slightly misleading title. Permissions, hard and soft links, SUID and sticky bits, main features of BTRFS: all stuff that every Linux administrators must know, and valid on any distribution, not just Centos and its relatives
- RPM packages and YUM: learn how to prepare your own RPM packages and local software repositories
- Linux processes: nice presentation of little-known precious tools as pgrep, pstree and pkill
- User management: I liked the coverage of getent and quotas, as well as the “user creation” script
- LDAP, or how to manage user accounts on many computers, from one single place
- The Nginx Web server: basic configuration for a LEMP (Linux + “e”Nginx + MySql + PHP). Here I’d have liked a few more pages to include one complete, real world example, e.g. how to make WordPress run with nGinx, but it’s still a good chapter!
- Configuration management with Puppet
- Security: Pluggable Authentication Modules (PAM) and SELinux essentials, plus some password hardening tricks
- “Graduation Day”, that is a summary of the whole book, and some extra best practices for SSH, Nginx and OpenLDAP
(FIY, Packt offers this and many other titles at just 5 USD until January 6th, 2015 )