How Linux Works, 2nd Edition: What Every Superuser Should Know
L**I
A Solid Foundation on Linux Architecture
I found out that I love this book in about 30 seconds of flipping through the chapters and looking at what the author was trying to do. This is EXACTLY (one of) the books I was looking for!I have several other Linux books and they all start to approach their content the same way: Introducing the Linux BASH command line, and then jumping into doing various tasks and explaining what you are doing. This is fine, and there are several other books that I think do this very well, but what I was REALLY looking for was an explanation of how the whole operating system actually is structured, how it works, how it is built, how it boots, what it boots, and how all the different pieces of software fit together. In other words, the "architecture" of Linux/GNU. Not only does this book cover all of these topics in detail, but it does so in a very straight forward, no nonsense, no fluff way. There is also a lot of detailed explanation of how the software works in conjunction with hardware. There is actually a section that explains hard drive geometry and how that works with various file systems. The author goes into enough detail about RAM that you can almost picture in your head what the 1s and 0s look like in a stack of RAM and how the Linux kernel directs traffic to and from devices and into user space. Run levels are also discussed in detail. I've been working as a computer professional for over 2 decades now, but have only recently switched my focus over to Linux, and since most of my training has been in Windows architecture, there isn't a lot of that I could transfer to Linux 1 for 1. POSIX systems are quite a bit different from MS OSs.If you are already a Linux guru and know how everything works, then this book probably isn't for you, but I was surprised that I learned about 10 new things in just the first chapter! Even the first chapter made "lightbulbs" go off in my head and I found myself saying "Now I get it! Why couldn't anyone else explain it THAT way?"Don't worry, if all of what I have written is "Greek" to you, the author does an excellent job of explaining how things work in a way where you don't need a math degree or be a "programmer" to "get it". You can start from square one.To use the (often worn out) "car" analogy, a lot of Linux books teach you how to drive the car, how to change the oil, how to put in wiper fluid, how to put gas in the car, how to work a stick shift etc. All of those things are very useful and for a lot of sysadmins and regular users, you don't need to examine things any further to "get the job done", and that's how a lot of these books are. But THIS book tells you what the engine is, how it is assembled, and how all the parts in it work. How the engine connects to the drive shaft, how that connects to the axle and how power is transferred to the wheels. It explains how the steering wheel is connected to the steering column which is attached to the power assist system which helps turn the wheels and change the direction of the car. How the power buttons for the windows are wired to the servo motors for the windows which turn the windows up or down. But not only does the author explain how everything is put together, but he gives examples of how to control all those elements through the command line!So, in summary, this book may not give you all the specific knowledge on passing the RHCSA or RHCE exams, but it will give you a solid foundation and a solid understanding of the actual architecture of Linux so that you aren't just blindly punching in commands at the command line without understanding what's going on "under the hood".I can recommend this 100% for beginners, and for people who are familiar working with Linux but want more concrete knowledge about how the computer actually works, and how Linux runs it.If you want to know how the whole darn thing works so you have a solid foundation to build on, this is the book for you.
P**Z
An Absolute MUST for Pen Testers and Hackers
I've read reviews all over the web of Brian's new edition, and I'm frankly confused. The range of opinions go from "This is very basic, don't bother if you're advanced" to "Don't bother if you're a beginner, way too much detail on the inner workings than you need." 3 bears? Just right for... who? Part of the problem might be the subtitle: "What every superuser should know." In Brian's usual dry sense of humor, this refers to the $ vs. # prompt difference between user and "superuser" (kernel access) at the command prompt. It does NOT mean (goodness no) that you have to be some kind of superuser in the programming sense to understand or greatly enjoy this book.In one fell swoop Ward does a number of things with the specialized term in unix/linux (superuser is simply what Windows folk would call a sysop or administrator, or hackers would look at with rootkits/kernels as privilege escalation): 1. Letting casual users know they will be using the command line rather than graphic interface 2. Demonstrating the major update from the first edition: this book is a LOT more about the kernel than the first edition, thankfully so!This is a TOTAL update, so even though I frequently advise going back to a previous edition for unethical publishers and authors that do a cosmetic update and call it a new edition, this is NOT the case here-- Brian has totally reworked the book to bring it up to date with many features Linux was missing (especially in Ubuntu dists) when the first edition was written. This new edition is a MUST, as 10 years has been a lifetime in the Linux world-- frankly the first edition is a paperweight now. And, since this edition includes numerous detailed steps for playing along with your own IDE/SDK throughout as well as complete code on the site, it is now dist independent as much as possible. I've tried the code with Ubuntu, Debian, Fedora and RHEI so far, and found ZERO problems with only teensy adjustments. That is unusual for a newly released title, but not for No Starch, who have technical editors who actually TRY the code, unlike a lot of publishers out there in this field.If you're a beginner, there is no better introduction to operating systems than this book, period. Brian takes the time to explain in painstaking detail the INTUITIVE workings of nearly every o/s-- things you must know to go forward in any kind of programming. In my areas of robotics, embedded and security, many new candidates (some with Masters degrees in IT) flunk the interview because of lack of basic "what's really going on?" answers. These talented candidates know how to program, but when asked very basic questions like "What's the kernel doing here?" or "What does object oriented vs. functional or imperative mean at this level of system call?" their eyes glaze over.This is why, unlike some other reviewers, I strongly advise reading this book for BOTH beginners and advanced programmers. You do not have to have an objective of designing compilers either! Even basic security and hacking, when using tools like IDA Pro, require you to be able to look at the command line and "see" what state the kernel is in, what it is doing and calling, and what certain interrupt/resume sequences really mean regardless of sequential, parallel or virtual memory paradigms. It is not enough to "let the legacy software" (or in the case of sploits, the rootkit) do the work anymore-- even basic scripters are now modifying vm's and rootkits with Python, and the typical sploit, whether pen, hack, forensics or just system admin, involves sophisticated user/kernel interactions by malware that can now not only inject sequences, but also install entire new o/s donuts around your kernel and control the entire o/s!Finally, this book is radically fun if you have any interest in computers, at any level, including high school AND grad school, as well as seasoned practicing programmers. At over 350 pages and extremely up to date, Ward packs each page with SO much information and detailed knowledge, with deeply intuitive examples, that you can either study every sentence numerous times like a text, looking up details in his many external resources, or just read casually and get a "gist" that is rare as an overview of what's really going on between kernel and user abstraction levels (or in the operational sense, interfaces).The information in this book is pertinent for both Geek Squad repair folk and MIT PhD malware designers. I guarantee, as an old professor who teaches Kali Linux to hackers and pen testers at both of these levels, and in assembly reverse engineering detail including memory forensics, that there is something delightful for everyone in this new edition... highly recommended.
R**A
Should have been called "Learn Linux Administration."
l'm torn on how to rate this. This is a great introduction to linux and all the major utilities it has to offer. I would recommend it to the geek new to Linux who wants a thorough survey with a focus on command line tools.Unfortunately, it never actually explained what I bought it to explain: how Linux actually works, not just the tools that come with it. He briefly discusses inodes and page tables, but I was expecting an explanation of the datastructures and algorithms used, design considerations, references to the source code, that sort of thing. You know, the actual "how it works" bit, not a list of command-line tools and when and how to use them arranged by topic. It does a nice job of giving some background information on a topic, but it never really approached what the title implies (and the background information is stuff about how the internet works in the chapter about networking, not stuff about Linux specifically)..But despite my disappointment, I can't deny the usefulness of the book if you're looking to be a sort of Linux power-user, but it still wouldn't quite get 5 stars because it does become a bit of a tedius "this is a list of arguments you can give rsync."
I**C
Ok
Ok
J**R
El libro ha llegado antes de lo esperado y en perfecto estado tal como describía el vendedor.
El libro llegó un par de días antes de lo esperado y en perfecto estado, acorde con la descripcion del vendedor.En cuanto al libro, está bien. Algunas cosas vienen muy bien explicadas, otras no tanto y algunas el mismo autor te invita a que las saltes si es la primera vez que te enfrentas a esos conceptos. Si bien como el autor dice se trata de sintetizar.En cualquier caso, es un libro interesante a buen precio. Quizás la nueva edición describa en mayor detalle algunos conceptos que en este libro se encontraban en fase de cambio p.ej: systemd y System V.
R**U
Livro muito bom
Livro bem didático, não é uma leitura técnica massante, é bem objetivo e perfeito para iniciantes ou desenvolvedores de software que não pretendem virar sysadmin mas precisam de um bom conhecimento de como o linux funciona.Recomendo muito!
A**A
Reseña
Es bastante extenso en el ámbito de que incluye mucha información acerca del tema, pero necesité un libro y un curso aparte, para suplementar el tema. Nada recomendable para principiantes, a las personas que ya han estado utilizando linux, lo recomiendo.
N**K
Highly recommended
I have read a few Linux books and attended a few Linux courses but this book contains information I have never seen anywhere else. You do not need to read those details in order to read the whole book, but most techies will want to read this book cover-to-cover.
Trustpilot
4 days ago
1 day ago