- Running Linux (3rd Edition)
by Matt Welsh, Matthias Kalle Dalheimer, Lar Kaufman
Paperback: 749 pages
Publisher: O'Reilly; 3 edition (August 1, 1999)
This book is an excellent introduction for beginning Linux Users and
Admins into the philosophy and way of thinking inside Linux. Be sure to
fetch the 3rd ed. instead of the 4th ed. If you come across a Februari
1995 First Edition (ISBN : 1-56592-100-3) make sure to buy it as its
used language was not yet edited into "Linux in 24 hours" prose, but
reads as if Welsh himself is giving you that first cool Linux ride.
- Linux Administration Handbook
by Evi Nemeth, Garth Snyder, Trent R. Hein
Paperback: 890 pages
Publisher: Prentice Hall PTR; 1st edition (March 25, 2002)
This book is more like a cook and reference book on howto conduct administrative task on a Linux system. It covers Redhat, SuSE and Debian.
- Unix Shell Programming, Third Edition
by Stephen Kochan, Patrick Wood
Paperback: 456 pages
Publisher: Sams; 3 edition (February 27, 2003)
This is the Best book to learn Shell scripting, and has an excellent good and balanced intro for a programmer and a fairly painless, helpful introduction to UNIX scripting.
- sed & awk (2nd Edition)
by Dale Dougherty, Arnold Robbins
Paperback: 429 pages
Publisher: O'Reilly; 2 edition (March 2, 1997)
This is the best desktop reference on these two tools, which are of course used often inside UNIX scripting. Sed and awk are, as the book adequately puts it, UNIX "powertools". Sed is quite handy and awk is even better. This excellent book presents a breathtaking introduction to both of them.
- C Programming Language (2nd Edition)
by Brian W. Kernighan, Dennis M. Ritchie
Paperback: 274 pages
Publisher: Prentice Hall PTR; 2 edition (March 22, 1988)
If you need to program in C, you need this book and should By On Every C Programmer's Bookshelf. Some say its the best programming book they ever bought, but the real deal for me is that this book is concise , to the point and very sharp. The best part is that its only 274 pages in which all you need to know about C is covered. No need to read elsewhere.
- The UNIX Programming Environment
by Brian W. Kernighan, Rob Pike
Paperback: 357 pages
Publisher: Prentice Hall (March 1, 1984)
Although this book is dated, it is the best book to learn the much-vaunted Unix "philosophy" in practice, and a perfect book for the beginning Unix programmer by the people who invented UNIX themselves.
- Internetworking with TCP/IP Vol.1: Principles, Protocols, and Architecture (4th Edition)
by Douglas E. Comer
Hardcover: 750 pages
Publisher: Prentice Hall; 4th edition (January 18, 2000)
This is the Best TCP/IP introduction you can find. Some call it the bible, some say its even better. It explains complex ideas about IP in simple terms and is a book which one reads from cover to cover. It offers the best insight.
- Mechanics of User Identification and Authentication:
Fundamentals of Identity Management
by Dobromir Todorov
Hardcover: 760 pages
Publisher: Auerbach Publications; 1 edition (June 18, 2007)
If you are a practicing security professional, buy this book! Todorov has spent a lot of time in the lab working through how our authentication technologies work and offers clear descriptions and sage advice on how they actually work and should be used in practice.
This is not a rehash of vendor documentation and RFCs but a real look "under the covers" at a core capability our security infrastructure must support.
It's probably not a book you'll read from cover to cover as it's too detailed. But I would strongly encourage you to read the indtroductory material and then dip into the chapters dealing with the particular methods you use (or are thinking about using) in your own work.
Then place the book on your shelf as a ready reference when you need a well-organized reference to a particular technology.
- Unix Network Programming
by W. Richard Stevens
Hardcover: 768 pages
Publisher: Prentice Hall PTR; 1st edition (January 23, 1990)
Too bad Stevens has already passed away as his books still stand at a solitary altitude today. Get this version and read it from cover to cover. But why buy it when the author has newer versions out? Because (1) it is more concise and (2) it has info not in the other editions. I recommend you read this one cover-to-cover and buy the others as more detailed reference.
- Operating Systems: Design and Implementation (Second Edition)
by Andrew S. Tanenbaum, Albert S. Woodhull
Hardcover: 939 pages
Publisher: Prentice Hall; 2nd edition (January 15, 1997)
This is the definite book on Operating Systems and its design. This is the book which helped and inspired programmers like Linus Torvalds, Steven Tweedie, Fred van Kempen and many others to write their own Operating System or contribute to parts of it. That OS? Linux of course.
- Linux Device Drivers, 3rd Edition
by Jonathan Corbet, Alessandro Rubini, Greg Kroah-Hartman
Paperback: 615 pages
Publisher: O'Reilly & Associates; 3 edition (February 10, 2005)
This is the definite book to use as a device-driver reference for Linux. You need to know your skills though.
- Understanding the Linux Kernel (2nd Edition)
by Daniel P. Bovet, Marco Cesati
Paperback: 816 pages
Publisher: O'Reilly; 2 edition (December, 2002)
This book is an Exceptional treatment of the Linux Kernel, Excellent Book on OS Design. And should maybe used as a companion to the Linux Device Drivers Books. This book (or tome in many peoples eyes) is the utter definition of 'internals explained'.
- Linux Enterprise Cluster: Build a Highly Available Cluster with Commodity Hardware and Free Software
by Karl Kopper
Paperback: 464 pages
Publisher: No Starch Press; 1 edition (May 15, 2005)
This is the first book I have seen on Linux clustering that not only provides a theoretical background but also a complete detail on how to actually implement it in the real world. He details setting up the heartbeat, IP failover, NAT, synchronizing and cloning, handling packets, and load balancing. Easily the best book on Linux Enterprise Cluster setup and maintenance that I have seen to date, The Linux Enterprise Cluster is highly recommended.