Praise for the First Edition:
"This outstanding book … gives the reader robust concepts and implementable knowledge of this environment. Graphical user interface (GUI)-based users and developers do not get short shrift, despite the command-line interface’s (CLI) full-power treatment. … Every programmer should read the introduction’s Unix/Linux philosophy section. … This authoritative and exceptionally well-constructed book has my highest recommendation. It will repay careful and recursive study."
--Computing Reviews, August 2011
Mastering Modern Linux, Second Edition retains much of the good material from the previous edition, with extensive updates and new topics added. The book provides a comprehensive and up-to-date guide to Linux concepts, usage, and programming. The text helps the reader master Linux with a well-selected set of topics, and encourages hands-on practice.
The first part of the textbook covers interactive use of Linux via the Graphical User Interface (GUI) and the Command-Line Interface (CLI), including comprehensive treatment of the Gnome desktop and the Bash Shell. Using different apps, commands and filters, building pipelines, and matching patterns with regular expressions are major focuses.
Next comes Bash scripting, file system structure, organization, and usage. The following chapters present networking, the Internet and the Web, data encryption, basic system admin, as well as Web hosting. The Linux Apache MySQL/MariaDB PHP (LAMP) Web hosting combination is also presented in depth.
In the last part of the book, attention is turned to C-level programming. Topics covered include the
C compiler, preprocessor, debugger, I/O, file manipulation, process control, inter-process communication, and networking.
The book includes many examples and complete programs ready to download and run. A summary and exercises of varying degrees of difficulty can be found at the end of each chapter. A companion website (http://mml.sofpower.com) provides appendices, information updates, an example code package, and other resources for instructors, as well as students.
Table of Contents
1. A Linux Primer
2. The Desktop Environment
3. Interacting with the BASH Shell
4. Putting Commands and Applications to Use
5. Writing BASH Scripts
6. The File System
7. Networking, Internet, and the Web
8. Basic System Administration
9. Web Hosting: Apache, PHP, and MySQL
10. C Programming in Linux
11. I/O and Process Control System Calls
12. Inter-process and Network Communication
Website and Example Code Package
Paul S. Wang has a Ph.D. from MIT. He is professor of computer science and a well- established book author. To date, he has published 12 CS textbooks (three with CRC; Mastering Linux, Dynamic Web Programming and HTML5 and From Computing to Computational Thinking ) and all of them successful and well-received in the US and world-wide. Several books have been translated into other languages.
"Linux is an interesting program. It's quite different and can be challenging for those starting out, like learning to use a new operating system for the first time. However, there are many books out there. Right now though, after reading about Linux from the book, Mastering Modern Linux by Paul S. Wang I have been able to grasp every bit of information that can help one learn exactly what you can do.
From this book, I did learn that it really has similarities to learning a Windows OS, and knowing how to make and create files. Almost like a command line type of program, but also that you have the similarities of going online, messaging, taking notes, and other similar computer features. So yes, this book is very well recommended for anyone starting out. Plus, it covers a little more on use programming with C.
I didn't learn C yet, but when I do learn about it, this book will come in handy. However, I skipped that section and chapter for now. One part of the book that I didn't read about because it just used C coding and something I'm not using too, right now. Plus, the beginning covered much of what you need to write to perform tasks in Linux. Using terms that refer to making a new directory(mkdir), removing something(rm), moving files from one place to another and creating new locations(mv), and so many more.
So for those intersted in taking a dive into Linux, this may be the best book to purchase and even use ina classroom. There are exercises to keep you busy and tons of material to practice. It's not super huge, but covers everything a novice would like to know and can build upon once they get a hang of using Linux. Finally, I really enjoyed this book and would highly recommend it!"