As Bill Lubanovic and I were putting the final touches on this book, I overheard a conversation between two coworkers in our Cisco lab discussing Linux. The senior networking guru of the two made an interesting remark. He said that despite all his knowledge, he felt incomplete as a professional because he had never learned Linux. A moment later he and the other gentleman turned to me and looked me square in the eyes. I smiled and went on working. .
That evening, our director of Information Technology made an offhand remark to me during a conference that struck me as unusual. He said that he wanted to learn Apache, and when I asked him why he replied, “I just want to learn it,” and left it at that.
Later in the conference, our director requested feedback from the group on a solution for patch management, explaining and using the example of rsync. He said he wanted something similar, while launching into a detailed technical discussion of incremental and cumulative patch management. I have a good working knowledge of rsync, but hadn’t heard such a detailed academic explanation of any open source tool in any forum.
In both of those cases and many others, I wished I had this book ready to hand over to highly trained and skilled people who wanted to learn Linux administration. Perhaps you have had similar experiences and wished you had a book like this one at hand. I venture to guess that conversations like the ones I’ve just described occur many times in many places daily. ..
When Andy Oram and I began discussing a Linux system administration book, we had a slightly different idea of what we wanted to accomplish. Andy talked about a book in which each chapter took users through the steps of building and deploying application servers without co-mingling detailed discussions. He suggested that the discussion reside in one place in each chapter and the technical steps in another.Later, I proposed that we make each chapter a module unto itself and let the reader complete the modules he wanted and/or needed. As this book evolved, we felt that we’d accomplished that objective. You do not have to read this book cover to cover to become a Linux system administrator. Simply start where you have the most interest. When I first started using Linux, the community consisted mostly of programmers and hobbyists. I don’t recall any discussion lists that focused on desktops or commercial applications. We logged onto the Internet by starting a daemon. We didn’t have dialers or web browsers like the ones available today. The vast majority of people I knew did their own system administration or were in some stage of learning. Reflecting on the time when we estimated that 30,000 Linux users existed on the planet, I’m amazed at how many people use Linux today and haven’t the slightest idea how to write a configuration file. Linux forums seem to be filled with people asking how to get CUPS or Samba to work. On mailing lists, people hold detailed discussions on the technical details of projects like Postfix, JBoss, and Monit.Many people still itch to learn the extensive capabilities of Linux as an application platform. If you use Linux and want to take the next step from a power user to an administrator, this book will help you make the transition. We wrote this book with you in mind.
How This Book Is Organized
Chapter 1, Requirements for a Linux System Administrator Lays out the goals of the book and what you’ll gain by reading it.
Chapter 2, Setting Up a Linux Multifunction Server Gets you started with a nearly Internet-ready server.
Chapter 3, The Domain Name System
Shows you the basics of setting up primary and secondary DNS servers.
Chapter 4, An Initial Internet-Ready Environment
Uses the ISPConfig free software configuration system to get you started with a rich set of services that you can practice while reading the rest of the book.
Chapter 5, Mail
Sets up a Postfix mail server with SASL authentication, a POP server, and an IMAP server.
Chapter 6, Administering Apache
Gives a quick run-through of the popular Apache, MySQL, and PHP combination (together with Linux, known as a LAMP server), including SSL authentication.
Chapter 7, Load-Balanced Clusters
Extends the previous chapter’s Apache configuration with IP Virtual Server and ldirectord to provide high availability.
Chapter 8, Local Network Services
Shows you how to manage users and configure common networking elements such as DHCP and gateway software on local area networks (LANs).
.Chapter 9, Virtualization in the Modern Enterprise
Shows how to set up Xen, VMware on a Linux host and then add guest operating systems.
Chapter 10, Scripting
Shows you some basic techniques for writing robust and powerful bash shell scripts that can save you a lot of administration time.
Chapter 11, Backing Up Data
Presents a range of techniques for carrying out this crucial function, from basic rysnc and tar to the powerful Amanda system.
Appendix, bash Script Samples
Contains a few shell scripts that we’ve found useful when doing system administration and that might give you tips for how to write your own scripts. ...