Book Review - The Linux Command Line
Do you ever have that moment when someone asks you for a recommendation on a book, and when put on the spot you spin around in your office chair, scan your ever-growing library of books that you bought over the years of IT experience but either:
A. Never read?
B. Flipped through but never finished?
C.Passed out halfway through the first chapter?
D. Wouldn't recommended to your own mother?
Well, that moment happened a few weeks ago to me. My boss came up to me and asked me for a beginner's guide to Linux for a new tech that had just started. After nearly 14 years in IT and Linux administration, I did what every tech does, spun in my chair at my collection of books only to realize I had no beginner book that I could recommend. It was at this time that I had to send my boss off with the promise that I would search to the ends of the Internet for a true beginner's book, if such a book existed.
Just like many sysadmins out there, I learned from trial and error. That, and whatever books I could scrounge up over the years. In all the years that I've been in IT, I've come across books that I wish I hadn't bought, books that read like military training manuals, and some that were just too spread out in their topics to be a true beginner's book. But the search is over, and I can honestly say I have found THE beginner's guide to Linux.
The book itself couldn't have been timed any better. It was published in paperback at the beginning of this year from No Starch Press (www.nostarch.com). The book is titled The Linux Command Line by William E. Shotts, Jr. Mr. Shotts is actually the creator of linuxcommand.org, and has extensive experience in Linux systems administration, which actually shows in this book.
I shall say this about No Starch Press before I begin my review: If you purchase this (or any other book at the time of this review) through No Starch Press, you receive a DRM-free ebook copy of the book. This is a major bonus (as I have a Nook, Android phone, and PC). I'm one of those techies that enjoy reading paper copies of Tech books, but always find myself with down time and away from my books. Having an E-Book copy handy on one of my devices is a bonus.
For those of you that purchase this book in the bookstores or read the introduction online: if you're coming from the Microsoft world, I promise the book gets better. One of the things that almost made me put the book down was the introduction. I know the old adage 'never judge a book by its cover,' or in this case by its introduction. In this case, the author leaned pretty heavily into Microsoft and 'Big Corporations' in the introduction. Most people that would be reading this book will be coming from a Microsoft background and would probably feel that the book might be riddled with such information. Fear not my little penguins, for this is only in the introduction. After the introduction you never see mention of 'Microsoft this and that', 'Big Corporations' or anything else, as he leaves his personal feelings about other operating systems at the introduction and moves on.
Now as I said in the beginning, I really do believe I have found the holy grail of introduction to the Linux command line books. Some people may argue that the command line is going away, but if you are keeping up with the news, even Microsoft Server 8 is coming with an 'Optional GUI' from what I've read. Server installs of Oracle Unbreakable Linux, Debian, and Ubuntu Server, are still command line based. Command line is here to stay and it behooves a person getting into Linux to at the least get into the command line. The author states that this is not a sys admin book, but I'll argue this point, as I found that 90% of what he is talking about is actually quite useful as an introduction to systems administration from the command line.
The book is well laid out in chapters and sections. The author takes the reader through the basics of navigating the command line all the way up through regular expressions and creating your own shell script. This book is not as dry a read as most technical books are, nor does he make you feel as if you're sitting in a college lecture. He writes this book as if he's sitting right there next to you, and giving you advice on what to do next. From reading the book I would say his writing style is tailored toward the 25-45 year-old age group, as his choice of words, upbeat attitude in training and some English slang grabs the reader's attention. Do I think someone older or younger could read this book? Of course! But the older crowd may not understand his sense of humor or choice of words. Instead of the training books you've been used to, he places very valuable information inside of gray boxes throughout the chapter that the reader may reference at any point. Not only that, but he walks the reader through what he calls 'playground exercises' during the chapter. I tend to not retain information as well if I have to wait to the end of a chapter to try practice exercises. At that point I find myself flipping through the chapter to recall what I learned.
As far as the information presented in the book, all of it is excellent information. I would highly recommend this book to any beginner in both systems administration and anyone wanting to learn the Linux command line. At times I felt as if the author was getting ahead of himself and explaining topics that should have made me run away in fear of Linux, but he explains in the book why he was showing such a powerful command and later in the book uses the command in further examples. He goes into great detail explaining some of the things in Linux systems administration that have baffled me for well over a decade, and yet finds a way to explain it to someone that has never been around Linux before.
What I found intriguing in the book more than anything else was how the book was laid out. Call it whatever you want, but I enjoy reading a technical book that links to the next chapter, and that chapter references the previous chapters. This is something extreamly tricky to do when writing anything technical, but he pulls this off. If you take a look at nostarchpress.com I believe they have a Table of Contents listed for the book, and you shall see what I mean. He goes from navigation, manipulation of files and permissions, editing files and configuration, basic sys admin and eventually to regular expressions and shell scripting. Each new chapter uses the information that you learned in the previous chapters to build up your knowledge for the next chapter that is presented. Instead of just teaching you a single topic, jumping to the next chapter and teaching you another topic, he finds a way to make one beautiful composition of words and style.
After reviewing this book, I promptly went into my boss's office and asked for two more copies of this book for our IT staff. The new tech has never been around Linux and should benefit greatly from this book, and the other tech hasn't been around Linux in quite a few years. What? You actually thought I would part from my own copy of The Linux Command Line? Ha! This book is going on my bookshelf as a reference book for the next time someone asks me how to explain something in Linux, or a good intro to Linux book, I can spin around without fear and grab my own copy.
Practical Task Scheduling Deployment
July 20, 2016 12:00 pm CDT
One of the best things about the UNIX environment (aside from being stable and efficient) is the vast array of software tools available to help you do your job. Traditionally, a UNIX tool does only one thing, but does that one thing very well. For example, grep is very easy to use and can search vast amounts of data quickly. The find tool can find a particular file or files based on all kinds of criteria. It's pretty easy to string these tools together to build even more powerful tools, such as a tool that finds all of the .log files in the /home directory and searches each one for a particular entry. This erector-set mentality allows UNIX system administrators to seem to always have the right tool for the job.
Cron traditionally has been considered another such a tool for job scheduling, but is it enough? This webinar considers that very question. The first part builds on a previous Geek Guide, Beyond Cron, and briefly describes how to know when it might be time to consider upgrading your job scheduling infrastructure. The second part presents an actual planning and implementation framework.
Join Linux Journal's Mike Diehl and Pat Cameron of Help Systems.
Free to Linux Journal readers.Register Now!
- SUSE LLC's SUSE Manager
- My +1 Sword of Productivity
- Murat Yener and Onur Dundar's Expert Android Studio (Wrox)
- Non-Linux FOSS: Caffeine!
- Managing Linux Using Puppet
- Doing for User Space What We Did for Kernel Space
- Tech Tip: Really Simple HTTP Server with Python
- Rogue Wave Software's Zend Server
- Parsing an RSS News Feed with a Bash Script
- SuperTuxKart 0.9.2 Released
With all the industry talk about the benefits of Linux on Power and all the performance advantages offered by its open architecture, you may be considering a move in that direction. If you are thinking about analytics, big data and cloud computing, you would be right to evaluate Power. The idea of using commodity x86 hardware and replacing it every three years is an outdated cost model. It doesn’t consider the total cost of ownership, and it doesn’t consider the advantage of real processing power, high-availability and multithreading like a demon.
This ebook takes a look at some of the practical applications of the Linux on Power platform and ways you might bring all the performance power of this open architecture to bear for your organization. There are no smoke and mirrors here—just hard, cold, empirical evidence provided by independent sources. I also consider some innovative ways Linux on Power will be used in the future.Get the Guide