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
Chapter 1 A Linux Primer
Chapter 2 The Desktop Environment
Chapter 3 Interacting With The Bash Shell
Chapter 4 Putting Commands And Applications To Use
Chapter 5 Writing Bash Scripts
Chapter 6 The File System
Chapter 7 Networking, Internet, And The Web
Chapter 8 Basic System Administration
Chapter 9 Web Hosting: Apache, Mysql, And Php
Chapter 10 C Programming In Linux
Chapter 11 I/O And Process Control System Calls
Chapter 12 Inter-Process And Network Communication