{"title":"Linux Books","description":"","products":[{"product_id":"bpf-performance-tools-9780136554820","title":"BPF Performance Tools","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cb\u003eBrendan Gregg\u003c\/b\u003e, Netflix senior performance engineer, is a major contributor to BPF (eBPF) who has helped develop and maintain both main BPF front-ends, pioneered BPF's use for observability, and created dozens of BPF-based performance analysis tools. His books include the best-seller \u003ci\u003e Systems Performance: Enterprise and the Cloud\u003c\/i\u003e. \u003cbr\u003e \u003cbr\u003e\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003e\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ePart I: Technologies\u003c\/strong\u003e\u003c\/li\u003e\n\u003cli\u003e1. Introduction\u003c\/li\u003e\n\u003cli\u003e2. Technology Background\u003c\/li\u003e\n\u003cli\u003e3. Performance Analysis\u003c\/li\u003e\n\u003cli\u003e4. bcc5. bpftrace \u003c\/li\u003e\n\u003cli\u003e\u003cstrong\u003ePart II: Using BPF Tools\u003c\/strong\u003e\u003c\/li\u003e\n\u003cli\u003e6. CPUs\u003c\/li\u003e\n\u003cli\u003e7. Memory\u003c\/li\u003e\n\u003cli\u003e8. File Systems\u003c\/li\u003e\n\u003cli\u003e9. Disk I\/O\u003c\/li\u003e\n\u003cli\u003e10. Networking\u003c\/li\u003e\n\u003cli\u003e11. Security\u003c\/li\u003e\n\u003cli\u003e12. Languages\u003c\/li\u003e\n\u003cli\u003e13. Applications\u003c\/li\u003e\n\u003cli\u003e14. Kernel\u003c\/li\u003e\n\u003cli\u003e15. Containers\u003c\/li\u003e\n\u003cli\u003e16. Hypervisors \u003c\/li\u003e\n\u003cli\u003e\u003cstrong\u003ePart III: Additional Topics\u003c\/strong\u003e\u003c\/li\u003e\n\u003cli\u003e17. Other BPF Tools\u003c\/li\u003e\n\u003cli\u003e18. Tips and Tricks\u003c\/li\u003e\n\u003cli\u003e\u003cstrong\u003eAppendices\u003c\/strong\u003e\u003c\/li\u003e\n\u003cli\u003eA. bpftrace One-Liners\u003c\/li\u003e\n\u003cli\u003eB. bpftrace Cheat Sheet\u003c\/li\u003e\n\u003cli\u003eC. bcc Tool Development \u003c\/li\u003e\n\u003cli\u003eGlossary\u003c\/li\u003e\n\u003cli\u003eBibliography\u003c\/li\u003e\n\u003c\/ul\u003e","brand":"Pearson Education (US)","offers":[{"title":"Default Title","offer_id":48732340912471,"sku":"9780136554820","price":46.79,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9780136554820.jpg?v=1719996482"},{"product_id":"learn-powershell-in-a-month-of-lunches-covers-windows-linux-and-macos-9781617296963","title":"Learn PowerShell in a Month of Lunches: Covers","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e\u003cstrong\u003e\"Not only for MacOS and Linux users, but also a great resource for Windows PS users.\"\u003c\/strong\u003e - Bruce Bergman\u003c\/p\u003e \u003cp\u003eLearn PowerShell in a Month of Lunches: Covers Windows, Linux, and macOS is a task-focused tutorial for administering Linux and macOS systems using Microsoft PowerShell. Adapted by PowerShell team members Travis Plunk and Tyler Leonhardt from the bestselling Learn Windows PowerShell in a Month of Lunches by community legends Don Jones and Jeffrey Hicks, it features Linux-based examples covering core language features and admin tasks. Designed for busy IT professionals, this innovative guide will take you from the basics to PowerShell proficiency through 25 tutorials you can do in your lunch break.\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eabout the technology\u003c\/strong\u003e\u003cbr\u003eThe PowerShell scripting language and administrative shell was initially created for Windows, providing a high-quality command-line interface and awesome automation features. As part of Microsoft's ongoing strategy to support non-Windows platforms with its Azure cloud service and .NET Core framework, PowerShell now runs on Linux and macOS. Like Bash, PowerShell can execute and script nearly any aspect of Linux, so you can easily manage repetitive daily tasks, servers, Cloud resources, Continuous Integration pipelines, and more. Because PowerShell is a full-featured programming language, however, it provides capability well beyond traditional shell scripting languages, such as the ability to treat OS components as objects.\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eabout the book\u003c\/strong\u003e\u003cbr\u003eLearn PowerShell in a Month of Lunches: Covers Windows, Linux, and macOS is a user-friendly tutorial to managing Linux and macOS systems with PowerShell. It's based on the bestselling Learn Windows PowerShell in a Month of Lunches, which has introduced PowerShell to nearly 100,000 readers. You'll learn how PowerShell shapes up to Bash or Python scripting as you write and run simple scripts that automate boring daily tasks. As you progress through the book, you'll use PowerShell to write Continuous Integration Pipelines and manage cloud-based servers. Just set aside one hour a day for a month, and you'll be automating tasks faster than you ever thought possible!\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003ewhat's inside\u003c\/strong\u003e\u003cbr\u003e- Why you should use PowerShell on Linux and macOS\u003cbr\u003e- Background jobs and automation techniques\u003cbr\u003e- Simple scripting to automate repetitive daily tasks\u003cbr\u003e- Common syntax and commands cheat sheet\u003cbr\u003e- Each lesson takes you an hour or less\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eabout the reader\u003c\/strong\u003e\u003cbr\u003eFor IT professionals comfortable administering Windows or Linux. No previous experience with PowerShell or Bash required.\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eabout the author\u003c\/strong\u003e\u003cbr\u003eTravis Plunk has been a Software Engineer on various PowerShell teams since 2013, and at Microsoft since 1999. He was involved in open sourcing PowerShell and has worked on the project full time since shortly after the project was announced.\u003c\/p\u003e \u003cp\u003eJames Petty is a Microsoft MVP, and the CEO and Executive Director for the DevOps Collective and PowerShell.org.\u003c\/p\u003e \u003cp\u003eTyler Leonhardt has been a Software Engineer on the PowerShell team since 2017, and at Microsoft since 2016. He is a core maintainer of the PowerShell extension for Visual Studio Code.\u003c\/p\u003e \u003cp\u003eLearn Windows PowerShell in a Month of Lunches was written by PowerShell community legends Don Jones and Jeffrey Hicks, who have years of experience as successful PowerShell trainers.\u003c\/p\u003e\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTrade Review\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e“Notonly for MacOS and Linux users, but also a great resource for Windows PS users.”  \u003cb\u003eBruce Bergman\u003c\/b\u003e   \u003c\/p\u003e \u003cp\u003e“Gives developers a lot of insight on how PowerShell works and how to accomplish everyday tasks.” \u003cb\u003eMarcel van den Brink\u003c\/b\u003e   \u003c\/p\u003e \u003cp\u003e“This book enabled me to quickly get using PowerShell for real-lifetasks.” \u003cb\u003eRick Michaels\u003c\/b\u003e   \u003c\/p\u003e \u003cp\u003e“The book is great, especially if you have no previous experience with PowerShell, tasks automation, or DevOps.” \u003cb\u003eMax Almonte    \u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e“Approaches PowerShell from a building block like perspective.” \u003cb\u003eFosterHaines\u003c\/b\u003e   \u003c\/p\u003e \u003cp\u003e“Unlike other PowerShell type books, this book expands beyond just Windows environments to accommodate those on Mac or Linux platforms who may want to explore this area as well.” \u003cb\u003eJames Matlock\u003c\/b\u003e\u003cb\u003e    \u003c\/b\u003e\u003c\/p\u003e","brand":"Manning Publications","offers":[{"title":"Default Title","offer_id":48740645667159,"sku":"9781617296963","price":30.39,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781617296963.jpg?v=1720055231"},{"product_id":"python-distilled-9780134173276","title":"Python Distilled","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eDavid Beazley is the author of the Python Essential Reference, Fourth Edition (Addison-Wesley), and Python Cookbook, Third Edition (O'Reilly Media). He currently teaches advanced computer science courses through his company, Dabeaz LLC (www.dabeaz.com). He's been using, writing about, speaking about, and teaching Python since 1996.\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e\u003cem\u003ePreface xiii\u003c\/em\u003e\u003cbr\u003e\u003cstrong\u003eChapter 1: Python Basics 1\u003c\/strong\u003e\u003cbr\u003e1.1 Running Python 1\u003cbr\u003e1.2 Python Programs 2\u003cbr\u003e1.3 Primitives, Variables, and Expressions 3\u003cbr\u003e1.4 Arithmetic Operators 5\u003cbr\u003e1.5 Conditionals and Control Flow 7\u003cbr\u003e1.6 Text Strings 9\u003cbr\u003e1.7 File Input and Output 12\u003cbr\u003e1.8 Lists 13\u003cbr\u003e1.9 Tuples 15\u003cbr\u003e1.10 Sets 17\u003cbr\u003e1.11 Dictionaries 18\u003cbr\u003e1.12 Iteration and Looping 21\u003cbr\u003e1.13 Functions 22\u003cbr\u003e1.14 Exceptions 24\u003cbr\u003e1.15 Program Termination 26\u003cbr\u003e1.16 Objects and Classes 26\u003cbr\u003e1.17 Modules 30\u003cbr\u003e1.18 Script Writing 32\u003cbr\u003e1.19 Packages 33\u003cbr\u003e1.20 Structuring an Application 34\u003cbr\u003e1.21 Managing Third-Party Packages 35\u003cbr\u003e1.22 Python: It Fits Your Brain 36\u003cbr\u003e\u003cstrong\u003eChapter 2: Operators, Expressions, and Data Manipulation 37\u003c\/strong\u003e\u003cbr\u003e2.1 Literals 37\u003cbr\u003e2.2 Expressions and Locations 38\u003cbr\u003e2.3 Standard Operators 39\u003cbr\u003e2.4 In-Place Assignment 41\u003cbr\u003e2.5 Object Comparison 42\u003cbr\u003e2.6 Ordered Comparison Operators 42\u003cbr\u003e2.7 Boolean Expressions and Truth Values 43\u003cbr\u003e2.8 Conditional Expressions 44\u003cbr\u003e2.9 Operations Involving Iterables 45\u003cbr\u003e2.10 Operations on Sequences 47\u003cbr\u003e2.11 Operations on Mutable Sequences 49\u003cbr\u003e2.12 Operations on Sets 50\u003cbr\u003e2.13 Operations on Mappings 51\u003cbr\u003e2.14 List, Set, and Dictionary Comprehensions 52\u003cbr\u003e2.15 Generator Expressions 54\u003cbr\u003e2.16 The Attribute (.) Operator 56\u003cbr\u003e2.17 The Function Call () Operator 56\u003cbr\u003e2.18 Order of Evaluation 56\u003cbr\u003e2.19 Final Words: The Secret Life of Data 58\u003cbr\u003e\u003cstrong\u003eChapter 3: Program Structure and Control Flow 59\u003c\/strong\u003e\u003cbr\u003e3.1 Program Structure and Execution 59\u003cbr\u003e3.2 Conditional Execution 59\u003cbr\u003e3.3 Loops and Iteration 60\u003cbr\u003e3.4 Exceptions 64\u003cbr\u003e3.5 Context Managers and the with Statement 75\u003cbr\u003e3.6 Assertions and __debug__ 77\u003cbr\u003e3.7 Final Words 78\u003cbr\u003e\u003cstrong\u003eChapter 4: Objects, Types, and Protocols 79\u003c\/strong\u003e\u003cbr\u003e4.1 Essential Concepts 79\u003cbr\u003e4.2 Object Identity and Type 80\u003cbr\u003e4.3 Reference Counting and Garbage Collection 81\u003cbr\u003e4.4 References and Copies 83\u003cbr\u003e4.5 Object Representation and Printing 84\u003cbr\u003e4.6 First-Class Objects 85\u003cbr\u003e4.7 Using None for Optional or Missing Data 87\u003cbr\u003e4.8 Object Protocols and Data Abstraction 87\u003cbr\u003e4.9 Object Protocol 89\u003cbr\u003e4.10 Number Protocol 90\u003cbr\u003e4.11 Comparison Protocol 92\u003cbr\u003e4.12 Conversion Protocols 94\u003cbr\u003e4.13 Container Protocol 95\u003cbr\u003e4.14 Iteration Protocol 97\u003cbr\u003e4.15 Attribute Protocol 98\u003cbr\u003e4.16 Function Protocol 98\u003cbr\u003e4.17 Context Manager Protocol 99\u003cbr\u003e4.18 Final Words: On Being Pythonic 99\u003cbr\u003e\u003cstrong\u003eChapter 5: Functions 101\u003c\/strong\u003e\u003cbr\u003e5.1 Function Definitions 101\u003cbr\u003e5.2 Default Arguments 101\u003cbr\u003e5.3 Variadic Arguments 102\u003cbr\u003e5.4 Keyword Arguments 103\u003cbr\u003e5.5 Variadic Keyword Arguments 104\u003cbr\u003e5.6 Functions Accepting All Inputs 104\u003cbr\u003e5.7 Positional-Only Arguments 105\u003cbr\u003e5.8 Names, Documentation Strings, and Type Hints 106\u003cbr\u003e5.9 Function Application and Parameter Passing 107\u003cbr\u003e5.10 Return Values 109\u003cbr\u003e5.11 Error Handling 110\u003cbr\u003e5.12 Scoping Rules 111\u003cbr\u003e5.13 Recursion 114\u003cbr\u003e5.14 The lambda Expression 114\u003cbr\u003e5.15 Higher-Order Functions 115\u003cbr\u003e5.16 Argument Passing in Callback Functions 118\u003cbr\u003e5.17 Returning Results from Callbacks 121\u003cbr\u003e5.18 Decorators 124\u003cbr\u003e5.19 Map, Filter, and Reduce 127\u003cbr\u003e5.20 Function Introspection, Attributes, and Signatures 129\u003cbr\u003e5.21 Environment Inspection 131\u003cbr\u003e5.22 Dynamic Code Execution and Creation 133\u003cbr\u003e5.23 Asynchronous Functions and await 135\u003cbr\u003e5.24 Final Words: Thoughts on Functions and Composition 137\u003cbr\u003e\u003cstrong\u003eChapter 6: Generators 139\u003c\/strong\u003e\u003cbr\u003e6.1 Generators and yield 139\u003cbr\u003e6.2 Restartable Generators 142\u003cbr\u003e6.3 Generator Delegation 142\u003cbr\u003e6.4 Using Generators in Practice 144\u003cbr\u003e6.5 Enhanced Generators and yield Expressions 146\u003cbr\u003e6.6 Applications of Enhanced Generators 148\u003cbr\u003e6.7 Generators and the Bridge to Awaiting 151\u003cbr\u003e6.8 Final Words: A Brief History of Generators and Looking Forward 152\u003cbr\u003e\u003cstrong\u003eChapter 7: Classes and Object-Oriented Programming 153\u003c\/strong\u003e\u003cbr\u003e7.1 Objects 153\u003cbr\u003e7.2 The class Statement 154\u003cbr\u003e7.3 Instances 155\u003cbr\u003e7.4 Attribute Access 156\u003cbr\u003e7.5 Scoping Rules 158\u003cbr\u003e7.6 Operator Overloading and Protocols 159\u003cbr\u003e7.7 Inheritance 160\u003cbr\u003e7.8 Avoiding Inheritance via Composition 163\u003cbr\u003e7.9 Avoiding Inheritance via Functions 166\u003cbr\u003e7.10 Dynamic Binding and Duck Typing 167\u003cbr\u003e7.11 The Danger of Inheriting from Built-in Types 167\u003cbr\u003e7.12 Class Variables and Methods 169\u003cbr\u003e7.13 Static Methods 173\u003cbr\u003e7.14 A Word about Design Patterns 176\u003cbr\u003e7.15 Data Encapsulation and Private Attributes 176\u003cbr\u003e7.16 Type Hinting 179\u003cbr\u003e7.17 Properties 180\u003cbr\u003e7.18 Types, Interfaces, and Abstract Base Classes 183\u003cbr\u003e7.19 Multiple Inheritance, Interfaces, and Mixins 187\u003cbr\u003e7.20 Type-Based Dispatch 193\u003cbr\u003e7.21 Class Decorators 194\u003cbr\u003e7.22 Supervised Inheritance 197\u003cbr\u003e7.23 The Object Life Cycle and Memory Management 199\u003cbr\u003e7.24 Weak References 204\u003cbr\u003e7.25 Internal Object Representation and Attribute Binding 206\u003cbr\u003e7.26 Proxies, Wrappers, and Delegation 208\u003cbr\u003e7.27 Reducing Memory Use with __slots__ 210\u003cbr\u003e7.28 Descriptors 211\u003cbr\u003e7.29 Class Definition Process 215\u003cbr\u003e7.30 Dynamic Class Creation 216\u003cbr\u003e7.31 Metaclasses 217\u003cbr\u003e7.32 Built-in Objects for Instances and Classes 222\u003cbr\u003e7.33 Final Words: Keep It Simple 223\u003cbr\u003e\u003cstrong\u003eChapter 8: Modules and Packages 225\u003c\/strong\u003e\u003cbr\u003e8.1 Modules and the import Statement 225\u003cbr\u003e8.2 Module Caching 227\u003cbr\u003e8.3 Importing Selected Names from a Module 228\u003cbr\u003e8.4 Circular Imports 230\u003cbr\u003e8.5 Module Reloading and Unloading 232\u003cbr\u003e8.6 Module Compilation 233\u003cbr\u003e8.7 The Module Search Path 234\u003cbr\u003e8.8 Execution as the Main Program 234\u003cbr\u003e8.9 Packages 235\u003cbr\u003e8.10 Imports Within a Package 237\u003cbr\u003e8.11 Running a Package Submodule as a Script 238\u003cbr\u003e8.12 Controlling the Package Namespace 239\u003cbr\u003e8.13 Controlling Package Exports 240\u003cbr\u003e8.14 Package Data 241\u003cbr\u003e8.15 Module Objects 242\u003cbr\u003e8.16 Deploying Python Packages 243\u003cbr\u003e8.17 The Penultimate Word: Start with a Package 244\u003cbr\u003e8.18 The Final Word: Keep It Simple 245\u003cbr\u003e\u003cstrong\u003eChapter 9: Input and Output 247\u003c\/strong\u003e\u003cbr\u003e9.1 Data Representation 247\u003cbr\u003e9.2 Text Encoding and Decoding 248\u003cbr\u003e9.3 Text and Byte Formatting 250\u003cbr\u003e9.4 Reading Command-Line Options 254\u003cbr\u003e9.5 Environment Variables 256\u003cbr\u003e9.6 Files and File Objects 256\u003cbr\u003e9.7 I\/O Abstraction Layers 260\u003cbr\u003e9.8 Standard Input, Output, and Error 263\u003cbr\u003e9.9 Directories 264\u003cbr\u003e9.10 The print() function 265\u003cbr\u003e9.11 Generating Output 265\u003cbr\u003e9.12 Consuming Input 266\u003cbr\u003e9.13 Object Serialization 268\u003cbr\u003e9.14 Blocking Operations and Concurrency 269\u003cbr\u003e9.15 Standard Library Modules 273\u003cbr\u003e9.16 Final Words 296\u003cbr\u003e\u003cstrong\u003eChapter 10: Built-in Functions and Standard Library 297\u003c\/strong\u003e\u003cbr\u003e10.1 Built-in Functions 297\u003cbr\u003e10.2 Built-in Exceptions 314\u003cbr\u003e10.3 Standard Library 318\u003cbr\u003e10.4 Final Words: Use the Built-Ins 320\u003cbr\u003e\u003cem\u003eIndex 321\u003c\/em\u003e\u003c\/p\u003e","brand":"Pearson Education (US)","offers":[{"title":"Default Title","offer_id":48864169656663,"sku":"9780134173276","price":30.39,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9780134173276.jpg?v=1722270717"},{"product_id":"red-hat-rhcsa-9-cert-guide-9780138096274","title":"Red Hat RHCSA 9 Cert Guide","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003e\u003cp\u003eIntroduction xxx\u003cbr\u003e \u003cstrong\u003ePart I Performing Basic System Management Tasks\u003cbr\u003e Chapter 1\u003c\/strong\u003e Installing Red Hat Enterprise Linux 3\u003cbr\u003e “Do I Know This Already?” Quiz 3\u003cbr\u003e Foundation Topics 6\u003cbr\u003e Preparing to Install Red Hat Enterprise Linux 6\u003cbr\u003e What Is Red Hat Enterprise Linux 9 Server? 6\u003cbr\u003e Getting the Software 7\u003cbr\u003e Using Red Hat Enterprise Linux 7\u003cbr\u003e Using CentOS Stream 7\u003cbr\u003e Other Distributions 8\u003cbr\u003e Understanding Access to Repositories 8\u003cbr\u003e Setup Requirements 9\u003cbr\u003e Cert Guide Environment Description 9\u003cbr\u003e Performing an Installation 10\u003cbr\u003e Summary 22\u003cbr\u003e Exam Preparation Tasks 23\u003cbr\u003e End-of-Chapter Lab 24\u003cbr\u003e \u003cstrong\u003eChapter 2\u003c\/strong\u003e Using Essential Tools 27\u003cbr\u003e “Do I Know This Already?” Quiz 27\u003cbr\u003e Foundation Topics 30\u003cbr\u003e Basic Shell Skills 30\u003cbr\u003e Understanding Commands 30\u003cbr\u003e Executing Commands 30\u003cbr\u003e I\/O Redirection 32\u003cbr\u003e Using Pipes 34\u003cbr\u003e History 35\u003cbr\u003e Bash Completion 37\u003cbr\u003e Editing Files with vim 37\u003cbr\u003e Understanding the Shell Environment 40\u003cbr\u003e Understanding Variables 40\u003cbr\u003e Recognizing Environment Configuration Files 41\u003cbr\u003e Using \/etc\/motd and \/etc\/issue 42\u003cbr\u003e Finding Help 43\u003cbr\u003e Using --help 43\u003cbr\u003e Using man 43\u003cbr\u003e Finding the Right man Page 44\u003cbr\u003e Updating mandb 46\u003cbr\u003e Using info 47\u003cbr\u003e Using \/usr\/share\/doc Documentation Files 48\u003cbr\u003e Summary 49\u003cbr\u003e Exam Preparation Tasks 49\u003cbr\u003e End-of-Chapter Lab 51\u003cbr\u003e \u003cstrong\u003eChapter 3\u003c\/strong\u003e Essential File Management Tools 53\u003cbr\u003e “Do I Know This Already?” Quiz 53\u003cbr\u003e Foundation Topics 56\u003cbr\u003e Working with the File System Hierarchy 56\u003cbr\u003e Defining the File System Hierarchy 56\u003cbr\u003e Understanding Mounts 57\u003cbr\u003e Managing Files 61\u003cbr\u003e Working with Wildcards 61\u003cbr\u003e Managing and Working with Directories 61\u003cbr\u003e Working with Absolute and Relative Pathnames 62\u003cbr\u003e Listing Files and Directories 64\u003cbr\u003e Copying Files and Directories 64\u003cbr\u003e Moving Files and Directories 65\u003cbr\u003e Deleting Files and Directories 66\u003cbr\u003e Using Links 68\u003cbr\u003e Understanding Hard Links 68\u003cbr\u003e Understanding Symbolic Links 69\u003cbr\u003e Creating Links 69\u003cbr\u003e Removing Links 70\u003cbr\u003e Working with Archives and Compressed Files 71\u003cbr\u003e Managing Archives with tar 72\u003cbr\u003e Creating Archives with tar 72\u003cbr\u003e Monitoring and Extracting tar Files 73\u003cbr\u003e Using Compression 74\u003cbr\u003e Summary 75\u003cbr\u003e Exam Preparation Tasks 76\u003cbr\u003e End-of-Chapter Lab 77\u003cbr\u003e \u003cstrong\u003eChapter 4\u003c\/strong\u003e Working with Text Files 81\u003cbr\u003e “Do I Know This Already?” Quiz 81\u003cbr\u003e Foundation Topics 84\u003cbr\u003e Using Common Text File–Related Tools 84\u003cbr\u003e Doing More with less 84\u003cbr\u003e Showing File Contents with cat 85\u003cbr\u003e Displaying the First or Last Lines of a File with head and tail 86\u003cbr\u003e Filtering Specific Columns with cut 87\u003cbr\u003e Sorting File Contents and Output with sort 87\u003cbr\u003e Counting Lines, Words, and Characters with wc 88\u003cbr\u003e A Primer to Using Regular Expressions 89\u003cbr\u003e Using Line Anchors 90\u003cbr\u003e Using Escaping in Regular Expressions 91\u003cbr\u003e Using Wildcards and Multipliers 91\u003cbr\u003e Using Extended Regular Expressions 91\u003cbr\u003e Using grep to Analyze Text 93\u003cbr\u003e Working with Other Useful Text Processing Utilities 94\u003cbr\u003e Summary 96\u003cbr\u003e Exam Preparation Tasks 96\u003cbr\u003e End-of-Chapter Lab 98\u003cbr\u003e \u003cstrong\u003eChapter 5\u003c\/strong\u003e Connecting to Red Hat Enterprise Linux 9 101\u003cbr\u003e “Do I Know This Already?” Quiz 101\u003cbr\u003e Foundation Topics 104\u003cbr\u003e Working on Local Consoles 104\u003cbr\u003e Logging In to a Local Console 104\u003cbr\u003e Switching Between Terminals in a Graphical Environment 105\u003cbr\u003e Working with Multiple Terminals in a Nongraphical Environment 107\u003cbr\u003e Understanding Pseudo Terminal Devices 108\u003cbr\u003e Booting, Rebooting, and Shutting Down Systems 109\u003cbr\u003e Using SSH and Related Utilities 110\u003cbr\u003e Accessing Remote Systems Using SSH 110\u003cbr\u003e Using Graphical Applications in an SSH Environment 113\u003cbr\u003e Securely Transferring Files Between Systems 114\u003cbr\u003e Using scp to Securely Copy Files 114\u003cbr\u003e Using sftp to Securely Transfer Files 115\u003cbr\u003e Using rsync to Synchronize Files 115\u003cbr\u003e Configuring Key-Based Authentication for SSH 116\u003cbr\u003e Using Passphrases or Not? 116\u003cbr\u003e Summary 117\u003cbr\u003e Exam Preparation Tasks 118\u003cbr\u003e End-of-Chapter Labs 119\u003cbr\u003e \u003cstrong\u003eChapter 6\u003c\/strong\u003e User and Group Management 121\u003cbr\u003e “Do I Know This Already?” Quiz 121\u003cbr\u003e Foundation Topics 124\u003cbr\u003e Understanding Different User Types 124\u003cbr\u003e Users on Linux 124\u003cbr\u003e Working as Root 124\u003cbr\u003e Using su 125\u003cbr\u003e sudo 126\u003cbr\u003e PolicyKit 127\u003cbr\u003e Creating and Managing User Accounts 129\u003cbr\u003e System Accounts and Normal Accounts 129\u003cbr\u003e Creating Users 132\u003cbr\u003e Modifying the Configuration Files 132\u003cbr\u003e Using useradd 133\u003cbr\u003e Home Directories 133\u003cbr\u003e Default Shell 133\u003cbr\u003e Managing User Properties 134\u003cbr\u003e Configuration Files for User Management Defaults 134\u003cbr\u003e Managing Password Properties 135\u003cbr\u003e Creating a User Environment 135\u003cbr\u003e Creating and Managing Group Accounts 137\u003cbr\u003e Understanding Linux Groups 137\u003cbr\u003e Creating Groups 137\u003cbr\u003e Creating Groups with vigr 137\u003cbr\u003e Using groupadd to Create Groups 138\u003cbr\u003e Managing Group Properties 138\u003cbr\u003e Summary 139\u003cbr\u003e Exam Preparation Tasks 140\u003cbr\u003e End-of-Chapter Labs 141\u003cbr\u003e \u003cstrong\u003eChapter 7\u003c\/strong\u003e Permissions Management 145\u003cbr\u003e “Do I Know This Already?” Quiz 145\u003cbr\u003e Foundation Topics 148\u003cbr\u003e Managing File Ownership 148\u003cbr\u003e Displaying Ownership 148\u003cbr\u003e Changing User Ownership 149\u003cbr\u003e Changing Group Ownership 150\u003cbr\u003e Understanding Default Ownership 150\u003cbr\u003e Managing Basic Permissions 151\u003cbr\u003e Understanding Read, Write, and Execute Permissions 152\u003cbr\u003e Applying Read, Write, and Execute Permissions 153\u003cbr\u003e Managing Advanced Permissions 155\u003cbr\u003e Understanding Advanced Permissions 155\u003cbr\u003e Applying Advanced Permissions 157\u003cbr\u003e Setting Default Permissions with umask 159\u003cbr\u003e Working with User-Extended Attributes 160\u003cbr\u003e Summary 162\u003cbr\u003e Exam Preparation Tasks 162\u003cbr\u003e End-of-Chapter Lab 164\u003cbr\u003e \u003cstrong\u003eChapter 8\u003c\/strong\u003e Configuring Networking 167\u003cbr\u003e “Do I Know This Already?” Quiz 167\u003cbr\u003e Foundation Topics 170\u003cbr\u003e Networking Fundamentals 170\u003cbr\u003e IP Addresses 170\u003cbr\u003e IPv6 Addresses 171\u003cbr\u003e IPv4 Network Masks 171\u003cbr\u003e Binary Notation 172\u003cbr\u003e MAC Addresses 173\u003cbr\u003e Protocol and Ports 173\u003cbr\u003e Managing Network Addresses and Interfaces 174\u003cbr\u003e Validating Network Configuration 175\u003cbr\u003e Validating Network Address Configuration 175\u003cbr\u003e Validating Routing 178\u003cbr\u003e Validating the Availability of Ports and Services 179\u003cbr\u003e Managing Network Configuration with nmtui and nmcli 180\u003cbr\u003e Required Permissions to Change Network Configuration 181\u003cbr\u003e Configuring the Network with nmcli 182\u003cbr\u003e Configuring the Network with nmtui 184\u003cbr\u003e Working on Network Configuration Files 186\u003cbr\u003e Setting Up Hostname and Name Resolution 187\u003cbr\u003e Hostnames 187\u003cbr\u003e DNS Name Resolution 189\u003cbr\u003e Summary 191\u003cbr\u003e Exam Preparation Tasks 191\u003cbr\u003e End-of-Chapter Lab 193\u003cbr\u003e \u003cstrong\u003ePart II Operating Running Systems\u003cbr\u003e Chapter 9\u003c\/strong\u003e Managing Software 195\u003cbr\u003e “Do I Know This Already?” Quiz 195\u003cbr\u003e Foundation Topics 198\u003cbr\u003e Managing Software Packages with dnf 198\u003cbr\u003e Understanding the Role of Repositories 198\u003cbr\u003e Registering Red Hat Enterprise Linux for Support 199\u003cbr\u003e Managing Subscriptions 200\u003cbr\u003e Specifying Which Repository to Use 200\u003cbr\u003e Understanding Repository Security 203\u003cbr\u003e Creating Your Own Repository 204\u003cbr\u003e Using dnf 206\u003cbr\u003e Using dnf to Find Software Packages 206\u003cbr\u003e Getting More Information About Packages 208\u003cbr\u003e Installing and Removing Software Packages 209\u003cbr\u003e Showing Lists of Packages 211\u003cbr\u003e Updating Packages 213\u003cbr\u003e Working with dnf Package Groups 214\u003cbr\u003e Using dnf History 216\u003cbr\u003e Managing Package Modules 217\u003cbr\u003e Understanding dnf Modules 218\u003cbr\u003e Managing Modules 218\u003cbr\u003e Managing Software Packages with rpm 221\u003cbr\u003e Understanding RPM Filenames 222\u003cbr\u003e Querying the RPM Database 222\u003cbr\u003e Querying RPM Package Files 223\u003cbr\u003e Using repoquery 224\u003cbr\u003e Summary 226\u003cbr\u003e Exam Preparation Tasks 226\u003cbr\u003e End-of-Chapter Labs 227\u003cbr\u003e \u003cstrong\u003eChapter 10\u003c\/strong\u003e Managing Processes 231\u003cbr\u003e “Do I Know This Already?” Quiz 231\u003cbr\u003e Foundation Topics 234\u003cbr\u003e Introduction to Process Management 234\u003cbr\u003e Managing Shell Jobs 234\u003cbr\u003e Running Jobs in the Foreground and Background 234\u003cbr\u003e Managing Shell Jobs 235\u003cbr\u003e Understanding Parent–Child Relations 237\u003cbr\u003e Using Common Command-Line Tools for Process Management 237\u003cbr\u003e Understanding Processes and Threads 238\u003cbr\u003e Using ps to Get Process Information 239\u003cbr\u003e Understanding Process Priorities 241\u003cbr\u003e Exploring Relations Between Slices 241\u003cbr\u003e Managing Process Priorities 242\u003cbr\u003e Sending Signals to Processes with kill, killall, and pkill 243\u003cbr\u003e Killing Zombies 245\u003cbr\u003e Using top to Manage Processes 246\u003cbr\u003e Using tuned to Optimize Performance 248\u003cbr\u003e Summary 250\u003cbr\u003e Exam Preparation Tasks 250\u003cbr\u003e End-of-Chapter Lab 251\u003cbr\u003e \u003cstrong\u003eChapter 11\u003c\/strong\u003e Working with Systemd 253\u003cbr\u003e “Do I Know This Already?” Quiz 253\u003cbr\u003e Foundation Topics 256\u003cbr\u003e Understanding Systemd 256\u003cbr\u003e Understanding Systemd Unit Locations 256\u003cbr\u003e Understanding Systemd Service Units 257\u003cbr\u003e Understanding Systemd Mount Units 258\u003cbr\u003e Understanding Systemd Socket Units 259\u003cbr\u003e Understanding Systemd Target Units 260\u003cbr\u003e Managing Units Through Systemd 261\u003cbr\u003e Managing Dependencies 263\u003cbr\u003e Managing Unit Options 265\u003cbr\u003e Summary 267\u003cbr\u003e Exam Preparation Tasks 267\u003cbr\u003e End-of-Chapter Lab 268\u003cbr\u003e \u003cstrong\u003eChapter 12\u003c\/strong\u003e Scheduling Tasks 271\u003cbr\u003e “Do I Know This Already?” Quiz 271\u003cbr\u003e Foundation Topics 274\u003cbr\u003e Understanding Task Scheduling Options in RHEL 274\u003cbr\u003e Using Systemd Timers 274\u003cbr\u003e Configuring cron to Automate Recurring Tasks 276\u003cbr\u003e Managing the crond Service 276\u003cbr\u003e Understanding cron Timing 278\u003cbr\u003e Managing cron Configuration Files 278\u003cbr\u003e Understanding the Purpose of anacron 281\u003cbr\u003e Managing cron Security 282\u003cbr\u003e Configuring at to Schedule Future Tasks 282\u003cbr\u003e Summary 283\u003cbr\u003e Exam Preparation Tasks 284\u003cbr\u003e End-of-Chapter Lab 285\u003cbr\u003e \u003cstrong\u003eChapter 13\u003c\/strong\u003e Configuring Logging 287\u003cbr\u003e “Do I Know This Already?” Quiz 287\u003cbr\u003e Foundation Topics 290\u003cbr\u003e Understanding System Logging 290\u003cbr\u003e Understanding the Role of systemd-journald and rsyslogd 290\u003cbr\u003e Reading Log Files 292\u003cbr\u003e Understanding Log File Contents 293\u003cbr\u003e Live Log File Monitoring 294\u003cbr\u003e Using logger 294\u003cbr\u003e Working with systemd-journald 295\u003cbr\u003e Using journalctl to Find Events 295\u003cbr\u003e Preserving the Systemd Journal 298\u003cbr\u003e Configuring rsyslogd 300\u003cbr\u003e Understanding rsyslogd Configuration Files 300\u003cbr\u003e Understanding rsyslog.conf Sections 300\u003cbr\u003e Understanding Facilities, Priorities, and Log Destinations 301\u003cbr\u003e Rotating Log Files 304\u003cbr\u003e Summary 306\u003cbr\u003e Exam Preparation Tasks 306\u003cbr\u003e End-of-Chapter Lab 308\u003cbr\u003e \u003cstrong\u003eChapter 14\u003c\/strong\u003e Managing Storage 311\u003cbr\u003e “Do I Know This Already?” Quiz 311\u003cbr\u003e Foundation Topics 314\u003cbr\u003e Understanding MBR and GPT Partitions 314\u003cbr\u003e Understanding the MBR Partitioning Scheme 314\u003cbr\u003e Understanding the Need for GPT Partitioning 315\u003cbr\u003e Understanding Storage Measurement Units 316\u003cbr\u003e Managing Partitions and File Systems 317\u003cbr\u003e Creating MBR Partitions with fdisk 318\u003cbr\u003e Using Extended and Logical Partitions on MBR 320\u003cbr\u003e Creating GPT Partitions with gdisk 322\u003cbr\u003e Creating GPT Partitions with parted 327\u003cbr\u003e Creating File Systems 328\u003cbr\u003e Changing File System Properties 329\u003cbr\u003e Managing Ext4 File System Properties 329\u003cbr\u003e Managing XFS File System Properties 331\u003cbr\u003e Adding Swap Partitions 332\u003cbr\u003e Adding Swap Files 333\u003cbr\u003e Mounting File Systems 333\u003cbr\u003e Manually Mounting File Systems 334\u003cbr\u003e Using Device Names, UUIDs, or Disk Labels 334\u003cbr\u003e Automating File System Mounts Through \/etc\/fstab 335\u003cbr\u003e Using Systemd Mounts 338\u003cbr\u003e Summary 339\u003cbr\u003e Exam Preparation Tasks 340\u003cbr\u003e End-of-Chapter Lab 341\u003cbr\u003e \u003cstrong\u003eChapter 15\u003c\/strong\u003e Managing Advanced Storage 343\u003cbr\u003e “Do I Know This Already?” Quiz 343\u003cbr\u003e Foundation Topics 346\u003cbr\u003e Understanding LVM 346\u003cbr\u003e LVM Architecture 346\u003cbr\u003e LVM Features 347\u003cbr\u003e Creating LVM Logical Volumes 348\u003cbr\u003e Creating the Physical Volumes 350\u003cbr\u003e Creating the Volume Groups 353\u003cbr\u003e Creating the Logical Volumes and File Systems 355\u003cbr\u003e Understanding LVM Device Naming 355\u003cbr\u003e Resizing LVM Logical Volumes 358\u003cbr\u003e Resizing Volume Groups 358\u003cbr\u003e Resizing Logical Volumes and File Systems 358\u003cbr\u003e Reducing Volume Groups 360\u003cbr\u003e Configuring Stratis 361\u003cbr\u003e Understanding Stratis Architecture 362\u003cbr\u003e Creating Stratis Storage 362\u003cbr\u003e Managing Stratis 363\u003cbr\u003e Summary 365\u003cbr\u003e Exam Preparation Tasks 365\u003cbr\u003e End-of-Chapter Labs 366\u003cbr\u003e \u003cstrong\u003ePart III Performing Advanced System Administration Tasks\u003cbr\u003e Chapter 16\u003c\/strong\u003e Basic Kernel Management 369\u003cbr\u003e “Do I Know This Already?” Quiz 369\u003cbr\u003e Foundation Topics 372\u003cbr\u003e Understanding the Role of the Linux Kernel 372\u003cbr\u003e Understanding the Use of Kernel Threads and Drivers 372\u003cbr\u003e Analyzing What the Kernel Is Doing 373\u003cbr\u003e Working with Kernel Modules 375\u003cbr\u003e Understanding Hardware Initialization 376\u003cbr\u003e Managing Kernel Modules 378\u003cbr\u003e Checking Driver Availability for Hardware Devices 381\u003cbr\u003e Managing Kernel Module Parameters 382\u003cbr\u003e Upgrading the Linux Kernel 383\u003cbr\u003e Summary 383\u003cbr\u003e Exam Preparation Tasks 384\u003cbr\u003e End-of-Chapter Lab 385\u003cbr\u003e \u003cstrong\u003eChapter 17\u003c\/strong\u003e Managing and Understanding the Boot Procedure 387\u003cbr\u003e “Do I Know This Already?” Quiz 387\u003cbr\u003e Foundation Topics 390\u003cbr\u003e Managing Systemd Targets 390\u003cbr\u003e Understanding Systemd Targets 390\u003cbr\u003e Working with Targets 390\u003cbr\u003e Understanding Target Units 391\u003cbr\u003e Understanding Wants 392\u003cbr\u003e Managing Systemd Targets 392\u003cbr\u003e Isolating Targets 393\u003cbr\u003e Setting the Default Target 396\u003cbr\u003e Working with GRUB 2 396\u003cbr\u003e Understanding GRUB 2 396\u003cbr\u003e Understanding GRUB 2 Configuration Files 397\u003cbr\u003e Modifying Default GRUB 2 Boot Options 398\u003cbr\u003e Summary 399\u003cbr\u003e Exam Preparation Tasks 399\u003cbr\u003e End-of-Chapter Labs 401\u003cbr\u003e \u003cstrong\u003eChapter 18\u003c\/strong\u003e Essential Troubleshooting Skills 403\u003cbr\u003e “Do I Know This Already?” Quiz 403\u003cbr\u003e Foundation Topics 406\u003cbr\u003e Understanding the RHEL 9 Boot Procedure 406\u003cbr\u003e Passing Kernel Boot Arguments 408\u003cbr\u003e Accessing the Boot Prompt 408\u003cbr\u003e Starting a Troubleshooting Target 409\u003cbr\u003e Using a Rescue Disk 410\u003cbr\u003e Restoring System Access Using a Rescue Disk 411\u003cbr\u003e Reinstalling GRUB Using a Rescue Disk 413\u003cbr\u003e Re-creating the Initramfs Using a Rescue Disk 413\u003cbr\u003e Fixing Common Issues 414\u003cbr\u003e Reinstalling GRUB 2 414\u003cbr\u003e Fixing the Initramfs 415\u003cbr\u003e Recovering from File System Issues 415\u003cbr\u003e Resetting the Root Password 416\u003cbr\u003e Summary 417\u003cbr\u003e Exam Preparation Tasks 417\u003cbr\u003e End-of-Chapter Lab 419\u003cbr\u003e \u003cstrong\u003eChapter 19\u003c\/strong\u003e An Introduction to Automation with Bash Shell Scripting 421\u003cbr\u003e “Do I Know This Already?” Quiz 421\u003cbr\u003e Foundation Topics 424\u003cbr\u003e Understanding Shell Scripting Core Elements 424\u003cbr\u003e Using Variables and Input 426\u003cbr\u003e Using Positional Parameters 426\u003cbr\u003e Working with Variables 427\u003cbr\u003e Using Conditional Loops 429\u003cbr\u003e Working with if … then … else 430\u003cbr\u003e Using || and \u0026amp;\u0026amp; 431\u003cbr\u003e Applying for 431\u003cbr\u003e Understanding while and until 432\u003cbr\u003e Understanding case 434\u003cbr\u003e Bash Shell Script Debugging 435\u003cbr\u003e Summary 435\u003cbr\u003e Exam Preparation Tasks 436\u003cbr\u003e End-of-Chapter Lab 437\u003cbr\u003e \u003cstrong\u003ePart IV Managing Network Services\u003cbr\u003e Chapter 20\u003c\/strong\u003e Configuring SSH 439\u003cbr\u003e “Do I Know This Already?” Quiz 439\u003cbr\u003e Foundation Topics 442\u003cbr\u003e Hardening the SSH Server 442\u003cbr\u003e Limiting Root Access 442\u003cbr\u003e Configuring Alternative Ports 443\u003cbr\u003e Modifying SELinux to Allow for Port Changes 443\u003cbr\u003e Limiting User Access 444\u003cbr\u003e Using Other Useful sshd Options 445\u003cbr\u003e Session Options 446\u003cbr\u003e Connection Keepalive Options 446\u003cbr\u003e Configuring Key-Based Authentication with Passphrases 447\u003cbr\u003e Summary 448\u003cbr\u003e Exam Preparation Tasks 448\u003cbr\u003e End-of-Chapter Lab 450\u003cbr\u003e \u003cstrong\u003eChapter 21\u003c\/strong\u003e Managing Apache HTTP Services 453\u003cbr\u003e “Do I Know This Already?” Quiz 453\u003cbr\u003e Foundation Topics 456\u003cbr\u003e Configuring a Basic Apache Server 456\u003cbr\u003e Installing the Required Software 456\u003cbr\u003e Identifying the Main Configuration File 456\u003cbr\u003e Creating Web Server Content 459\u003cbr\u003e Understanding Apache Configuration Files 460\u003cbr\u003e Creating Apache Virtual Hosts 462\u003cbr\u003e Summary 464\u003cbr\u003e Exam Preparation Tasks 464\u003cbr\u003e End-of-Chapter Lab 466\u003cbr\u003e \u003cstrong\u003eChapter 22\u003c\/strong\u003e Managing SELinux 469\u003cbr\u003e “Do I Know This Already?” Quiz 470\u003cbr\u003e Foundation Topics 473\u003cbr\u003e Understanding SELinux Working Modes 473\u003cbr\u003e Understanding Context Settings and the Policy 477\u003cbr\u003e Monitoring Current Context Labels 477\u003cbr\u003e Setting Context Types 479\u003cbr\u003e Finding the Context Type You Need 482\u003cbr\u003e Restoring Default File Contexts 483\u003cbr\u003e Managing Port Access 484\u003cbr\u003e Using Boolean Settings to Modify SELinux Settings 485\u003cbr\u003e Diagnosing and Addressing SELinux Policy Violations 487\u003cbr\u003e Making SELinux Analyzing Easier 489\u003cbr\u003e Summary 490\u003cbr\u003e Exam Preparation Tasks 491\u003cbr\u003e End-of-Chapter Lab 492\u003cbr\u003e \u003cstrong\u003eChapter 23\u003c\/strong\u003e Configuring a Firewall 495\u003cbr\u003e “Do I Know This Already?” Quiz 495\u003cbr\u003e Foundation Topics 498\u003cbr\u003e Understanding Linux Firewalling 498\u003cbr\u003e Understanding Previous Solutions 498\u003cbr\u003e Understanding Firewalld 498\u003cbr\u003e Understanding Firewalld Zones 499\u003cbr\u003e Understanding Firewalld Services 500\u003cbr\u003e Working with Firewalld 501\u003cbr\u003e Summary 504\u003cbr\u003e Exam Preparation Tasks 504\u003cbr\u003e End-of-Chapter Lab 506\u003cbr\u003e \u003cstrong\u003eChapter 24\u003c\/strong\u003e Accessing Network Storage 509\u003cbr\u003e “Do I Know This Already?” Quiz 509\u003cbr\u003e Foundation Topics 512\u003cbr\u003e Using NFS Services 512\u003cbr\u003e Understanding NFS Security 512\u003cbr\u003e RHEL NFS Versions 512\u003cbr\u003e Setting Up NFS 513\u003cbr\u003e Mounting the NFS Share 514\u003cbr\u003e Mounting Remote File Systems Through fstab 515\u003cbr\u003e Mounting NFS Shares Through fstab 515\u003cbr\u003e Using Automount to Mount Remote File Systems 516\u003cbr\u003e Understanding Automount 516\u003cbr\u003e Defining Mounts in Automount 516\u003cbr\u003e Configuring Automount for NFS 517\u003cbr\u003e Using Wildcards in Automount 517\u003cbr\u003e Summary 518\u003cbr\u003e Exam Preparation Tasks 518\u003cbr\u003e End-of-Chapter Lab 520\u003cbr\u003e \u003cstrong\u003eChapter 25\u003c\/strong\u003e Configuring Time Services 523\u003cbr\u003e “Do I Know This Already?” Quiz 523\u003cbr\u003e Foundation Topics 526\u003cbr\u003e Understanding Local Time 526\u003cbr\u003e Using Network Time Protocol 527\u003cbr\u003e Managing Time on Red Hat Enterprise Linux 527\u003cbr\u003e Using date 528\u003cbr\u003e Using hwclock 528\u003cbr\u003e Using timedatectl 529\u003cbr\u003e Managing Time Zone Settings 531\u003cbr\u003e Configuring Time Service Clients 533\u003cbr\u003e Summary 534\u003cbr\u003e Exam Preparation Tasks 535\u003cbr\u003e End-of-Chapter Lab 536\u003cbr\u003e \u003cstrong\u003eChapter 26\u003c\/strong\u003e Managing Containers 539\u003cbr\u003e “Do I Know This Already?” Quiz 539\u003cbr\u003e Foundation Topics 542\u003cbr\u003e Understanding Containers 542\u003cbr\u003e Container Host Requirements 543\u003cbr\u003e Containers on RHEL 9 544\u003cbr\u003e Container Orchestration 545\u003cbr\u003e Running a Container 545\u003cbr\u003e Working with Container Images 550\u003cbr\u003e Using Registries 550\u003cbr\u003e Finding Images 552\u003cbr\u003e Inspecting Images 553\u003cbr\u003e Performing Image Housekeeping 556\u003cbr\u003e Building Images from a Containerfile 556\u003cbr\u003e Managing Containers 558\u003cbr\u003e Managing Container Status 558\u003cbr\u003e Running Commands in a Container 559\u003cbr\u003e Managing Container Ports 561\u003cbr\u003e Managing Container Environment Variables 562\u003cbr\u003e Managing Container Storage 563\u003cbr\u003e Running Containers as Systemd Services 566\u003cbr\u003e Summary 568\u003cbr\u003e Exam Preparation Tasks 569\u003cbr\u003e End-of-Chapter Lab 570\u003cbr\u003e \u003cstrong\u003eChapter 27\u003c\/strong\u003e Final Preparation 573\u003cbr\u003e General Tips 573\u003cbr\u003e Verifying Your Readiness 573\u003cbr\u003e Registering for the Exam 573\u003cbr\u003e On Exam Day 574\u003cbr\u003e During the Exam 575\u003cbr\u003e The Nondisclosure Agreement 576\u003cbr\u003e \u003cstrong\u003eChapter 28\u003c\/strong\u003e Theoretical Pre-Assessment Exam 579\u003cbr\u003e \u003cstrong\u003ePart V RHCSA 9 Practice Exams\u003cbr\u003e \u003c\/strong\u003eRHCSA Practice Exam A 581\u003cbr\u003e RHCSA Practice Exam B 583\u003cbr\u003e \u003cstrong\u003eAppendix A:\u003c\/strong\u003e Answers to the “Do I Know This Already?” Quizzes and Review Questions 585\u003cbr\u003e \u003cstrong\u003eAppendix B:\u003c\/strong\u003e \u003cem\u003eRed Hat RHCSA 9 Cert Guide: EX200\u003c\/em\u003e Exam Updates 617\u003cbr\u003e Glossary 619\u003cbr\u003e \u003cbr\u003e \u003cstrong\u003eOnline Elements:\u003cbr\u003e \u003c\/strong\u003eRHCSA Practice Exam C\u003cbr\u003e RHCSA Practice Exam D\u003cbr\u003e \u003cstrong\u003eAppendix C:\u003c\/strong\u003e Memory Tables\u003cbr\u003e \u003cstrong\u003eAppendix D:\u003c\/strong\u003e Memory Tables Answer Key\u003cbr\u003e Appendix E: Study Planner\u003cbr\u003e Glossary\u003cbr\u003e \u003cbr\u003e \u003cbr\u003e 9780138096274 TOC 3\/24\/2023\u003c\/p\u003e","brand":"Pearson Education (US)","offers":[{"title":"Default Title","offer_id":48864177488215,"sku":"9780138096274","price":34.19,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9780138096274.jpg?v=1722270756"},{"product_id":"beginning-linux-programming-4th-edition-9780470147627","title":"Beginning Linux Programming 4th Edition","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cb\u003eBeginning Linux Programming,\u003c\/b\u003e Fourth Edition continues its unique approach to teaching UNIX programming in a simple and structured way on the Linux platform. Through the use of detailed and realistic examples, students learn by doing, and are able to move from being a Linux beginner to creating custom applications in Linux. The book introduces fundamental concepts beginning with the basics of writing Unix programs in C, and including material on basic system calls, file I\/O, interprocess communication (for getting programs to work together), and shell programming. Parallel to this, the book introduces the toolkits and libraries for working with user interfaces, from simpler terminal mode applications to X and GTK+ for graphical user interfaces. Advanced topics are covered in detail such as processes, pipes, semaphores, socket programming, using MySQL, writing applications for the GNOME or the KDE desktop, writing device drivers, POSIX Threads, and kernel programming for the lates\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003e\u003cp\u003eAcknowledgements x\u003c\/p\u003e \u003cp\u003eForeword xxiii\u003c\/p\u003e \u003cp\u003eIntroduction xxv\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 1: Getting Started 1\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eAn Introduction to UNIX, Linux, and GNU 1\u003c\/p\u003e \u003cp\u003eWhat Is UNIX? 1\u003c\/p\u003e \u003cp\u003eWhat Is Linux? 3\u003c\/p\u003e \u003cp\u003eThe GNU Project and the Free Software Foundation 3\u003c\/p\u003e \u003cp\u003eLinux Distributions 4\u003c\/p\u003e \u003cp\u003eProgramming Linux 4\u003c\/p\u003e \u003cp\u003eLinux Programs 5\u003c\/p\u003e \u003cp\u003eText Editors 6\u003c\/p\u003e \u003cp\u003eThe C Compiler 7\u003c\/p\u003e \u003cp\u003eDevelopment System Roadmap 8\u003c\/p\u003e \u003cp\u003eGetting Help 14\u003c\/p\u003e \u003cp\u003eSummary 16\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 2: Shell Programming 17\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eWhy Program with a Shell? 18\u003c\/p\u003e \u003cp\u003eA Bit of Philosophy 18\u003c\/p\u003e \u003cp\u003eWhat Is a Shell? 19\u003c\/p\u003e \u003cp\u003ePipes and Redirection 21\u003c\/p\u003e \u003cp\u003eRedirecting Output 21\u003c\/p\u003e \u003cp\u003eRedirecting Input 22\u003c\/p\u003e \u003cp\u003ePipes 22\u003c\/p\u003e \u003cp\u003eThe Shell as a Programming Language 23\u003c\/p\u003e \u003cp\u003eInteractive Programs 23\u003c\/p\u003e \u003cp\u003eCreating a Script 24\u003c\/p\u003e \u003cp\u003eMaking a Script Executable 25\u003c\/p\u003e \u003cp\u003eShell Syntax 27\u003c\/p\u003e \u003cp\u003eVariables 27\u003c\/p\u003e \u003cp\u003eConditions 31\u003c\/p\u003e \u003cp\u003eControl Structures 34\u003c\/p\u003e \u003cp\u003eFunctions 46\u003c\/p\u003e \u003cp\u003eCommands 49\u003c\/p\u003e \u003cp\u003eCommand Execution 68\u003c\/p\u003e \u003cp\u003eHere Documents 73\u003c\/p\u003e \u003cp\u003eDebugging Scripts 74\u003c\/p\u003e \u003cp\u003eGoing Graphical — The dialog Utility 75\u003c\/p\u003e \u003cp\u003ePutting It All Together 81\u003c\/p\u003e \u003cp\u003eRequirements 82\u003c\/p\u003e \u003cp\u003eDesign 82\u003c\/p\u003e \u003cp\u003eSummary 91\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 3: Working with Files 93\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eLinux File Structure 94\u003c\/p\u003e \u003cp\u003eDirectories 94\u003c\/p\u003e \u003cp\u003eFiles and Devices 95\u003c\/p\u003e \u003cp\u003eSystem Calls and Device Drivers 96\u003c\/p\u003e \u003cp\u003eLibrary Functions 97\u003c\/p\u003e \u003cp\u003eLow-Level File Access 98\u003c\/p\u003e \u003cp\u003ewrite 98\u003c\/p\u003e \u003cp\u003eread 99\u003c\/p\u003e \u003cp\u003eopen 100\u003c\/p\u003e \u003cp\u003eInitial Permissions 101\u003c\/p\u003e \u003cp\u003eOther System Calls for Managing Files 106\u003c\/p\u003e \u003cp\u003eThe Standard I\/O Library 109\u003c\/p\u003e \u003cp\u003efopen 110\u003c\/p\u003e \u003cp\u003efread 110\u003c\/p\u003e \u003cp\u003efwrite 111\u003c\/p\u003e \u003cp\u003efclose 111\u003c\/p\u003e \u003cp\u003efflush 111\u003c\/p\u003e \u003cp\u003efseek 112\u003c\/p\u003e \u003cp\u003efgetc, getc, and getchar 112\u003c\/p\u003e \u003cp\u003efputc, putc, and putchar 112\u003c\/p\u003e \u003cp\u003efgets and gets 113\u003c\/p\u003e \u003cp\u003eFormatted Input and Output 113\u003c\/p\u003e \u003cp\u003eprintf, fprintf, and sprintf 113\u003c\/p\u003e \u003cp\u003escanf, fscanf, and sscanf 115\u003c\/p\u003e \u003cp\u003eOther Stream Functions 117\u003c\/p\u003e \u003cp\u003eStream Errors 119\u003c\/p\u003e \u003cp\u003eStreams and File Descriptors 119\u003c\/p\u003e \u003cp\u003eFile and Directory Maintenance 120\u003c\/p\u003e \u003cp\u003echmod 120\u003c\/p\u003e \u003cp\u003echown 120\u003c\/p\u003e \u003cp\u003eunlink, link, and symlink 121\u003c\/p\u003e \u003cp\u003emkdir and rmdir 121\u003c\/p\u003e \u003cp\u003echdir and getcwd 122\u003c\/p\u003e \u003cp\u003eScanning Directories 122\u003c\/p\u003e \u003cp\u003eopendir 123\u003c\/p\u003e \u003cp\u003ereaddir 123\u003c\/p\u003e \u003cp\u003etelldir 123\u003c\/p\u003e \u003cp\u003eseekdir 124\u003c\/p\u003e \u003cp\u003eclosedir 124\u003c\/p\u003e \u003cp\u003eErrors 127\u003c\/p\u003e \u003cp\u003estrerror 127\u003c\/p\u003e \u003cp\u003eperror 127\u003c\/p\u003e \u003cp\u003eThe \/proc File System 128\u003c\/p\u003e \u003cp\u003eAdvanced Topics: fcntl and mmap 132\u003c\/p\u003e \u003cp\u003efcntl 132\u003c\/p\u003e \u003cp\u003emmap 133\u003c\/p\u003e \u003cp\u003eSummary 135\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 4: The Linux Environment 137\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eProgram Arguments 137\u003c\/p\u003e \u003cp\u003egetopt 140\u003c\/p\u003e \u003cp\u003egetopt_long 142\u003c\/p\u003e \u003cp\u003eEnvironment Variables 144\u003c\/p\u003e \u003cp\u003eUse of Environment Variables 146\u003c\/p\u003e \u003cp\u003eThe environ Variable 147\u003c\/p\u003e \u003cp\u003eTime and Date 148\u003c\/p\u003e \u003cp\u003eTemporary Files 156\u003c\/p\u003e \u003cp\u003eUser Information 158\u003c\/p\u003e \u003cp\u003eHost Information 161\u003c\/p\u003e \u003cp\u003eLogging 163\u003c\/p\u003e \u003cp\u003eResources and Limits 167\u003c\/p\u003e \u003cp\u003eSummary 173\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 5: Terminals 175\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eReading from and Writing to the Terminal 175\u003c\/p\u003e \u003cp\u003eTalking to the Terminal 180\u003c\/p\u003e \u003cp\u003eThe Terminal Driver and the General Terminal Interface 182\u003c\/p\u003e \u003cp\u003eOverview 183\u003c\/p\u003e \u003cp\u003eHardware Model 183\u003c\/p\u003e \u003cp\u003eThe termios Structure 184\u003c\/p\u003e \u003cp\u003eInput Modes 186\u003c\/p\u003e \u003cp\u003eOutput Modes 186\u003c\/p\u003e \u003cp\u003eControl Modes 187\u003c\/p\u003e \u003cp\u003eLocal Modes 188\u003c\/p\u003e \u003cp\u003eSpecial Control Characters 188\u003c\/p\u003e \u003cp\u003eTerminal Speed 192\u003c\/p\u003e \u003cp\u003eAdditional Functions 192\u003c\/p\u003e \u003cp\u003eTerminal Output 196\u003c\/p\u003e \u003cp\u003eTerminal Type 197\u003c\/p\u003e \u003cp\u003eIdentify Your Terminal Type 197\u003c\/p\u003e \u003cp\u003eUsing terminfo Capabilities 200\u003c\/p\u003e \u003cp\u003eDetecting Keystrokes 205\u003c\/p\u003e \u003cp\u003eVirtual Consoles 207\u003c\/p\u003e \u003cp\u003ePseudo-Terminals 208\u003c\/p\u003e \u003cp\u003eSummary 209\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 6: Managing Text-Based Screens with curses 211\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eCompiling with curses 212\u003c\/p\u003e \u003cp\u003eCurses Terminology and Concepts 213\u003c\/p\u003e \u003cp\u003eThe Screen 216\u003c\/p\u003e \u003cp\u003eOutput to the Screen 216\u003c\/p\u003e \u003cp\u003eReading from the Screen 217\u003c\/p\u003e \u003cp\u003eClearing the Screen 218\u003c\/p\u003e \u003cp\u003eMoving the Cursor 218\u003c\/p\u003e \u003cp\u003eCharacter Attributes 218\u003c\/p\u003e \u003cp\u003eThe Keyboard 221\u003c\/p\u003e \u003cp\u003eKeyboard Modes 221\u003c\/p\u003e \u003cp\u003eKeyboard Input 222\u003c\/p\u003e \u003cp\u003eWindows 224\u003c\/p\u003e \u003cp\u003eThe WINDOW Structure 224\u003c\/p\u003e \u003cp\u003eGeneralized Functions 225\u003c\/p\u003e \u003cp\u003eMoving and Updating a Window 225\u003c\/p\u003e \u003cp\u003eOptimizing Screen Refreshes 229\u003c\/p\u003e \u003cp\u003eSubwindows 230\u003c\/p\u003e \u003cp\u003eThe Keypad 232\u003c\/p\u003e \u003cp\u003eUsing Color 235\u003c\/p\u003e \u003cp\u003eRedefining Colors 238\u003c\/p\u003e \u003cp\u003ePads 238\u003c\/p\u003e \u003cp\u003eThe CD Collection Application 240\u003c\/p\u003e \u003cp\u003eStarting a New CD Collection Application 240\u003c\/p\u003e \u003cp\u003eLooking at main 243\u003c\/p\u003e \u003cp\u003eBuilding the Menu 243\u003c\/p\u003e \u003cp\u003eDatabase File Manipulation 245\u003c\/p\u003e \u003cp\u003eQuerying the CD Database 250\u003c\/p\u003e \u003cp\u003eSummary 254\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 7: Data Management 255\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eManaging Memory 255\u003c\/p\u003e \u003cp\u003eSimple Memory Allocation 256\u003c\/p\u003e \u003cp\u003eAllocating Lots of Memory 257\u003c\/p\u003e \u003cp\u003eAbusing Memory 260\u003c\/p\u003e \u003cp\u003eThe Null Pointer 261\u003c\/p\u003e \u003cp\u003eFreeing Memory 262\u003c\/p\u003e \u003cp\u003eOther Memory Allocation Functions 264\u003c\/p\u003e \u003cp\u003eFile Locking 264\u003c\/p\u003e \u003cp\u003eCreating Lock Files 265\u003c\/p\u003e \u003cp\u003eLocking Regions 268\u003c\/p\u003e \u003cp\u003eUse of read and write with Locking 271\u003c\/p\u003e \u003cp\u003eCompeting Locks 276\u003c\/p\u003e \u003cp\u003eOther Lock Commands 280\u003c\/p\u003e \u003cp\u003eDeadlocks 280\u003c\/p\u003e \u003cp\u003eDatabases 281\u003c\/p\u003e \u003cp\u003eThe dbm Database 281\u003c\/p\u003e \u003cp\u003eThe dbm Routines 283\u003c\/p\u003e \u003cp\u003edbm Access Functions 283\u003c\/p\u003e \u003cp\u003eAdditional dbm Functions 287\u003c\/p\u003e \u003cp\u003eThe CD Application 289\u003c\/p\u003e \u003cp\u003eUpdating the Design 289\u003c\/p\u003e \u003cp\u003eThe CD Database Application Using dbm 290\u003c\/p\u003e \u003cp\u003eSummary 309\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 8: MySQL 311\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eInstallation 312\u003c\/p\u003e \u003cp\u003eMySQL Packages 312\u003c\/p\u003e \u003cp\u003ePost-Install Configuration 314\u003c\/p\u003e \u003cp\u003ePost-Installation Troubleshooting 319\u003c\/p\u003e \u003cp\u003eMySQL Administration 320\u003c\/p\u003e \u003cp\u003eCommands 320\u003c\/p\u003e \u003cp\u003eCreating Users and Giving Them Permissions 325\u003c\/p\u003e \u003cp\u003ePasswords 327\u003c\/p\u003e \u003cp\u003eCreating a Database 328\u003c\/p\u003e \u003cp\u003eData Types 329\u003c\/p\u003e \u003cp\u003eCreating a Table 330\u003c\/p\u003e \u003cp\u003eGraphical Tools 333\u003c\/p\u003e \u003cp\u003eAccessing MySQL Data from C 335\u003c\/p\u003e \u003cp\u003eConnection Routines 337\u003c\/p\u003e \u003cp\u003eError Handling 341\u003c\/p\u003e \u003cp\u003eExecuting SQL Statements 342\u003c\/p\u003e \u003cp\u003eMiscellaneous Functions 357\u003c\/p\u003e \u003cp\u003eThe CD Database Application 358\u003c\/p\u003e \u003cp\u003eCreating the Tables 359\u003c\/p\u003e \u003cp\u003eAdding Some Data 362\u003c\/p\u003e \u003cp\u003eAccessing the Application Data from C 364\u003c\/p\u003e \u003cp\u003eSummary 375\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 9: Development Tools 377\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eProblems of Multiple Source Files 377\u003c\/p\u003e \u003cp\u003eThe make Command and Makefiles 378\u003c\/p\u003e \u003cp\u003eThe Syntax of Makefiles 378\u003c\/p\u003e \u003cp\u003eOptions and Parameters to make 379\u003c\/p\u003e \u003cp\u003eComments in a Makefile 382\u003c\/p\u003e \u003cp\u003eMacros in a Makefile 382\u003c\/p\u003e \u003cp\u003eMultiple Targets 384\u003c\/p\u003e \u003cp\u003eBuilt-in Rules 387\u003c\/p\u003e \u003cp\u003eSuffix and Pattern Rules 388\u003c\/p\u003e \u003cp\u003eManaging Libraries with make 389\u003c\/p\u003e \u003cp\u003eAdvanced Topic: Makefiles and Subdirectories 391\u003c\/p\u003e \u003cp\u003eGNU make and gcc 391\u003c\/p\u003e \u003cp\u003eSource Code Control 392\u003c\/p\u003e \u003cp\u003eRCS 393\u003c\/p\u003e \u003cp\u003eSCCS 399\u003c\/p\u003e \u003cp\u003eComparing RCS and SCCS 399\u003c\/p\u003e \u003cp\u003eCVS 400\u003c\/p\u003e \u003cp\u003eCVS Front Ends 404\u003c\/p\u003e \u003cp\u003eSubversion 405\u003c\/p\u003e \u003cp\u003eWriting a Manual Page 406\u003c\/p\u003e \u003cp\u003eDistributing Software 409\u003c\/p\u003e \u003cp\u003eThe patch Program 410\u003c\/p\u003e \u003cp\u003eOther Distribution Utilities 411\u003c\/p\u003e \u003cp\u003eRPM Packages 413\u003c\/p\u003e \u003cp\u003eWorking with RPM Package Files 414\u003c\/p\u003e \u003cp\u003eInstalling RPM Packages 415\u003c\/p\u003e \u003cp\u003eBuilding RPM Packages 415\u003c\/p\u003e \u003cp\u003eOther Package Formats 424\u003c\/p\u003e \u003cp\u003eDevelopment Environments 424\u003c\/p\u003e \u003cp\u003eKDevelop 425\u003c\/p\u003e \u003cp\u003eOther Environments 425\u003c\/p\u003e \u003cp\u003eSummary 427\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 10: Debugging 429\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eTypes of Errors 429\u003c\/p\u003e \u003cp\u003eGeneral Debugging Techniques 430\u003c\/p\u003e \u003cp\u003eA Program with Bugs 430\u003c\/p\u003e \u003cp\u003eCode Inspection 433\u003c\/p\u003e \u003cp\u003eInstrumentation 434\u003c\/p\u003e \u003cp\u003eControlled Execution 436\u003c\/p\u003e \u003cp\u003eDebugging with gdb 437\u003c\/p\u003e \u003cp\u003eStarting gdb 437\u003c\/p\u003e \u003cp\u003eRunning a Program 438\u003c\/p\u003e \u003cp\u003eStack Trace 438\u003c\/p\u003e \u003cp\u003eExamining Variables 439\u003c\/p\u003e \u003cp\u003eListing the Program 440\u003c\/p\u003e \u003cp\u003eSetting Breakpoints 441\u003c\/p\u003e \u003cp\u003ePatching with the Debugger 444\u003c\/p\u003e \u003cp\u003eLearning More about gdb 445\u003c\/p\u003e \u003cp\u003eMore Debugging Tools 445\u003c\/p\u003e \u003cp\u003eLint: Removing the Fluff from Your Programs 446\u003c\/p\u003e \u003cp\u003eFunction Call Tools 449\u003c\/p\u003e \u003cp\u003eExecution Profiling with prof\/gprof 451\u003c\/p\u003e \u003cp\u003eAssertions 452\u003c\/p\u003e \u003cp\u003eMemory Debugging 453\u003c\/p\u003e \u003cp\u003eElectricFence 454\u003c\/p\u003e \u003cp\u003evalgrind 455\u003c\/p\u003e \u003cp\u003eSummary 459\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 11: Processes and Signals 461\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eWhat Is a Process? 461\u003c\/p\u003e \u003cp\u003eProcess Structure 462\u003c\/p\u003e \u003cp\u003eThe Process Table 463\u003c\/p\u003e \u003cp\u003eViewing Processes 463\u003c\/p\u003e \u003cp\u003eSystem Processes 464\u003c\/p\u003e \u003cp\u003eProcess Scheduling 467\u003c\/p\u003e \u003cp\u003eStarting New Processes 468\u003c\/p\u003e \u003cp\u003eWaiting for a Process 475\u003c\/p\u003e \u003cp\u003eZombie Processes 477\u003c\/p\u003e \u003cp\u003eInput and Output Redirection 479\u003c\/p\u003e \u003cp\u003eThreads 480\u003c\/p\u003e \u003cp\u003eSignals 481\u003c\/p\u003e \u003cp\u003eSending Signals 484\u003c\/p\u003e \u003cp\u003eSignal Sets 489\u003c\/p\u003e \u003cp\u003eSummary 493\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 12: POSIX Threads 495\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eWhat Is a Thread? 495\u003c\/p\u003e \u003cp\u003eAdvantages and Drawbacks of Threads 496\u003c\/p\u003e \u003cp\u003eA First Threads Program 497\u003c\/p\u003e \u003cp\u003eSimultaneous Execution 501\u003c\/p\u003e \u003cp\u003eSynchronization 503\u003c\/p\u003e \u003cp\u003eSynchronization with Semaphores 503\u003c\/p\u003e \u003cp\u003eSynchronization with Mutexes 508\u003c\/p\u003e \u003cp\u003eThread Attributes 512\u003c\/p\u003e \u003cp\u003eCanceling a Thread 517\u003c\/p\u003e \u003cp\u003eThreads in Abundance 520\u003c\/p\u003e \u003cp\u003eSummary 524\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 13: Inter-Process Communication: Pipes 525\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eWhat Is a Pipe? 525\u003c\/p\u003e \u003cp\u003eProcess Pipes 526\u003c\/p\u003e \u003cp\u003eSending Output to popen 528\u003c\/p\u003e \u003cp\u003ePassing More Data 529\u003c\/p\u003e \u003cp\u003eHow popen Is Implemented 530\u003c\/p\u003e \u003cp\u003eThe Pipe Call 531\u003c\/p\u003e \u003cp\u003eParent and Child Processes 535\u003c\/p\u003e \u003cp\u003eReading Closed Pipes 536\u003c\/p\u003e \u003cp\u003ePipes Used as Standard Input and Output 537\u003c\/p\u003e \u003cp\u003eNamed Pipes: FIFOs 540\u003c\/p\u003e \u003cp\u003eAccessing a FIFO 542\u003c\/p\u003e \u003cp\u003eAdvanced Topic: Client\/Server Using FIFOs 549\u003c\/p\u003e \u003cp\u003eThe CD Database Application 553\u003c\/p\u003e \u003cp\u003eAims 554\u003c\/p\u003e \u003cp\u003eImplementation 555\u003c\/p\u003e \u003cp\u003eClient Interface Functions 558\u003c\/p\u003e \u003cp\u003eThe Server Interface, server.c 565\u003c\/p\u003e \u003cp\u003eThe Pipe 569\u003c\/p\u003e \u003cp\u003eApplication Summary 574\u003c\/p\u003e \u003cp\u003eSummary 575\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 14: Semaphores, Shared Memory, and Message Queues 577\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eSemaphores 577\u003c\/p\u003e \u003cp\u003eSemaphore Definition 579\u003c\/p\u003e \u003cp\u003eA Theoretical Example 579\u003c\/p\u003e \u003cp\u003eLinux Semaphore Facilities 580\u003c\/p\u003e \u003cp\u003eUsing Semaphores 582\u003c\/p\u003e \u003cp\u003eShared Memory 586\u003c\/p\u003e \u003cp\u003eshmget 588\u003c\/p\u003e \u003cp\u003eshmat 588\u003c\/p\u003e \u003cp\u003eshmdt 589\u003c\/p\u003e \u003cp\u003eshmctl 589\u003c\/p\u003e \u003cp\u003eMessage Queues 594\u003c\/p\u003e \u003cp\u003emsgget 594\u003c\/p\u003e \u003cp\u003emsgsnd 595\u003c\/p\u003e \u003cp\u003emsgrcv 595\u003c\/p\u003e \u003cp\u003emsgctl 596\u003c\/p\u003e \u003cp\u003eThe CD Database Application 599\u003c\/p\u003e \u003cp\u003eRevising the Server Functions 600\u003c\/p\u003e \u003cp\u003eRevising the Client Functions 602\u003c\/p\u003e \u003cp\u003eIPC Status Commands 604\u003c\/p\u003e \u003cp\u003eDisplaying Semaphore Status 604\u003c\/p\u003e \u003cp\u003eDisplaying Shared Memory Status 604\u003c\/p\u003e \u003cp\u003eDisplaying Message Queue Status 605\u003c\/p\u003e \u003cp\u003eSummary 605\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 15: Sockets 607\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eWhat Is a Socket? 608\u003c\/p\u003e \u003cp\u003eSocket Connections 608\u003c\/p\u003e \u003cp\u003eSocket Attributes 612\u003c\/p\u003e \u003cp\u003eCreating a Socket 614\u003c\/p\u003e \u003cp\u003eSocket Addresses 615\u003c\/p\u003e \u003cp\u003eNaming a Socket 616\u003c\/p\u003e \u003cp\u003eCreating a Socket Queue 617\u003c\/p\u003e \u003cp\u003eAccepting Connections 617\u003c\/p\u003e \u003cp\u003eRequesting Connections 618\u003c\/p\u003e \u003cp\u003eClosing a Socket 619\u003c\/p\u003e \u003cp\u003eSocket Communications 619\u003c\/p\u003e \u003cp\u003eHost and Network Byte Ordering 622\u003c\/p\u003e \u003cp\u003eNetwork Information 624\u003c\/p\u003e \u003cp\u003eThe Internet Daemon (xinetd\/inetd) 629\u003c\/p\u003e \u003cp\u003eSocket Options 631\u003c\/p\u003e \u003cp\u003eMultiple Clients 632\u003c\/p\u003e \u003cp\u003eselect 635\u003c\/p\u003e \u003cp\u003eMultiple Clients 638\u003c\/p\u003e \u003cp\u003eDatagrams 642\u003c\/p\u003e \u003cp\u003eSummary 644\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 16: Programming GNOME Using GTK+ 645\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eIntroducing X 645\u003c\/p\u003e \u003cp\u003eX Server 646\u003c\/p\u003e \u003cp\u003eX Client 646\u003c\/p\u003e \u003cp\u003eX Protocol 646\u003c\/p\u003e \u003cp\u003eXlib 647\u003c\/p\u003e \u003cp\u003eToolkits 647\u003c\/p\u003e \u003cp\u003eWindow Managers 647\u003c\/p\u003e \u003cp\u003eOther Ways to Create a GUI — Platform-Independent Windowing APIs 648\u003c\/p\u003e \u003cp\u003eIntroducing GTK+ 648\u003c\/p\u003e \u003cp\u003eGLib Type System 649\u003c\/p\u003e \u003cp\u003eGTK+ Object System 650\u003c\/p\u003e \u003cp\u003eIntroducing GNOME 651\u003c\/p\u003e \u003cp\u003eInstalling the GNOME\/GTK+ Development Libraries 652\u003c\/p\u003e \u003cp\u003eEvents, Signals, and Callbacks 655\u003c\/p\u003e \u003cp\u003ePacking Box Widgets 658\u003c\/p\u003e \u003cp\u003eGTK+ Widgets 661\u003c\/p\u003e \u003cp\u003eGtkWindow 662\u003c\/p\u003e \u003cp\u003eGtkEntry 663\u003c\/p\u003e \u003cp\u003eGtkSpinButton 666\u003c\/p\u003e \u003cp\u003eGtkButton 668\u003c\/p\u003e \u003cp\u003eGtkTreeView 672\u003c\/p\u003e \u003cp\u003eGNOME Widgets 676\u003c\/p\u003e \u003cp\u003eGNOME Menus 677\u003c\/p\u003e \u003cp\u003eDialogs 682\u003c\/p\u003e \u003cp\u003eGtkDialog 682\u003c\/p\u003e \u003cp\u003eModal Dialog Box 684\u003c\/p\u003e \u003cp\u003eNonmodal Dialogs 685\u003c\/p\u003e \u003cp\u003eGtkMessageDialog 686\u003c\/p\u003e \u003cp\u003eCD Database Application 687\u003c\/p\u003e \u003cp\u003eSummary 699\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 17: Programming KDE Using Qt 701\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eIntroducing KDE and Qt 701\u003c\/p\u003e \u003cp\u003eInstalling Qt 702\u003c\/p\u003e \u003cp\u003eSignals and Slots 705\u003c\/p\u003e \u003cp\u003eQt Widgets 712\u003c\/p\u003e \u003cp\u003eQLineEdit 712\u003c\/p\u003e \u003cp\u003eQt Buttons 716\u003c\/p\u003e \u003cp\u003eQComboBox 721\u003c\/p\u003e \u003cp\u003eQListView 724\u003c\/p\u003e \u003cp\u003eDialogs 727\u003c\/p\u003e \u003cp\u003eQDialog 728\u003c\/p\u003e \u003cp\u003eQMessageBox 730\u003c\/p\u003e \u003cp\u003eQInputDialog 731\u003c\/p\u003e \u003cp\u003eUsing qmake to Simplify Writing Makefiles 733\u003c\/p\u003e \u003cp\u003eMenus and Toolbars with KDE 733\u003c\/p\u003e \u003cp\u003eCD Database Application Using KDE\/Qt 738\u003c\/p\u003e \u003cp\u003eMainWindow 738\u003c\/p\u003e \u003cp\u003eAddCdDialog 742\u003c\/p\u003e \u003cp\u003eLogonDialog 743\u003c\/p\u003e \u003cp\u003emain.cpp 745\u003c\/p\u003e \u003cp\u003eSummary 746\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 18: Standards for Linux 747\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eThe C Programming Language 748\u003c\/p\u003e \u003cp\u003eA Brief History Lesson 748\u003c\/p\u003e \u003cp\u003eThe GNU Compiler Collection 749\u003c\/p\u003e \u003cp\u003egcc Options 749\u003c\/p\u003e \u003cp\u003eInterfaces and the Linux Standards Base 751\u003c\/p\u003e \u003cp\u003eLSB Standard Libraries 752\u003c\/p\u003e \u003cp\u003eLSB Users and Groups 754\u003c\/p\u003e \u003cp\u003eLSB System Initialization 754\u003c\/p\u003e \u003cp\u003eThe Filesystem Hierarchy Standard 755\u003c\/p\u003e \u003cp\u003eFurther Reading about Standards 758\u003c\/p\u003e \u003cp\u003eSummary 759\u003c\/p\u003e \u003cp\u003eIndex 761\u003c\/p\u003e","brand":"John Wiley \u0026 Sons Inc","offers":[{"title":"Default Title","offer_id":48864624148823,"sku":"9780470147627","price":27.2,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9780470147627.jpg?v=1722272779"},{"product_id":"understanding-linux-network-internals-9780596002558","title":"Understanding Linux Network Internals","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eA no-nonsense guide to Linux networking, which offers a clear view of the underlying concepts and teaches you to follow the C code that implements it. The topics include: system initialization, network interface card (NIC) device drivers, bridging, routing, ICMP, and more.\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTrade Review\u003c\/b\u003e\u003cbr\u003e\"Anyone who works with Linux networking should have a copy to hand to help with those inexplicable problems and to better understand how it all works.\" - James Millen, BJHC \u0026amp; IM, November 2006","brand":"O'Reilly Media","offers":[{"title":"Default Title","offer_id":48865361887575,"sku":"9780596002558","price":38.39,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9780596002558.jpg?v=1722274019"},{"product_id":"linux-iptables-pocket-reference-9780596005696","title":"Linux Iptables Pocket Reference","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eOrganizing the subtle netfilter syntax for quick and easy lookup, this reference helps administrators remember all the values they need to enter to assure strict security. The text divides the listings of all iptables options into those that are suitable for firewalling, accounting, and Network Address Translation (NAT).","brand":"O'Reilly Media","offers":[{"title":"Default Title","offer_id":48865364509015,"sku":"9780596005696","price":7.59,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9780596005696.jpg?v=1722274021"},{"product_id":"linux-kernel-development-9780672329463","title":"Linux Kernel Development","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e\u003cstrong\u003eRobert Love\u003c\/strong\u003e is an open source programmer, speaker, and author who has been using and contributing to Linux for more than 15 years. He is currently senior software engineer at Google, where he was a member of the team that developed the Android mobile platform's kernel. Prior to Google, he was Chief Architect, Linux Desktop, at Novell. Before Novell, he was a kernel engineer at MontaVista Software and Ximian.\u003c\/p\u003e \u003cp\u003e\u003c\/p\u003e \u003cp\u003eLove's kernel projects include the preemptive kernel, the process scheduler, the kernel events layer, inotify,VM enhancements, and several device drivers.\u003c\/p\u003e \u003cp\u003e\u003c\/p\u003e \u003cp\u003eHe has given numerous talks on and has written multiple articles about the Linux kernel and is a contributing editor for \u003cem\u003eLinux Journal\u003c\/em\u003e. His other books include \u003cem\u003eLinux System Programming\u003c\/em\u003e and \u003cem\u003eLinux in a Nutshell\u003c\/em\u003e.\u003c\/p\u003e\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e\u003cstrong\u003e1\u003c\/strong\u003e Introduction to the Linux Kernel\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003e2\u003c\/strong\u003e Getting Started with the Kernel\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003e3\u003c\/strong\u003e Process Management\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003e4\u003c\/strong\u003e Process Scheduling\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003e5\u003c\/strong\u003e System Calls\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003e6\u003c\/strong\u003e Kernel Data Structures\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003e7\u003c\/strong\u003e Interrupts and Interrupt Handlers\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003e8\u003c\/strong\u003e Bottom Halves and Deferring Work\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003e9\u003c\/strong\u003e An Introduction to Kernel Synchronization\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003e10\u003c\/strong\u003e Kernel Synchronization Methods\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003e11\u003c\/strong\u003e Timers and Time Management\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003e12\u003c\/strong\u003e Memory Management\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003e13\u003c\/strong\u003e The Virtual Filesystem\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003e14\u003c\/strong\u003e The Block I\/O Layer\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003e15\u003c\/strong\u003e The Process Address Space\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003e16\u003c\/strong\u003e The Page Cache and Page Writeback\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003e17\u003c\/strong\u003e Devices and Modules\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003e18\u003c\/strong\u003e Debugging\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003e19\u003c\/strong\u003e Portability\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003e20\u003c\/strong\u003e Patches, Hacking, and the Community\u003c\/p\u003e","brand":"Pearson Education (US)","offers":[{"title":"Default Title","offer_id":48865473331543,"sku":"9780672329463","price":33.29,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9780672329463.jpg?v=1722274134"},{"product_id":"efficient-linux-at-the-command-line-9781098113407","title":"Efficient Linux at the Command Line","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eTake your Linux skills to the next level! Whether you're a system administrator, software developer, site reliability engineer, or enthusiastic hobbyist, this practical, hands-on book will help you work faster, smarter, and more efficiently.","brand":"O'Reilly Media","offers":[{"title":"Default Title","offer_id":48866331296087,"sku":"9781098113407","price":35.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781098113407.jpg?v=1722278166"},{"product_id":"lpic1-certification-kit-9781119664116","title":"LPIC1 Certification Kit","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e","brand":"John Wiley \u0026 Sons Inc","offers":[{"title":"Default Title","offer_id":48866408104279,"sku":"9781119664116","price":48.75,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781119664116.jpg?v=1722278505"},{"product_id":"linux-allinone-for-dummies-9781119901921","title":"Linux AllInOne For Dummies","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e\u003cb\u003eIntroduction 1\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eAbout This Book 1\u003c\/p\u003e \u003cp\u003eFoolish Assumptions 2\u003c\/p\u003e \u003cp\u003eIcons Used in This Book 3\u003c\/p\u003e \u003cp\u003eBeyond the Book 4\u003c\/p\u003e \u003cp\u003eWhere to Go from Here 4\u003c\/p\u003e \u003cp\u003e\u003cb\u003eBook 1: Getting Started with Linux 5\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 1: Introducing Linux 7\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eWhat Is Linux? 7\u003c\/p\u003e \u003cp\u003eThe Linux kernel 8\u003c\/p\u003e \u003cp\u003eGNU utilities 11\u003c\/p\u003e \u003cp\u003eLinux user interfaces 12\u003c\/p\u003e \u003cp\u003eLinux Distributions: Why So Many? 16\u003c\/p\u003e \u003cp\u003eCore Linux distributions 17\u003c\/p\u003e \u003cp\u003eSpecialized Linux distributions 18\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 2: Installing Linux 21\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eDual-Booting with Linux and Microsoft Windows 23\u003c\/p\u003e \u003cp\u003eInstalling a second hard drive 24\u003c\/p\u003e \u003cp\u003ePartitioning an existing drive 24\u003c\/p\u003e \u003cp\u003ePartitioning using Windows tools 25\u003c\/p\u003e \u003cp\u003ePartitioning using Linux tools 26\u003c\/p\u003e \u003cp\u003eFinally, Finally, Before You Get Started 27\u003c\/p\u003e \u003cp\u003eDisabling the secure boot feature 27\u003c\/p\u003e \u003cp\u003eCreating a boot disk 28\u003c\/p\u003e \u003cp\u003eInstalling Ubuntu 30\u003c\/p\u003e \u003cp\u003eYour First Ubuntu Boot 36\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 3: Living in a Virtual World 39\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eWhat Are Virtual Servers? 39\u003c\/p\u003e \u003cp\u003eInstalling VirtualBox 40\u003c\/p\u003e \u003cp\u003eCreating a Linux Virtual Machine 42\u003c\/p\u003e \u003cp\u003eInstalling Linux on a Virtual Machine 45\u003c\/p\u003e \u003cp\u003eChanging settings 45\u003c\/p\u003e \u003cp\u003eLoading the operating system 47\u003c\/p\u003e \u003cp\u003eWorking with the sandbox 50\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 4: Trying Out Linux 53\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eStarting Linux 53\u003c\/p\u003e \u003cp\u003ePlaying with the Shell 56\u003c\/p\u003e \u003cp\u003eStarting the bash shell 56\u003c\/p\u003e \u003cp\u003eUnderstanding shell commands 58\u003c\/p\u003e \u003cp\u003eTrying a few Linux commands 58\u003c\/p\u003e \u003cp\u003eShutting Down 60\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 5: Troubleshooting and Customizing Linux 63\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eUsing Text Mode Installation 64\u003c\/p\u003e \u003cp\u003eLookin’ for Trouble 64\u003c\/p\u003e \u003cp\u003eUsing the kernel ring buffer 65\u003c\/p\u003e \u003cp\u003eUsing log files 66\u003c\/p\u003e \u003cp\u003eUsing the journal 67\u003c\/p\u003e \u003cp\u003eResolving Other Installation Problems 68\u003c\/p\u003e \u003cp\u003eUsing KNOPPIX boot commands 68\u003c\/p\u003e \u003cp\u003eHandling the fatal signal 11 error 71\u003c\/p\u003e \u003cp\u003eGetting around the PC reboot problem 71\u003c\/p\u003e \u003cp\u003eUsing Linux kernel boot options 71\u003c\/p\u003e \u003cp\u003eSetting Up Printers 74\u003c\/p\u003e \u003cp\u003eManaging DVDs, CD-ROMs, and Flash Drives 76\u003c\/p\u003e \u003cp\u003eUpdating the Operating System 77\u003c\/p\u003e \u003cp\u003eUpdating Ubuntu 77\u003c\/p\u003e \u003cp\u003eUpdating openSUSE 78\u003c\/p\u003e \u003cp\u003eInstalling New Software 79\u003c\/p\u003e \u003cp\u003eAdding applications 80\u003c\/p\u003e \u003cp\u003eAdding packages 81\u003c\/p\u003e \u003cp\u003e\u003cb\u003eBook 2: Linux Desktops 85\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 1: The GNOME Desktop 87\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eLooking at the History of GNOME 87\u003c\/p\u003e \u003cp\u003eBreaking Down the GNOME Desktop 88\u003c\/p\u003e \u003cp\u003eMenu, please! 88\u003c\/p\u003e \u003cp\u003eThe desktop 90\u003c\/p\u003e \u003cp\u003eExploring the Activities Overview 91\u003c\/p\u003e \u003cp\u003eCustomizing Your Ride 92\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 2: The KDE Plasma Desktop 93\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eThe KDE Plasma Desktop 93\u003c\/p\u003e \u003cp\u003eThe Application launcher 95\u003c\/p\u003e \u003cp\u003eThe panel 96\u003c\/p\u003e \u003cp\u003eThe desktop 96\u003c\/p\u003e \u003cp\u003eUsing Widgets 98\u003c\/p\u003e \u003cp\u003eAdding widgets 98\u003c\/p\u003e \u003cp\u003eGetting more widgets 99\u003c\/p\u003e \u003cp\u003ePlasma System Settings 99\u003c\/p\u003e \u003cp\u003eDesktop Settings 100\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 3: Other Popular Desktops 103\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eSpicing Things Up with Cinnamon 103\u003c\/p\u003e \u003cp\u003eReviewing the history of Cinnamon 104\u003c\/p\u003e \u003cp\u003eLooking at the menu 105\u003c\/p\u003e \u003cp\u003eChanging settings 105\u003c\/p\u003e \u003cp\u003eAdding more spice 106\u003c\/p\u003e \u003cp\u003eWorking with MATE 107\u003c\/p\u003e \u003cp\u003eThe history of MATE 107\u003c\/p\u003e \u003cp\u003eLooking at the menu 109\u003c\/p\u003e \u003cp\u003eChanging desktop settings 109\u003c\/p\u003e \u003cp\u003eApplets 110\u003c\/p\u003e \u003cp\u003eThe Xfce Desktop Interface 111\u003c\/p\u003e \u003cp\u003eThe history of Xfce 111\u003c\/p\u003e \u003cp\u003eThe Whisker menu 112\u003c\/p\u003e \u003cp\u003eChanging Xfce settings 113\u003c\/p\u003e \u003cp\u003eApplets 113\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 4: Linux Desktop Applications 115\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eThe LibreOffice Suite 115\u003c\/p\u003e \u003cp\u003eBrowsing the Web with Firefox 117\u003c\/p\u003e \u003cp\u003eConfiguring Firefox 117\u003c\/p\u003e \u003cp\u003eCommunicating with Email 119\u003c\/p\u003e \u003cp\u003eEvolving into email 120\u003c\/p\u003e \u003cp\u003eWorking with KMail 121\u003c\/p\u003e \u003cp\u003eThe amazing Thunderbird 123\u003c\/p\u003e \u003cp\u003eListening to Audio 124\u003c\/p\u003e \u003cp\u003eListening to downloaded music 127\u003c\/p\u003e \u003cp\u003eViewing Movie Files 129\u003c\/p\u003e \u003cp\u003eCreating and Modifying Graphics 130\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 5: The Linux File System 133\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003ePieces of the Puzzle 133\u003c\/p\u003e \u003cp\u003eTouring the Linux File System 134\u003c\/p\u003e \u003cp\u003eThe root of the tree 134\u003c\/p\u003e \u003cp\u003eWhere removable media lives 136\u003c\/p\u003e \u003cp\u003eManaging Your File System without a Net (or Mouse) 136\u003c\/p\u003e \u003cp\u003eViewing information about files on the command line 136\u003c\/p\u003e \u003cp\u003eUnderstanding file listing information 137\u003c\/p\u003e \u003cp\u003eComprehending file types 139\u003c\/p\u003e \u003cp\u003eNavigating the file system in Linux 140\u003c\/p\u003e \u003cp\u003eA Permissions Primer 141\u003c\/p\u003e \u003cp\u003eChecking out the triplets 141\u003c\/p\u003e \u003cp\u003eBeware of owners 143\u003c\/p\u003e \u003cp\u003eHanging out in groups 143\u003c\/p\u003e \u003cp\u003eClicking Your Way through the File System 144\u003c\/p\u003e \u003cp\u003eUsing files 145\u003c\/p\u003e \u003cp\u003eSwimming with Dolphin 149\u003c\/p\u003e \u003cp\u003eDon’t forget Xfce! 151\u003c\/p\u003e \u003cp\u003eFinding Things 152\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 6: Text Editors 155\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eViewing the Contents of a Text File 155\u003c\/p\u003e \u003cp\u003eEditing Text Files with nano 156\u003c\/p\u003e \u003cp\u003eGoing with gedit 157\u003c\/p\u003e \u003cp\u003eEditing Text in the KDE Plasma Desktop 158\u003c\/p\u003e \u003cp\u003eWriting with KWrite 159\u003c\/p\u003e \u003cp\u003eMeet Kate 160\u003c\/p\u003e \u003cp\u003eText Editing with ed and vi 161\u003c\/p\u003e \u003cp\u003eUsing ed 162\u003c\/p\u003e \u003cp\u003eUsing vi 165\u003c\/p\u003e \u003cp\u003e\u003cb\u003eBook 3: Networking 171\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 1: Connecting to the Internet 173\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eUnderstanding the Internet 174\u003c\/p\u003e \u003cp\u003eDeciding How to Connect to the Internet 175\u003c\/p\u003e \u003cp\u003eConnecting with DSL 176\u003c\/p\u003e \u003cp\u003eHow DSL works 176\u003c\/p\u003e \u003cp\u003eDSL alphabet soup: ADSL, IDSL, SDSL 177\u003c\/p\u003e \u003cp\u003eTypical DSL setup 179\u003c\/p\u003e \u003cp\u003eConnecting with a Cable Modem 180\u003c\/p\u003e \u003cp\u003eHow a cable modem works 181\u003c\/p\u003e \u003cp\u003eTypical cable modem setup 182\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 2: Setting Up a Local Area Network 185\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eUnderstanding TCP\/IP 185\u003c\/p\u003e \u003cp\u003eIP addresses 187\u003c\/p\u003e \u003cp\u003eInternet services and port numbers 189\u003c\/p\u003e \u003cp\u003eSetting Up an Ethernet LAN 190\u003c\/p\u003e \u003cp\u003eHow Ethernet works 191\u003c\/p\u003e \u003cp\u003eEthernet cables 192\u003c\/p\u003e \u003cp\u003eConfiguring TCP\/IP Networking 195\u003c\/p\u003e \u003cp\u003eConnecting Your LAN to the Internet 196\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 3: Going Wireless 199\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eUnderstanding Wireless Ethernet Networks 199\u003c\/p\u003e \u003cp\u003eUnderstanding infrastructure and ad hoc modes 201\u003c\/p\u003e \u003cp\u003eUnderstanding wireless security 201\u003c\/p\u003e \u003cp\u003eSetting Up Wireless Hardware 203\u003c\/p\u003e \u003cp\u003eConfiguring the Wireless Access Point 204\u003c\/p\u003e \u003cp\u003eConfiguring Wireless Networks 205\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 4: Managing the Network 207\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eConfiguring Network Features 207\u003c\/p\u003e \u003cp\u003eManually editing network configuration files 208\u003c\/p\u003e \u003cp\u003eUsing a graphical tool 210\u003c\/p\u003e \u003cp\u003eUsing a command-line tool 212\u003c\/p\u003e \u003cp\u003eBasic Network Troubleshooting 216\u003c\/p\u003e \u003cp\u003eAdvanced Network Troubleshooting 218\u003c\/p\u003e \u003cp\u003e\u003cb\u003eBook 4: Administration 223\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 1: Working with the Shell 225\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eOpening Terminal Windows and Virtual Consoles 225\u003c\/p\u003e \u003cp\u003eUsing the Bash Shell 228\u003c\/p\u003e \u003cp\u003eUnderstanding the syntax of shell commands 228\u003c\/p\u003e \u003cp\u003eWorking with files 230\u003c\/p\u003e \u003cp\u003eCombining shell commands 231\u003c\/p\u003e \u003cp\u003eControlling command input and output 231\u003c\/p\u003e \u003cp\u003eGoing wild with asterisks and question marks 233\u003c\/p\u003e \u003cp\u003eDiscovering and Using Linux Commands 235\u003c\/p\u003e \u003cp\u003eBecoming root (superuser) 240\u003c\/p\u003e \u003cp\u003eManaging processes 241\u003c\/p\u003e \u003cp\u003eWorking with date and time 242\u003c\/p\u003e \u003cp\u003eProcessing files 243\u003c\/p\u003e \u003cp\u003eWriting Shell Scripts 246\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 2: Introducing Basic System Administration 249\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eTaking Stock of System Administration Tasks 250\u003c\/p\u003e \u003cp\u003eBecoming root 251\u003c\/p\u003e \u003cp\u003eUsing the su - command 251\u003c\/p\u003e \u003cp\u003eUsing the sudo command 252\u003c\/p\u003e \u003cp\u003eUnderstanding How Linux Boots 252\u003c\/p\u003e \u003cp\u003eUnderstanding the SysVinit method 253\u003c\/p\u003e \u003cp\u003eUnderstanding the Systemd method 259\u003c\/p\u003e \u003cp\u003eMonitoring System Performance 264\u003c\/p\u003e \u003cp\u003eUsing the top utility 264\u003c\/p\u003e \u003cp\u003eUsing the uptime command 266\u003c\/p\u003e \u003cp\u003eUsing the vmstat utility 267\u003c\/p\u003e \u003cp\u003eChecking disk performance and disk usage 267\u003c\/p\u003e \u003cp\u003eViewing System Information with the \/proc File System 270\u003c\/p\u003e \u003cp\u003eUnderstanding Linux Devices 273\u003c\/p\u003e \u003cp\u003eDevice files 274\u003c\/p\u003e \u003cp\u003ePersistent device naming with udev 275\u003c\/p\u003e \u003cp\u003eManaging Loadable Driver Modules 276\u003c\/p\u003e \u003cp\u003eLoading and unloading modules 276\u003c\/p\u003e \u003cp\u003eUnderstanding the \/etc\/modprobe.d files 277\u003c\/p\u003e \u003cp\u003eScheduling Jobs in Linux 278\u003c\/p\u003e \u003cp\u003eScheduling one-time jobs 278\u003c\/p\u003e \u003cp\u003eScheduling recurring jobs 281\u003c\/p\u003e \u003cp\u003eIntroducing Some GUI System Administration Tools 284\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 3: Managing Users and Groups 287\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eAdding User Accounts 288\u003c\/p\u003e \u003cp\u003eManaging user accounts by using a GUI user manager 288\u003c\/p\u003e \u003cp\u003eManaging user accounts by using commands 290\u003c\/p\u003e \u003cp\u003eManaging Groups 291\u003c\/p\u003e \u003cp\u003eExploring the User Environment 292\u003c\/p\u003e \u003cp\u003eChanging User and Group Ownership of Files 295\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 4: Managing File Systems 297\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eExploring the Linux File System 297\u003c\/p\u003e \u003cp\u003eUnderstanding the file-system hierarchy 298\u003c\/p\u003e \u003cp\u003eMounting a device on the file system 299\u003c\/p\u003e \u003cp\u003eExamining the \/etc\/fstab file 303\u003c\/p\u003e \u003cp\u003eSharing Files with NFS 304\u003c\/p\u003e \u003cp\u003eInstalling NFS 305\u003c\/p\u003e \u003cp\u003eExporting a file system with NFS 306\u003c\/p\u003e \u003cp\u003eMounting an NFS file system 307\u003c\/p\u003e \u003cp\u003eAccessing a DOS or Windows File System 308\u003c\/p\u003e \u003cp\u003eMounting a DOS or Windows disk partition 308\u003c\/p\u003e \u003cp\u003eMounting an NTFS partition 309\u003c\/p\u003e \u003cp\u003e\u003cb\u003eBook 5: Managing Linux Servers 311\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 1: Hosting Internet Services 313\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eWhat Is a Linux Server? 313\u003c\/p\u003e \u003cp\u003eLaunching services 314\u003c\/p\u003e \u003cp\u003eListening for clients 316\u003c\/p\u003e \u003cp\u003eServing the Basics 318\u003c\/p\u003e \u003cp\u003eWeb services 319\u003c\/p\u003e \u003cp\u003eDatabase services 320\u003c\/p\u003e \u003cp\u003eMail services 322\u003c\/p\u003e \u003cp\u003eServing Local Networks 324\u003c\/p\u003e \u003cp\u003eFile servers 325\u003c\/p\u003e \u003cp\u003ePrint servers 326\u003c\/p\u003e \u003cp\u003eNetwork resource servers 326\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 2: Managing a Web Server 331\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eLinux Web Servers 331\u003c\/p\u003e \u003cp\u003eApache 331\u003c\/p\u003e \u003cp\u003eNGINX 333\u003c\/p\u003e \u003cp\u003eThe Apache Web Server 333\u003c\/p\u003e \u003cp\u003eInstalling an Apache server 333\u003c\/p\u003e \u003cp\u003eConfiguring an Apache server 336\u003c\/p\u003e \u003cp\u003eThe NGINX Server 344\u003c\/p\u003e \u003cp\u003eInstalling NGINX 344\u003c\/p\u003e \u003cp\u003eConfiguring NGINX 346\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 3: Managing a Database Server 349\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eUsing the MySQL\/MariaDB Database 349\u003c\/p\u003e \u003cp\u003eInstalling MariaDB 350\u003c\/p\u003e \u003cp\u003eLooking at the MariaDB command prompt 353\u003c\/p\u003e \u003cp\u003eUsing the mysql commands 356\u003c\/p\u003e \u003cp\u003eCreating database objects 360\u003c\/p\u003e \u003cp\u003eUsing the PostgreSQL Database 363\u003c\/p\u003e \u003cp\u003eInstalling PostgreSQL 364\u003c\/p\u003e \u003cp\u003eLooking at the PostgreSQL command interface 366\u003c\/p\u003e \u003cp\u003eCreating PostgreSQL database objects 370\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 4: Working with Samba and NFS 373\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eSharing Files with NFS 373\u003c\/p\u003e \u003cp\u003eInstalling NFS 374\u003c\/p\u003e \u003cp\u003eExporting a file system with NFS 375\u003c\/p\u003e \u003cp\u003eMounting an NFS file system 378\u003c\/p\u003e \u003cp\u003eSetting Up a Windows Server Using Samba 378\u003c\/p\u003e \u003cp\u003eInstalling Samba 380\u003c\/p\u003e \u003cp\u003eConfiguring Samba 382\u003c\/p\u003e \u003cp\u003eTrying out Samba 383\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 5: Managing Mail Servers 385\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eWorking with sendmail 385\u003c\/p\u003e \u003cp\u003eThe sendmail configuration file 386\u003c\/p\u003e \u003cp\u003eSyntax of the sendmail.cf file 391\u003c\/p\u003e \u003cp\u003eOther sendmail files 393\u003c\/p\u003e \u003cp\u003eThe forward file 395\u003c\/p\u003e \u003cp\u003eThe sendmail alias file 395\u003c\/p\u003e \u003cp\u003eWorking with Postfix 396\u003c\/p\u003e \u003cp\u003eA Mail-Delivery Test 398\u003c\/p\u003e \u003cp\u003eUsing the mail command 399\u003c\/p\u003e \u003cp\u003eThe mail-delivery mechanism 400\u003c\/p\u003e \u003cp\u003e\u003cb\u003eBook 6: Security 401\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 1: Introducing Linux Security\u003c\/b\u003e 403\u003c\/p\u003e \u003cp\u003eWhy Worry about Security? 404\u003c\/p\u003e \u003cp\u003eEstablishing a Security Framework 404\u003c\/p\u003e \u003cp\u003eDetermining business requirements for security 406\u003c\/p\u003e \u003cp\u003ePerforming risk analysis 406\u003c\/p\u003e \u003cp\u003eEstablishing a security policy 408\u003c\/p\u003e \u003cp\u003eImplementing security solutions (mitigation) 409\u003c\/p\u003e \u003cp\u003eManaging security 410\u003c\/p\u003e \u003cp\u003eSecuring Linux 410\u003c\/p\u003e \u003cp\u003eUnderstanding the host-security issues 411\u003c\/p\u003e \u003cp\u003eUnderstanding network-security issues 412\u003c\/p\u003e \u003cp\u003eDelving Into Computer Security Terminology and Tools 413\u003c\/p\u003e \u003cp\u003eKeeping Up with Security News and Updates 418\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 2: Securing Linux 419\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eSecuring Passwords 420\u003c\/p\u003e \u003cp\u003eShadow passwords 420\u003c\/p\u003e \u003cp\u003ePluggable authentication modules (PAMs) 421\u003c\/p\u003e \u003cp\u003eProtecting Files and Directories 422\u003c\/p\u003e \u003cp\u003eViewing ownerships and permissions 423\u003c\/p\u003e \u003cp\u003eChanging file ownerships 423\u003c\/p\u003e \u003cp\u003eChanging file permissions 423\u003c\/p\u003e \u003cp\u003eSetting default permission 424\u003c\/p\u003e \u003cp\u003eChecking for set user ID permission 426\u003c\/p\u003e \u003cp\u003eEncrypting and Signing Files with GnuPG 427\u003c\/p\u003e \u003cp\u003eUnderstanding public key encryption 427\u003c\/p\u003e \u003cp\u003eUnderstanding digital signatures 428\u003c\/p\u003e \u003cp\u003eUsing GPG 429\u003c\/p\u003e \u003cp\u003eMonitoring System Security 433\u003c\/p\u003e \u003cp\u003eSecuring Internet Services 434\u003c\/p\u003e \u003cp\u003eTurning off stand-alone services 434\u003c\/p\u003e \u003cp\u003eConfiguring the Internet super server 435\u003c\/p\u003e \u003cp\u003eConfiguring TCP wrapper security 436\u003c\/p\u003e \u003cp\u003eUsing Secure Shell for Remote Logins 437\u003c\/p\u003e \u003cp\u003eSetting Up Simple Firewalls 439\u003c\/p\u003e \u003cp\u003eUsing NAT 442\u003c\/p\u003e \u003cp\u003eEnabling packet filtering on your Linux system 443\u003c\/p\u003e \u003cp\u003eSecurity Files to Be Aware Of 447\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 3: Vulnerability Testing and Computer Security Audits 449\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eUnderstanding Security Audits 450\u003c\/p\u003e \u003cp\u003eNontechnical aspects of security audits 450\u003c\/p\u003e \u003cp\u003eTechnical aspects of security audits 451\u003c\/p\u003e \u003cp\u003eImplementing a Security Test Methodology 452\u003c\/p\u003e \u003cp\u003eSome common computer vulnerabilities 453\u003c\/p\u003e \u003cp\u003eHost-security review 454\u003c\/p\u003e \u003cp\u003eNetwork-security review 458\u003c\/p\u003e \u003cp\u003eVulnerability Testing Types 460\u003c\/p\u003e \u003cp\u003eExploring Security Testing Tools 461\u003c\/p\u003e \u003cp\u003e\u003cb\u003eBook 7: Scripting 465\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 1: Introductory Shell Scripting 467\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eTrying Out Simple Shell Scripts 468\u003c\/p\u003e \u003cp\u003eExploring the Basics of Shell Scripting 469\u003c\/p\u003e \u003cp\u003eStoring stuff 470\u003c\/p\u003e \u003cp\u003eCalling shell functions 471\u003c\/p\u003e \u003cp\u003eControlling the flow 471\u003c\/p\u003e \u003cp\u003eExploring bash’s built-in commands 475\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 2: Advanced Shell Scripting 479\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eTrying Out sed 479\u003c\/p\u003e \u003cp\u003eWorking with awk and sed 482\u003c\/p\u003e \u003cp\u003eStep 1: Pull out the ISBN 483\u003c\/p\u003e \u003cp\u003eStep 2: Calculate the 13th digit 484\u003c\/p\u003e \u003cp\u003eStep 3: Add the 13th digit to the other 12 485\u003c\/p\u003e \u003cp\u003eStep 4: Finish the process 485\u003c\/p\u003e \u003cp\u003eFinal Notes on Shell Scripting 486\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 3: Programming in Linux 487\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eAn Overview of Programming 488\u003c\/p\u003e \u003cp\u003eExploring the Software-Development Tools in Linux 489\u003c\/p\u003e \u003cp\u003eGNU C and C++ compilers 490\u003c\/p\u003e \u003cp\u003eThe GNU make utility 493\u003c\/p\u003e \u003cp\u003eThe GNU debugger 502\u003c\/p\u003e \u003cp\u003eUnderstanding the Implications of GNU Licenses 509\u003c\/p\u003e \u003cp\u003eThe GNU General Public License 510\u003c\/p\u003e \u003cp\u003eThe GNU Library General Public License 511\u003c\/p\u003e \u003cp\u003e\u003cb\u003eBook 8: Linux Certification 513\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 1: Studying for the Linux Professional Institute Exams 515\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eOverview of LPI Certification Exams 515\u003c\/p\u003e \u003cp\u003eOverview of the Linux Essentials Exam 516\u003c\/p\u003e \u003cp\u003eGetting involved in the Linux community and finding a career in open source 517\u003c\/p\u003e \u003cp\u003eFinding your way on a Linux system 518\u003c\/p\u003e \u003cp\u003eThe power of the command line 520\u003c\/p\u003e \u003cp\u003eThe Linux operating system 521\u003c\/p\u003e \u003cp\u003eSecurity and file permissions 522\u003c\/p\u003e \u003cp\u003eOverview of the Linux Professionals Exams 524\u003c\/p\u003e \u003cp\u003eThe LPIC-1 exams 524\u003c\/p\u003e \u003cp\u003eThe LPIC-2 exams 527\u003c\/p\u003e \u003cp\u003eThe LPIC-3 exams 528\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 2: Studying for the CompTIA Linux+ Exam 529\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eOverview of the CompTIA Linux+ Exam 530\u003c\/p\u003e \u003cp\u003eSystem Management 531\u003c\/p\u003e \u003cp\u003eSecurity 532\u003c\/p\u003e \u003cp\u003eScripting, Containers, and Automation 533\u003c\/p\u003e \u003cp\u003eTroubleshooting 533\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 3: Other Linux Certifications 535\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eVendor-Neutral Certifications 535\u003c\/p\u003e \u003cp\u003eThe Linux Foundation 535\u003c\/p\u003e \u003cp\u003eThe GIAC Certifications 536\u003c\/p\u003e \u003cp\u003eVendor-Specific Certifications 537\u003c\/p\u003e \u003cp\u003eIndex 539\u003c\/p\u003e","brand":"John Wiley \u0026 Sons Inc","offers":[{"title":"Default Title","offer_id":48866424586583,"sku":"9781119901921","price":23.79,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781119901921.jpg?v=1722278581"},{"product_id":"comptia-linux-certification-allinone-exam-guide-second-edition-exam-xk0005-9781264798964","title":"CompTIA Linux Certification AllinOne Exam Guide","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e\u003cb\u003eThis comprehensive study guide delivers 100% coverage of every topic on the challenging CompTIA Linux+ exam\u003c\/b\u003e\u003c\/p\u003e\u003cp\u003eGet complete coverage of all the objectives included on CompTIA Linux+ exam XK0-005 from this up-to-date resource. Written by Linux experts and technology trainers, the book provides learning objectives at the beginning of each chapter, exam tips, practice exam questions, and in-depth answer explanations. Designed to help you pass this challenging exam, this definitive volume also serves as an essential on-the-job reference.\u003c\/p\u003e\u003cp\u003eCovers all exam topics, including how to:\u003c\/p\u003e\u003cul\u003e\n\u003cli\u003eUse the vi text editor\u003c\/li\u003e\n\u003cli\u003eWork with the Linux shell\u003c\/li\u003e\n\u003cli\u003eManage Linux users, groups, files, and directories\u003c\/li\u003e\n\u003cli\u003eAdminister ownership, permissions, and quotas\u003c\/li\u003e\n\u003cli\u003eInstall Linux and manage the boot process\u003c\/li\u003e\n\u003cli\u003ePerform container operations and version control with Git\u003c\/li\u003e\n\u003cli\u003eManage software and hardware\u003c\/li\u003e\n\u003cli\u003eWrite shell scripts\u003c\/li\u003e\n\u003cli\u003eManage network settings and s\u003c\/li\u003e\n\u003c\/ul\u003e","brand":"McGraw-Hill Education","offers":[{"title":"Default Title","offer_id":48866501165399,"sku":"9781264798964","price":39.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781264798964.jpg?v=1722278954"},{"product_id":"linux-system-programming-9781449339531","title":"Linux System Programming","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eWrite software that draws directly on services offered by the Linux kernel and core system libraries. With this comprehensive book, Linux kernel contributor Robert Love provides you with a tutorial on Linux system programming, a reference manual on Linux system calls, and an insider's guide to writing smarter, faster code.","brand":"O'Reilly Media","offers":[{"title":"Default Title","offer_id":48867116810583,"sku":"9781449339531","price":999.99,"currency_code":"GBP","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781449339531.jpg?v=1722281767"},{"product_id":"bash-pocket-reference-2e-9781491941591","title":"Bash Pocket Reference 2e","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eThis concise little book puts all of the essential information about Bash right at your fingertips. Updated for Bash version 4.4, this pocket reference has the answers to these and other problems in a format that makes browsing quick and easy.","brand":"O'Reilly Media","offers":[{"title":"Default Title","offer_id":48867305357655,"sku":"9781491941591","price":16.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781491941591.jpg?v=1722282700"},{"product_id":"bash-idioms-9781492094753","title":"bash Idioms","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eWith this practical book, you'll learn how to decipher old bash code and write new code that's as clear and readable as possible.","brand":"O'Reilly Media","offers":[{"title":"Default Title","offer_id":48867310469463,"sku":"9781492094753","price":35.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781492094753.jpg?v=1722282725"},{"product_id":"docker-in-action-9781617294761","title":"Docker in Action","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eThe idea behind Docker is simple. Create a tiny virtual environment called a container that holds just your application and its dependencies. The Docker engine uses the host operating system to keep track of your containers. Applications running inside containers share resources, making their footprints small. They are easy to install, manage, and remove.    \u003cbr\u003e    \u003cb\u003eDocker in Action, Second Edition\u003c\/b\u003e   teaches you to create, deploy, and manage applications hosted in Docker containers running on Linux. Fully updated, with four new chapters and revised best practices and examples, this second edition begins with a clear explanation of the Docker model. Then, you go hands-on with packaging applications, testing, installing, running programs securely, and deploying them across a cluster of hosts. With examples showing how Docker benefits the whole dev lifecycle, you'll discover techniques for everything from dev-and-test machines to full-scale cloud deployments.\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTrade Review\u003c\/b\u003e\u003cbr\u003e'Jeff and Stephen took their battle-hardened experience and updated this already great book with new details and examples.'  \u003cb\u003eBret Fisher, Docker Captain and Container Consultant\u003c\/b\u003e    \u003cbr\u003e    'Strikes the perfect balance between instructional manual and reference book. Ideal for everyone from beginner to seasoned pro.'  \u003cb\u003ePaul G. Brown, Diversified Services Network\u003c\/b\u003e    \u003cbr\u003e    'A must-have for those looking to level-up their organization's software and infrastructure virtualization.'  \u003cb\u003eChris Phillips, Dell\u003c\/b\u003e    \u003cbr\u003e    'An excellent and detailed resource. Useful for developers, IT admins, and dev-ops engineers.'  \u003cb\u003eEthan Rivett, Powerley\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003etable of contents     READ IN LIVEBOOK                1WELCOME TO DOCKER      1.1What is Docker?    1.1.1“Hello, World”      1.1.2Containers      1.1.3Containers are not virtualization      1.1.4Running software in containers for isolation      1.1.5Shipping containers        1.2What problems does Docker solve?    1.2.1Getting organized      1.2.2Improving portability      1.2.3Protecting your computer        1.3Why is Docker important?      1.4Where and when to use Docker      1.5Docker in the Larger Ecosystem      1.6Getting help with the Docker command line      Summary        PART 1: PROCESS ISOLATION AND ENVIRONMENT-INDEPENDENT COMPUTING    READ IN LIVEBOOK  2RUNNING SOFTWARE IN CONTAINERS      READ IN LIVEBOOK  3SOFTWARE INSTALLATION SIMPLIFIED      READ IN LIVEBOOK  4WORKING WITH STORAGE AND VOLUMES      READ IN LIVEBOOK  5SINGLE-HOST NETWORKING      READ IN LIVEBOOK  6LIMITING RISK WITH RESOURCE CONTROLS    PART 2: PACKAGING SOFTWARE FOR DISTRIBUTION    READ IN LIVEBOOK  7PACKAGING SOFTWARE IN IMAGES      READ IN LIVEBOOK  8BUILDING IMAGES AUTOMATICALLY WITH DOCKERFILES      READ IN LIVEBOOK  9PUBLIC AND PRIVATE SOFTWARE DISTRIBUTION      READ IN LIVEBOOK  10IMAGE PIPELINES    PART 3: HIGHER-LEVEL ABSTRACTIONS AND ORCHESTRATION    READ IN LIVEBOOK  11SERVICES WITH DOCKER AND COMPOSE      READ IN LIVEBOOK  12FIRST-CLASS CONFIGURATION ABSTRACTIONS      READ IN LIVEBOOK  13ORCHESTRATING SERVICES ON A CLUSTER OF DOCKER HOSTS WITH SWARM    \u003cbr\u003e","brand":"Manning Publications","offers":[{"title":"Default Title","offer_id":48867783311703,"sku":"9781617294761","price":36.71,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781617294761.jpg?v=1722284942"},{"product_id":"bash-in-easy-steps-9781840788099","title":"Bash in easy steps","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cp\u003eThe Bourne Again SHell (Bash) is a powerful command-line shell interface that lets you communicate directly with the kernel at the heart of a computer's operating system for total control. Bash is the default shell for Unix-based operating systems Linux, Mac OS X, and Raspbian on Raspberry Pi devices, and is also available to Windows users on the Windows Subsystem for Linux (WSL).\u003c\/p\u003e\u003cp\u003eThis book will show you how to use the Bash command-line interface and how to employ Bash''s programming abilities. Complete examples illustrate each aspect with colorized source code and full-color screenshots depict the actual output. \u003c\/p\u003e\u003cp\u003e\u003cstrong\u003eBash in easy steps\u003c\/strong\u003e begins by demonstrating Bash commands for system navigation and file manipulation so you will quickly become familiar with the command-line interface. It explains all the BASH basics before moving on to describe advanced features such as command history, command-line editing, and environment customization. The book then introduces Bash programming with examples of flow control, command switches, input\/output, and debugging - allowing you to create your own executable programs by copying the examples. \u003c\/p\u003e\u003cp\u003e\u003cstrong\u003eBash in easy steps\u003c\/strong\u003e has an easy-to-follow style that will appeal to: \u003c\/p\u003e\u003cli\u003eUsers who are completely new to Unix-based operating systems\u003c\/li\u003e\u003cli\u003eCasual users who wish to expand their knowledge of their computer system\u003c\/li\u003e\u003cli\u003eThose who would like to learn coding skills by writing useful shell scripts\u003c\/li\u003e\u003cli\u003eThe student who is studying programming at school or college\u003c\/li\u003e\u003cli\u003eThose seeking a career in computing and need a fundamental understanding of the BASH interpreter on Unix-based operating systems\u003c\/li\u003e","brand":"In Easy Steps Limited","offers":[{"title":"Default Title","offer_id":48868652974423,"sku":"9781840788099","price":11.39,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781840788099.jpg?v=1722289070"},{"product_id":"linux-in-easy-steps-9781840789379","title":"Linux in easy steps","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cp\u003eNow in its seventh edition, \u003cstrong\u003eLinux in easy steps\u003c\/strong\u003e explains the Linux environment and how to get more out of this stable, as well as free, operating system. You'll be able to download, install and customize Linux, and master the desktop, in no time. Then, explore the key Linux apps, including:\u003c\/p\u003e\u003cli\u003eThe LibreOffice suite: Writer (word processor), Calc (spreadsheet), Impress (presentation), Draw (drawing tool), and Base (database).\u003c\/li\u003e\u003cli\u003eFirefox for browsing the web.\u003c\/li\u003e\u003cli\u003eThunderbird for exchanging emails.\u003c\/li\u003e\u003cli\u003eGIMP, Pix, Celluloid, Hypnotix, and Rhythmbox media apps to edit photos and videos and to enjoy music and movies.\u003c\/li\u003e\u003cp\u003eThe final chapters show how to use the powerful Linux shell to communicate directly with the kernel at the very heart of Linux for total control.\u003c\/p\u003e\u003cp\u003eThis guide will open the door to the whole new world of digital possibilities using Linux. Ideal for Linux newbies!\u003c\/p\u003e","brand":"In Easy Steps Limited","offers":[{"title":"Default Title","offer_id":48868653859159,"sku":"9781840789379","price":11.39,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781840789379.jpg?v=1722289075"},{"product_id":"linux-and-lpic-1-guide-to-linux-certification-9798214000800","title":"Linux+ and LPIC-1 Guide to Linux Certification","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eEckert's LINUX+ and LPIC-1 GUIDE TO LINUX CERTIFICATION, 6th EDITION, empowers you with the knowledge and skills you need to succeed on CompTIA's Linux��+ (XKO-005) certification exam and the Linux Professional Institute LPIC-1 (101-500 and 102-500) certification exams, as well as in your information technology career. The book covers the latest Linux�� distributions, as well as virtualization, containerization, cloud orchestration and enterprise storage. Comprehensive coverage also addresses key job-related services and cloud technologies, including firewalls, FTP, NFS, Samba, Apache, DNS, DHCP, NTP, Postfix, PostgreSQL, SSH, VNC, RDP, Docker and Kubernetes. Appendices allow you to apply your Linux knowledge to macOS�� and FreeBSD��. Hands-on projects give you practice using the latest Fedora��� and Ubuntu�� Linux�� distributions and can be performed on either a Windows�� PC (Intel�� or ARM��) or macOS�� PC (Intel�� or Apple�� Silicon).\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003e1. Introduction to Linux��. 2. Linux�� Installation and Usage. 3. Exploring Linux�� Filesystems. 4. Linux�� Filesystem Management. 5. Linux�� Filesystem Administration. 6. Linux�� Server Deployment. 7. Working with the Shell. 8. System Initialization, X Windows, and Localization. 9. Managing Linux�� Processes. 10. Common Administrative Tasks. 11. Compression, System Backup, and Software Installation. 12. Network Configuration. 13. Configuring Network Services and Cloud Technologies. 14. Security, Troubleshooting, and Performance. Appendix A: Certification. Appendix B: Finding Linux Resources on the Internet. Appendix C: Applying Your Linux�� Knowledge to macOS��. Appendix D: Applying Your Linux�� Knowledge to FreeBSD��.","brand":"Cengage Learning, Inc","offers":[{"title":"Default Title","offer_id":48869611307351,"sku":"9798214000800","price":72.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9798214000800.jpg?v=1722293643"},{"product_id":"comptia-linux-xk0004-cert-guide-9780789760586","title":"CompTIA Linux XK0004 Cert Guide","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cp style=\"margin:\"\u003eAt the impressionable age of 14, \u003cb\u003eWilliam Bo Rothwell\u003c\/b\u003e crossed paths with a TRS-80 Micro Computer System (affectionally known as a Trash 80). Soon after, the adults responsible for Bo made the mistake of leaving him alone with the TSR-80. He immediately dismantled it and held his first computer class, showing his friends what made this computer thing work.\u003c\/p\u003e \u003cp style=\"margin:\"\u003e\u003cbr\u003e\u003c\/p\u003e \u003cp style=\"margin:\"\u003eSince that experience, Bo's passion for understanding how computers work and sharing this knowledge with others has resulting in a rewarding career in IT training. His experience includes Linux, Unix, IT security, devops, and programming languages such as Perl, Python, Tcl, and BASH. He is the founder and lead instructor of One Course Source, an IT training organization.\u003c\/p\u003e \u003cp style=\"margin:\"\u003e\u003cb\u003e\u003cbr\u003e\u003c\/b\u003e\u003c\/p\u003e \u003cp style=\"margin:\"\u003e\u003cb\u003eRoss Brunson\u003c\/b\u003e has more than 25 years of experience as a Linux and open source trainer, training manager, and tech\u003c\/p\u003e","brand":"Pearson Education (US)","offers":[{"title":"Default Title","offer_id":48884632027479,"sku":"9780789760586","price":35.11,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9780789760586.jpg?v=1722532802"},{"product_id":"comptia-linux-guide-to-linux-certification-9781305107168","title":"CompTIA Linux Guide to Linux Certification","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eEquip yourself with the most up-to-date information to pass CompTIA''s Linux?+ (Powered by LPI) Certification exam successfully and excel when using Linux? in today?s business world with Eckert?s LINUX?+ GUIDE TO LINUX? CERTIFICATION, 4E. This complete guide provides the solid conceptual foundation and mastery of hands-on skills necessary to work with the Linux? operation system in today?s network administration environment. You?ll find a focus on quality throughout with an emphasis on preparing you for valuable real-world experiences. This edition?s comprehensive coverage presents updated information on the latest Linux? distributions as well as storage technologies commonly used in server environments, such as LVM and ZFS. New, expanded material addresses key job-related networking services, including FTP, NFS, Samba, Apache, DNS, DHCP, NTP, Squid, Postfix, SSH, VNC, Postgresql, and iptables\/firewalld. You study the latest information on current and emerging security practices and te","brand":"Cengage Learning, Inc","offers":[{"title":"Default Title","offer_id":48885404172631,"sku":"9781305107168","price":79.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781305107168.jpg?v=1722536224"},{"product_id":"linux-hardening-in-hostile-networks-9780134173269","title":"Linux Hardening in Hostile Networks","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e\u003cstrong\u003eKyle Rankin\u003c\/strong\u003e is the vice president of engineering operations for Final, Inc.; the author of \u003cem\u003eDevOps Troubleshooting\u003c\/em\u003e, \u003cem\u003eThe Official Ubuntu Server Book\u003c\/em\u003e, \u003cem\u003eKnoppix Hacks\u003c\/em\u003e, \u003cem\u003eKnoppix Pocket Reference\u003c\/em\u003e, \u003cem\u003eLinux Multimedia Hacks\u003c\/em\u003e, and \u003cem\u003eUbuntu Hacks\u003c\/em\u003e; and a contributor to a number of other books. Rankin is an award-winning columnist for Linux Journal and has written for PC Magazine, TechTarget websites, and other publications. He speaks frequently on Open Source software, including a keynote at SCALE 11x and numerous other talks at SCALE, O'Reilly Security Conference, OSCON, CactusCon, Linux World Expo, Penguicon, and a number of Linux Users' Groups. In his free time Kyle does much of what he does at workplays with Linux and computers in general. He's also interested in brewing, BBQing, playing the banjo, 3D printing, and far too many other hobbies.\u003c\/p\u003e\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003e\u003cp\u003eForeword xiii\u003c\/p\u003e \u003cp\u003ePreface xv\u003c\/p\u003e \u003cp\u003eAcknowledgments xxiii\u003c\/p\u003e \u003cp\u003eAbout the Author xxv\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eChapter 1: Overall Security Concepts 1\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003eSection 1: Security Fundamentals 1\u003c\/p\u003e \u003cp\u003eSection 2: Security Practices Against a Knowledgeable Attacker 10\u003c\/p\u003e \u003cp\u003eSection 3: Security Practices Against an Advanced Attacker 20\u003c\/p\u003e \u003cp\u003eSummary 24\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eChapter 2: Workstation Security 25\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003eSection 1: Security Fundamentals 25\u003c\/p\u003e \u003cp\u003eSection 2: Additional Workstation Hardening 33\u003c\/p\u003e \u003cp\u003eSection 3: Qubes 37\u003c\/p\u003e \u003cp\u003eSummary 52\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eChapter 3: Server Security 53\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003eSection 1: Server Security Fundamentals 53\u003c\/p\u003e \u003cp\u003eSection 2: Intermediate Server-Hardening Techniques 58\u003c\/p\u003e \u003cp\u003eSection 3: Advanced Server-Hardening Techniques 68\u003c\/p\u003e \u003cp\u003eSummary 74\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eChapter 4: Network 75\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003eSection 1: Essential Network Hardening 76\u003c\/p\u003e \u003cp\u003eSection 2: Encrypted Networks 87\u003c\/p\u003e \u003cp\u003eSection 3: Anonymous Networks 100\u003c\/p\u003e \u003cp\u003eSummary 107\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eChapter 5: Web Servers 109\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003eSection 1: Web Server Security Fundamentals 109\u003c\/p\u003e \u003cp\u003eSection 2: HTTPS 113\u003c\/p\u003e \u003cp\u003eSection 3: Advanced HTTPS Configuration 118\u003c\/p\u003e \u003cp\u003eSummary 131\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eChapter 6: Email 133\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003eSection 1: Essential Email Hardening 133\u003c\/p\u003e \u003cp\u003eSection 2: Authentication and Encryption 137\u003c\/p\u003e \u003cp\u003eSection 3: Advanced Hardening 141\u003c\/p\u003e \u003cp\u003eSummary 156\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eChapter 7: DNS 157\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003eSection 1: DNS Security Fundamentals 158\u003c\/p\u003e \u003cp\u003eSection 2: DNS Amplification Attacks and Rate Limiting 161\u003c\/p\u003e \u003cp\u003eSection 3: DNSSEC 166\u003c\/p\u003e \u003cp\u003eSummary 175\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eChapter 8: Database 177\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003eSection 1: Database Security Fundamentals 177\u003c\/p\u003e \u003cp\u003eSection 2: Database Hardening 185\u003c\/p\u003e \u003cp\u003eSection 3: Database Encryption 191\u003c\/p\u003e \u003cp\u003eSummary 195\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eChapter 9: Incident Response 197\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003eSection 1: Incident Response Fundamentals 197\u003c\/p\u003e \u003cp\u003eSection 2: Secure Disk Imaging Techniques 200\u003c\/p\u003e \u003cp\u003eSection 3: Walk Through a Sample Investigation 209\u003c\/p\u003e \u003cp\u003eSummary 214\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eAppendix A: Tor 215\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003eWhat Is Tor? 215\u003c\/p\u003e \u003cp\u003eHow Tor Works 216\u003c\/p\u003e \u003cp\u003eSecurity Risks 219\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eAppendix B: SSL\/TLS 221\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003eWhat Is TLS? 221\u003c\/p\u003e \u003cp\u003eHow TLS Works 222\u003c\/p\u003e \u003cp\u003eTLS Troubleshooting Commands 224\u003c\/p\u003e \u003cp\u003eSecurity Risks 224\u003c\/p\u003e \u003cp\u003e\u003cem\u003eIndex 229\u003c\/em\u003e\u003c\/p\u003e","brand":"Pearson Education (US)","offers":[{"title":"Default Title","offer_id":49369127747927,"sku":"9780134173269","price":28.57,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9780134173269.jpg?v=1730128502"},{"product_id":"embedded-linux-systems-with-the-yocto-project-9780133443240","title":"Embedded Linux Systems with the Yocto Project","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e\u003cstrong\u003eRudolf J. Streif\u003c\/strong\u003e has more than twenty years of experience in software engineering as a developer and as a manager leading cross-functional engineering teams with more than one hundred members. He previously served as the Linux Foundation's Director of Embedded Solutions, coordinating the Foundation's efforts for Linux in embedded. Rudolf developed the Linux Foundation's training course on the Yocto Project, which he delivered multiple times to companies and in a crash course variant during Linux Foundation events. He lives in El Cajon, California.\u003c\/p\u003e\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e\u003cem\u003eForeword xv\u003c\/em\u003e\u003c\/p\u003e \u003cp\u003e\u003cem\u003ePreface xvii\u003c\/em\u003e\u003c\/p\u003e \u003cp\u003e\u003cem\u003eAcknowledgments xxi\u003c\/em\u003e\u003c\/p\u003e \u003cp\u003e\u003cem\u003eAbout the Author xxiii\u003c\/em\u003e\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eChapter 1: Linux for Embedded Systems 1\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e1.1 Why Linux for Embedded Systems? 1\u003c\/p\u003e \u003cp\u003e1.2 Embedded Linux Landscape 3\u003c\/p\u003e \u003cp\u003e1.3 A Custom Linux Distribution–Why Is It Hard? 8\u003c\/p\u003e \u003cp\u003e1.4 A Word about Open Source Licensing 9\u003c\/p\u003e \u003cp\u003e1.5 Organizations, Relevant Bodies, and Standards 11\u003c\/p\u003e \u003cp\u003e1.6 Summary 13\u003c\/p\u003e \u003cp\u003e1.7 References 14\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eChapter 2: The Yocto Project 15\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e2.1 Jumpstarting Your First Yocto Project Build 15\u003c\/p\u003e \u003cp\u003e2.2 The Yocto Project Family 26\u003c\/p\u003e \u003cp\u003e2.3 A Little Bit of History 28\u003c\/p\u003e \u003cp\u003e2.4 Yocto Project Terms 31\u003c\/p\u003e \u003cp\u003e2.5 Summary 33\u003c\/p\u003e \u003cp\u003e2.6 References 34\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eChapter 3: OpenEmbedded Build System 35\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e3.1 Building Open Source Software Packages 35\u003c\/p\u003e \u003cp\u003e3.2 OpenEmbedded Workflow 39\u003c\/p\u003e \u003cp\u003e3.3 OpenEmbedded Build System Architecture 45\u003c\/p\u003e \u003cp\u003e3.4 Summary 56\u003c\/p\u003e \u003cp\u003e3.5 References 57\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eChapter 4: BitBake Build Engine 59\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e4.1 Obtaining and Installing BitBake 59\u003c\/p\u003e \u003cp\u003e4.2 Running BitBake 61\u003c\/p\u003e \u003cp\u003e4.3 BitBake Metadata 70\u003c\/p\u003e \u003cp\u003e4.4 Metadata Syntax 71\u003c\/p\u003e \u003cp\u003e4.5 Source Download 86\u003c\/p\u003e \u003cp\u003e4.6 HelloWorld–BitBake Style 95\u003c\/p\u003e \u003cp\u003e4.7 Dependency Handling 99\u003c\/p\u003e \u003cp\u003e4.8 Version Selection 102\u003c\/p\u003e \u003cp\u003e4.9 Variants 103\u003c\/p\u003e \u003cp\u003e4.10 Default Metadata 103\u003c\/p\u003e \u003cp\u003e4.11 Summary 107\u003c\/p\u003e \u003cp\u003e4.12 References 108\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eChapter 5: Troubleshooting 109\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e5.1 Logging 110\u003c\/p\u003e \u003cp\u003e5.2 Task Execution 116\u003c\/p\u003e \u003cp\u003e5.3 Analyzing Metadata 119\u003c\/p\u003e \u003cp\u003e5.4 Development Shell 120\u003c\/p\u003e \u003cp\u003e5.5 Dependency Graphs 121\u003c\/p\u003e \u003cp\u003e5.6 Debugging Layers 122\u003c\/p\u003e \u003cp\u003e5.7 Summary 124\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eChapter 6: Linux System Architecture 127\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e6.1 Linux or GNU\/Linux? 127\u003c\/p\u003e \u003cp\u003e6.2 Anatomy of a Linux System 128\u003c\/p\u003e \u003cp\u003e6.3 Bootloader 129\u003c\/p\u003e \u003cp\u003e6.4 Kernel 134\u003c\/p\u003e \u003cp\u003e6.5 User Space 141\u003c\/p\u003e \u003cp\u003e6.6 Summary 143\u003c\/p\u003e \u003cp\u003e6.7 References 144\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eChapter 7: Building a Custom Linux Distribution 145\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e7.1 Core Images–Linux Distribution Blueprints 146\u003c\/p\u003e \u003cp\u003e7.2 Building Images from Scratch 160\u003c\/p\u003e \u003cp\u003e7.3 Image Options 161\u003c\/p\u003e \u003cp\u003e7.4 Distribution Configuration 169\u003c\/p\u003e \u003cp\u003e7.5 External Layers 181\u003c\/p\u003e \u003cp\u003e7.6 Hob 181\u003c\/p\u003e \u003cp\u003e7.7 Summary 184\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eChapter 8: Software Package Recipes 185\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e8.1 Recipe Layout and Conventions 185\u003c\/p\u003e \u003cp\u003e8.2 Writing a New Recipe 196\u003c\/p\u003e \u003cp\u003e8.3 Recipe Examples 212\u003c\/p\u003e \u003cp\u003e8.4 Devtool 218\u003c\/p\u003e \u003cp\u003e8.5 Summary 224\u003c\/p\u003e \u003cp\u003e8.6 References 224\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eChapter 9: Kernel Recipes 225\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e9.1 Kernel Configuration 226\u003c\/p\u003e \u003cp\u003e9.2 Kernel Patches 231\u003c\/p\u003e \u003cp\u003e9.3 Kernel Recipes 233\u003c\/p\u003e \u003cp\u003e9.4 Out-of-Tree Modules 251\u003c\/p\u003e \u003cp\u003e9.5 Device Tree 257\u003c\/p\u003e \u003cp\u003e9.6 Summary 258\u003c\/p\u003e \u003cp\u003e9.7 References 259\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eChapter 10: Board Support Packages 261\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e10.1 Yocto Project BSP Philosophy 261\u003c\/p\u003e \u003cp\u003e10.2 Building with a BSP 265\u003c\/p\u003e \u003cp\u003e10.3 Inside a Yocto Project BSP 277\u003c\/p\u003e \u003cp\u003e10.4 Creating a Yocto Project BSP 282\u003c\/p\u003e \u003cp\u003e10.5 Tuning 289\u003c\/p\u003e \u003cp\u003e10.6 Creating Bootable Media Images 290\u003c\/p\u003e \u003cp\u003e10.7 Summary 299\u003c\/p\u003e \u003cp\u003e10.8 References 299\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eChapter 11: Application Development 301\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e11.1 Inside a Yocto Project ADT 302\u003c\/p\u003e \u003cp\u003e11.2 Setting Up a Yocto Project ADT 304\u003c\/p\u003e \u003cp\u003e11.3 Building Applications 315\u003c\/p\u003e \u003cp\u003e11.4 Eclipse Integration 317\u003c\/p\u003e \u003cp\u003e11.5 Application Development Using an Emulated Target 331\u003c\/p\u003e \u003cp\u003e11.6 Summary 333\u003c\/p\u003e \u003cp\u003e11.7 References 334\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eChapter 12: Licensing and Compliance 335\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e12.1 Managing Licenses 335\u003c\/p\u003e \u003cp\u003e12.2 Managing Source Code 341\u003c\/p\u003e \u003cp\u003e12.3 Summary 343\u003c\/p\u003e \u003cp\u003e12.4 References 344\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eChapter 13: Advanced Topics 345\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e13.1 Toaster 345\u003c\/p\u003e \u003cp\u003e13.2 Build History 358\u003c\/p\u003e \u003cp\u003e13.3 Source Mirrors 366\u003c\/p\u003e \u003cp\u003e13.4 Autobuilder 368\u003c\/p\u003e \u003cp\u003e13.5 Summary 374\u003c\/p\u003e \u003cp\u003e13.6 References 375\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eAppendix A: Open Source Licenses 377\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003eA.1 MIT License (MIT) 377\u003c\/p\u003e \u003cp\u003eA.2 GNU General Public License (GPL) Version 2 378\u003c\/p\u003e \u003cp\u003eA.3 GNU General Public License (GPL) Version 3 384\u003c\/p\u003e \u003cp\u003eA.4 Apache License Version 2.0 397\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eAppendix B: Metadata Reference 403\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e\u003cem\u003eIndex 429\u003c\/em\u003e\u003c\/p\u003e","brand":"Pearson Education (US)","offers":[{"title":"Default Title","offer_id":49396171866455,"sku":"9780133443240","price":999.99,"currency_code":"GBP","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9780133443240.jpg?v=1730414985"},{"product_id":"docker-in-action-9781633430235","title":"Docker in Action","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e \u003c\/p\u003e \u003cb\u003eDESCRIPTION \u003c\/b\u003e \u003cp\u003e \u003c\/p\u003e \u003cp\u003eThe idea behind Docker, a free an open source program, is simple. Create a tiny virtual environment, called a container, for an application that includes only its particular set of dependencies. The Docker engine accounts for, manages, and builds these containers through functionality provided by the host operating system. Software running inside containers share the Linux OS and other resources, making their footprints radically smaller, and the containerized applications easy to install, manage, and remove. Applications can be packaged without worrying about environment-specific deployment concerns, and the operations team gets cleaner, more efficient systems across the board. \u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e \u003ci\u003e\u003c\/i\u003e\u003cp\u003e\u003ci\u003e \u003c\/i\u003e\u003c\/p\u003e\u003ci\u003eDocker in Action \u003c\/i\u003estarts with a clear explanation of the Docker model of virtualization and shows how to create, deploy, and manage applications hosted in Docker containers. It offers specific techniques for testing and distributing applications via Docker Hub and other registries. It shows how to take advantage of the Linux OS features that Docker uses to run programs securely, and how to manage shared resources. Using carefully-designed examples, the book guides readers on orchestrating containers and applications from installation to removal. Along the way, it teaches techniques for using Docker on systems ranging from personal dev-and-test machine to full-scale cloud deployments. \u003cp\u003e \u003c\/p\u003e \u003cp\u003e\u003cb\u003e\u003c\/b\u003e \u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e \u003cp\u003e\u003cb\u003eKEY SELLING POINTS\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eExplains the \"why\" and \"how\" of Docker \u003c\/p\u003e \u003cp\u003eSimplify software installation\u003c\/p\u003e \u003cp\u003eAddresses many of the everyday software problems faced by developers\u003c\/p\u003e \u003cp\u003e \u003cb\u003e\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003c\/p\u003e \u003cp\u003e\u003c\/p\u003e \u003cb\u003eAUDIENCE \u003c\/b\u003e \u003cp\u003e\u003c\/p\u003e \u003cp\u003eReaders need a working knowledge of installing and running software on the Linux OS. No prior experience with Docker or other virtualization technologies is required. \u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e \u003cb\u003e\u003c\/b\u003e\u003cp\u003e\u003cb\u003eABOUT THE TECHNOLOGY \u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003eDocker provides software logistics. It uses \"container\" abstraction to hide complex tooling for packaging software, and running software in virtualized environments without overhead of a full virtual machine. Docker and the container abstraction are driving a change in the way people write, test, deploy, and distribute software. \u003c\/b\u003e\u003c\/p\u003e","brand":"Manning Publications","offers":[{"title":"Default Title","offer_id":49396251590999,"sku":"9781633430235","price":37.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781633430235.jpg?v=1730415253"},{"product_id":"comptia-linux-xk0005-cert-guide-9780137866885","title":"CompTIA Linux XK0005 Cert Guide","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e\u003cstrong\u003eRoss Brunson \u003c\/strong\u003ehas more than 30 years of experience as a Linux and open-source trainer, training manager, and certification architect, and is the author of the nowclassic \u003cem\u003eLPIC-1 Exam Cram 2\u003c\/em\u003e, several iterations of the \u003cem\u003eCompTIA Linux+ Cert Guide\u003c\/em\u003e, and dozens of technical courses for major organizations.\u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e \u003cp\u003eRoss is currently the Education Architect at Grafana Labs (\u003ca href=\"http:\/\/www.grafana.com\"\u003ewww.grafana.com\u003c\/a\u003e), where he focuses on building a learning framework and training offerings that help employees and customers make the best use of Grafana to observe, troubleshoot, and maintain their environments.\u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e \u003cp\u003ePreviously, Ross was a Senior Technical Training Engineer for NGINX, where he completely redid the Fundamentals learning track, authored a number of Getting Started guides, and taught a number of customer engagements to help new NGINX customers take full advantage of the platform.\u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e \u003cp\u003eBefore NGIN\u003c\/p\u003e","brand":"Pearson Education","offers":[{"title":"Default Title","offer_id":49399842570583,"sku":"9780137866885","price":42.74,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9780137866885.jpg?v=1730468887"},{"product_id":"the-awk-programming-language-9780138269722","title":"The AWK Programming Language","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e\u003cstrong\u003eAlfred V. Aho\u003c\/strong\u003e is Lawrence Gussman Professor Emeritus of Computer Science at Columbia University, and former department chair. Well known for his work on algorithms, data structures, programming languages, compilers, and the foundations of computer science, he has received the ACM A. M. Turing Award and the IEEE John von Neumann Medal.\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eBrian W. Kernighan\u003c\/strong\u003e was a member of the Computing Science Research Center at Bell Labs and is currently a professor in the Computer Science department at Princeton. He is the co-creator of several programming languages and the co-author of numerous books, including the computing classic, \u003cem\u003eThe C Programming Language\u003c\/em\u003e.\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003ePeter J. Weinberger\u003c\/strong\u003e, currently at Google, has served as chief technology officer at Renaissance Technologies and as leader of computer science research at Bell Labs. He is a Fellow of the AAAS.\u003c\/p\u003e\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e\u003cem\u003ePreface ix\u003c\/em\u003e\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eChapter 1: An Awk Tutorial 1\u003c\/strong\u003e\u003cbr\u003e1.1 Getting Started 1\u003cbr\u003e1.2 Simple Output 4\u003cbr\u003e1.3 Formatted Output 7\u003cbr\u003e1.4 Selection 8\u003cbr\u003e1.5 Computing with Awk 10\u003cbr\u003e1.6 Control-Flow Statements 13\u003cbr\u003e1.7 Arrays 16\u003cbr\u003e1.8 Useful One-liners 17\u003cbr\u003e1.9 What Next? 19\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eChapter 2: Awk in Action 21\u003c\/strong\u003e\u003cbr\u003e2.1 Personal Computation 21\u003cbr\u003e2.2 Selection 23\u003cbr\u003e2.3 Transformation 25\u003cbr\u003e2.4 Summarization 27\u003cbr\u003e2.5 Personal Databases 28\u003cbr\u003e2.6 A Personal Library 31\u003cbr\u003e2.7 Summary 34\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eChapter 3: Exploratory Data Analysis 35\u003c\/strong\u003e\u003cbr\u003e3.1 The Sinking of the Titanic 36\u003cbr\u003e3.2 Beer Ratings 41\u003cbr\u003e3.3 Grouping Data 43\u003cbr\u003e3.4 Unicode Data 45\u003cbr\u003e3.5 Basic Graphs and Charts 47\u003cbr\u003e3.6 Summary 49\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eChapter 4: Data Processing 51\u003c\/strong\u003e\u003cbr\u003e4.1 Data Transformation and Reduction 51\u003cbr\u003e4.2 Data Validation 57\u003cbr\u003e4.3 Bundle and Unbundle 59\u003cbr\u003e4.4 Multiline Records 60\u003cbr\u003e4.5 Summary 66\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eChapter 5: Reports and Databases 67\u003c\/strong\u003e\u003cbr\u003e5.1 Generating Reports 67\u003cbr\u003e5.2 Packaged Queries and Reports 73\u003cbr\u003e5.3 A Relational Database System 75\u003cbr\u003e5.4 Summary 83\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eChapter 6: Processing Words 85\u003c\/strong\u003e\u003cbr\u003e6.1 Random Text Generation 85\u003cbr\u003e6.2 Interactive Text-Manipulation 90\u003cbr\u003e6.3 Text Processing 92\u003cbr\u003e6.4 Making an Index 99\u003cbr\u003e6.5 Summary 105\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eChapter 7: Little Languages 107\u003c\/strong\u003e\u003cbr\u003e7.1 An Assembler and Interpreter 108\u003cbr\u003e7.2 A Language for Drawing Graphs 111\u003cbr\u003e7.3 A Sort Generator 113\u003cbr\u003e7.4 A Reverse-Polish Calculator 115\u003cbr\u003e7.5 A Different Approach 117\u003cbr\u003e7.6 A Recursive-Descent Parser for Arithmetic Expressions 119\u003cbr\u003e7.7 A Recursive-Descent Parser for a Subset of Awk 122\u003cbr\u003e7.8 Summary 126\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eChapter 8: Experiments with Algorithms 129\u003c\/strong\u003e\u003cbr\u003e8.1 Sorting 129\u003cbr\u003e8.2 Profiling 142\u003cbr\u003e8.3 Topological Sorting 144\u003cbr\u003e8.4 Make: A File Updating Program 148\u003cbr\u003e8.5 Summary 153\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eChapter 9: Epilogue 155\u003c\/strong\u003e\u003cbr\u003e9.1 Awk as a Language 155\u003cbr\u003e9.2 Performance 157\u003cbr\u003e9.3 Conclusion 160\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eAppendix A: Awk Reference Manual 163\u003c\/strong\u003e\u003cbr\u003eA.1 Patterns 165\u003cbr\u003eA.2 Actions 176\u003cbr\u003eA.3 User-Defined Functions 196\u003cbr\u003eA.4 Output 197\u003cbr\u003eA.5 Input 202\u003cbr\u003eA.6 Interaction with Other Programs 207\u003cbr\u003eA.7 Summary 208\u003c\/p\u003e \u003cp\u003e\u003cem\u003eIndex 209\u003c\/em\u003e\u003c\/p\u003e","brand":"Pearson Education (US)","offers":[{"title":"Default Title","offer_id":49399843094871,"sku":"9780138269722","price":28.79,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9780138269722.jpg?v=1730468888"},{"product_id":"lpi-linux-certification-in-a-nutshell-3e-9780596804879","title":"LPI Linux Certification in a Nutshell 3e","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eA guide that helps you prepare for the technically challenging Level 1 LPI exams, which test basic knowledge of Linux installation, configuration, and command-line skills. It features a summary of the core skills you need, as well as sample exercises, test questions, and hints to help you focus.","brand":"O'Reilly Media","offers":[{"title":"Default Title","offer_id":49403370504535,"sku":"9780596804879","price":29.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9780596804879.jpg?v=1730483254"},{"product_id":"learning-ebpf-9781098135126","title":"Learning eBPF","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eThis practical book is ideal for developers, system administrators, operators, and students who are curious about eBPF and want to know how it works.","brand":"O'Reilly Media","offers":[{"title":"Default Title","offer_id":49406793187671,"sku":"9781098135126","price":33.74,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781098135126.jpg?v=1730497128"},{"product_id":"learning-kali-linux-9781098154134","title":"Learning Kali Linux","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e","brand":"O'Reilly Media","offers":[{"title":"Default Title","offer_id":49406794727767,"sku":"9781098154134","price":35.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781098154134.jpg?v=1730497134"},{"product_id":"lpic1-linux-professional-institute-certification-study-guide-9781119582120","title":"LPIC1 Linux Professional Institute Certification","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e\u003cb\u003eThe bestselling study guide for the popular Linux Professional Institute Certification Level 1 (LPIC-1).\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eThe updated fifth edition of \u003ci\u003eLPIC-1: Linux Professional Institute Certification Study Guide\u003c\/i\u003e is a comprehensive, one-volume resource that covers 100% of all exam objectives. Building on the proven Sybex Study Guide approach, this essential resource offers a comprehensive suite of study and learning tools such as assessment tests, hands-on exercises, chapter review questions, and practical, real-world examples. This book, completely updated to reflect the latest 101-500 and 102-500 exams, contains clear, concise, and user-friendly information on all of the Linux administration topics you will encounter on test day. Key exam topics include system architecture, Linux installation and package management, GNU and UNIX commands, user interfaces and desktops, essential system services, network and server security, and many more.\u003c\/p\u003e \u003cp\u003eLinux Servers currently have a \u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003e\u003c\/p\u003e\u003cp\u003eIntroduction xxi\u003c\/p\u003e \u003cp\u003eAssessment Test xxxix\u003c\/p\u003e \u003cp\u003e\u003cb\u003ePart I Exam 101-500 1\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 1 Exploring Linux Command-Line Tools 3\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eUnderstanding Command-Line Basics 4\u003c\/p\u003e \u003cp\u003eDiscussing Distributions 4\u003c\/p\u003e \u003cp\u003eReaching a Shell 5\u003c\/p\u003e \u003cp\u003eExploring Your Linux Shell Options 5\u003c\/p\u003e \u003cp\u003eUsing a Shell 7\u003c\/p\u003e \u003cp\u003eUsing Environment Variables 11\u003c\/p\u003e \u003cp\u003eGetting Help 17\u003c\/p\u003e \u003cp\u003eEditing Text Files 20\u003c\/p\u003e \u003cp\u003eLooking at Text Editors 20\u003c\/p\u003e \u003cp\u003eUnderstanding vim Modes 24\u003c\/p\u003e \u003cp\u003eExploring Basic Text-Editing Procedures 24\u003c\/p\u003e \u003cp\u003eSaving Changes 27\u003c\/p\u003e \u003cp\u003eProcessing Text Using Filters 28\u003c\/p\u003e \u003cp\u003eFile-Combining Commands 28\u003c\/p\u003e \u003cp\u003eFile-Transforming Commands 31\u003c\/p\u003e \u003cp\u003eFile-Formatting Commands 33\u003c\/p\u003e \u003cp\u003eFile-Viewing Commands 36\u003c\/p\u003e \u003cp\u003eFile-Summarizing Commands 40\u003c\/p\u003e \u003cp\u003eUsing Regular Expressions 45\u003c\/p\u003e \u003cp\u003eUsing \u003ci\u003egrep\u003c\/i\u003e 45\u003c\/p\u003e \u003cp\u003eUnderstanding Basic Regular Expressions 47\u003c\/p\u003e \u003cp\u003eUnderstanding Extended Regular Expressions 50\u003c\/p\u003e \u003cp\u003eUsing Streams, Redirection, and Pipes 50\u003c\/p\u003e \u003cp\u003eRedirecting Input and Output 51\u003c\/p\u003e \u003cp\u003ePiping Data between Programs 55\u003c\/p\u003e \u003cp\u003eUsing \u003ci\u003esed\u003c\/i\u003e 56\u003c\/p\u003e \u003cp\u003eGenerating Command Lines 60\u003c\/p\u003e \u003cp\u003eSummary 61\u003c\/p\u003e \u003cp\u003eExam Essentials 61\u003c\/p\u003e \u003cp\u003eReview Questions 62\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 2 Managing Software and Processes 67\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eLooking at Package Concepts 68\u003c\/p\u003e \u003cp\u003eUsing RPM 69\u003c\/p\u003e \u003cp\u003eRPM Distributions and Conventions 69\u003c\/p\u003e \u003cp\u003eThe rpm Command Set 71\u003c\/p\u003e \u003cp\u003eExtracting Data from RPMs 77\u003c\/p\u003e \u003cp\u003eUsing YUM 78\u003c\/p\u003e \u003cp\u003eUsing ZYpp 83\u003c\/p\u003e \u003cp\u003eUsing Debian Packages 86\u003c\/p\u003e \u003cp\u003eDebian Package File Conventions 87\u003c\/p\u003e \u003cp\u003eThe \u003ci\u003edpkg\u003c\/i\u003e Command Set 87\u003c\/p\u003e \u003cp\u003eLooking at the APT Suite 92\u003c\/p\u003e \u003cp\u003eUsing \u003ci\u003eapt-cache\u003c\/i\u003e 93\u003c\/p\u003e \u003cp\u003eUsing \u003ci\u003eapt-get\u003c\/i\u003e 94\u003c\/p\u003e \u003cp\u003eReconfiguring Packages 97\u003c\/p\u003e \u003cp\u003eManaging Shared Libraries 98\u003c\/p\u003e \u003cp\u003eLibrary Principles 98\u003c\/p\u003e \u003cp\u003eLocating Library Files 99\u003c\/p\u003e \u003cp\u003eLoading Dynamically 100\u003c\/p\u003e \u003cp\u003eLibrary Management Commands 100\u003c\/p\u003e \u003cp\u003eManaging Processes 102\u003c\/p\u003e \u003cp\u003eExamining Process Lists 102\u003c\/p\u003e \u003cp\u003eEmploying Multiple Screens 109\u003c\/p\u003e \u003cp\u003eUnderstanding Foreground and Background Processes 116\u003c\/p\u003e \u003cp\u003eManaging Process Priorities 120\u003c\/p\u003e \u003cp\u003eSending Signals to Processes 121\u003c\/p\u003e \u003cp\u003eSummary 126\u003c\/p\u003e \u003cp\u003eExam Essentials 127\u003c\/p\u003e \u003cp\u003eReview Questions 129\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 3 Configuring Hardware 133\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eConfiguring the Firmware and Core Hardware 134\u003c\/p\u003e \u003cp\u003eUnderstanding the Role of Firmware 134\u003c\/p\u003e \u003cp\u003eDevice Interfaces 136\u003c\/p\u003e \u003cp\u003eThe \/\u003ci\u003edev\u003c\/i\u003e Directory 138\u003c\/p\u003e \u003cp\u003eThe \/\u003ci\u003eproc\u003c\/i\u003e Directory 139\u003c\/p\u003e \u003cp\u003eThe \/\u003ci\u003esys\u003c\/i\u003e Directory 143\u003c\/p\u003e \u003cp\u003eWorking with Devices 144\u003c\/p\u003e \u003cp\u003eHardware Modules 148\u003c\/p\u003e \u003cp\u003eStorage Basics 154\u003c\/p\u003e \u003cp\u003eTypes of Drives 154\u003c\/p\u003e \u003cp\u003eDrive Partitions 155\u003c\/p\u003e \u003cp\u003eAutomatic Drive Detection 155\u003c\/p\u003e \u003cp\u003eStorage Alternatives 156\u003c\/p\u003e \u003cp\u003eMultipath 156\u003c\/p\u003e \u003cp\u003eLogical Volume Manager 157\u003c\/p\u003e \u003cp\u003eUsing RAID Technology 158\u003c\/p\u003e \u003cp\u003ePartitioning Tools 158\u003c\/p\u003e \u003cp\u003eWorking with \u003ci\u003efdisk\u003c\/i\u003e 158\u003c\/p\u003e \u003cp\u003eWorking with \u003ci\u003egdisk\u003c\/i\u003e 161\u003c\/p\u003e \u003cp\u003eThe GNU parted Command 162\u003c\/p\u003e \u003cp\u003eGraphical Tools 163\u003c\/p\u003e \u003cp\u003eUnderstanding Filesystems 164\u003c\/p\u003e \u003cp\u003eThe Virtual Directory 164\u003c\/p\u003e \u003cp\u003eManeuvering Around the Filesystem 166\u003c\/p\u003e \u003cp\u003eFormatting Filesystems 167\u003c\/p\u003e \u003cp\u003eCommon Filesystem Types 167\u003c\/p\u003e \u003cp\u003eCreating Filesystems 169\u003c\/p\u003e \u003cp\u003eMounting Filesystems 170\u003c\/p\u003e \u003cp\u003eManually Mounting Devices 170\u003c\/p\u003e \u003cp\u003eAutomatically Mounting Devices 172\u003c\/p\u003e \u003cp\u003eManaging Filesystems 173\u003c\/p\u003e \u003cp\u003eRetrieving Filesystem Stats 173\u003c\/p\u003e \u003cp\u003eFilesystem Tools 173\u003c\/p\u003e \u003cp\u003eSummary 174\u003c\/p\u003e \u003cp\u003eExam Essentials 175\u003c\/p\u003e \u003cp\u003eReview Questions 177\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 4 Managing Files 181\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eUsing File Management Commands 182\u003c\/p\u003e \u003cp\u003eNaming and Listing Files 182\u003c\/p\u003e \u003cp\u003eExploring Wildcard Expansion Rules 186\u003c\/p\u003e \u003cp\u003eUnderstanding the File Commands 189\u003c\/p\u003e \u003cp\u003eCompressing File Commands 199\u003c\/p\u003e \u003cp\u003eArchiving File Commands 202\u003c\/p\u003e \u003cp\u003eManaging Links 213\u003c\/p\u003e \u003cp\u003eManaging File Ownership 218\u003c\/p\u003e \u003cp\u003eAssessing File Ownership 219\u003c\/p\u003e \u003cp\u003eChanging a File’s Owner 219\u003c\/p\u003e \u003cp\u003eChanging a File’s Group 220\u003c\/p\u003e \u003cp\u003eControlling Access to Files 221\u003c\/p\u003e \u003cp\u003eUnderstanding Permissions 221\u003c\/p\u003e \u003cp\u003eChanging a File’s Mode 223\u003c\/p\u003e \u003cp\u003eSetting the Default Mode 226\u003c\/p\u003e \u003cp\u003eChanging Special Access Modes 228\u003c\/p\u003e \u003cp\u003eLocating Files 229\u003c\/p\u003e \u003cp\u003eGetting to Know the FHS 229\u003c\/p\u003e \u003cp\u003eEmploying Tools to Locate Files 231\u003c\/p\u003e \u003cp\u003eSummary 239\u003c\/p\u003e \u003cp\u003eExam Essentials 239\u003c\/p\u003e \u003cp\u003eReview Questions 241\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 5 Booting, Initializing, and Virtualizing Linux 245\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eUnderstanding the Boot Process 246\u003c\/p\u003e \u003cp\u003eThe Boot Process 246\u003c\/p\u003e \u003cp\u003eExtracting Information about the Boot Process 247\u003c\/p\u003e \u003cp\u003eLooking at Firmware 249\u003c\/p\u003e \u003cp\u003eThe BIOS Startup 249\u003c\/p\u003e \u003cp\u003eThe UEFI Startup 250\u003c\/p\u003e \u003cp\u003eLooking at Boot Loaders 251\u003c\/p\u003e \u003cp\u003eBoot Loader Principles 251\u003c\/p\u003e \u003cp\u003eUsing GRUB Legacy as the Boot Loader 251\u003c\/p\u003e \u003cp\u003eUsing GRUB 2 as the Boot Loader 255\u003c\/p\u003e \u003cp\u003eAdding Kernel Boot Parameters 259\u003c\/p\u003e \u003cp\u003eUsing Alternative Boot Loaders 260\u003c\/p\u003e \u003cp\u003eThe Initialization Process 261\u003c\/p\u003e \u003cp\u003eUsing the systemd Initialization Process 262\u003c\/p\u003e \u003cp\u003eExploring Unit Files 263\u003c\/p\u003e \u003cp\u003eFocusing on Service Unit Files 265\u003c\/p\u003e \u003cp\u003eFocusing on Target Unit Files 268\u003c\/p\u003e \u003cp\u003eLooking at \u003ci\u003esystemctl\u003c\/i\u003e 270\u003c\/p\u003e \u003cp\u003eExamining Special systemd Commands 273\u003c\/p\u003e \u003cp\u003eUsing the SysV Initialization Process 276\u003c\/p\u003e \u003cp\u003eUnderstanding Runlevels 277\u003c\/p\u003e \u003cp\u003eInvestigating SysVinit Commands 280\u003c\/p\u003e \u003cp\u003eStopping the System 283\u003c\/p\u003e \u003cp\u003eNotifying the Users 284\u003c\/p\u003e \u003cp\u003eVirtualizing Linux 286\u003c\/p\u003e \u003cp\u003eLooking at Virtual Machines 287\u003c\/p\u003e \u003cp\u003eUnderstanding Containers 291\u003c\/p\u003e \u003cp\u003eLooking at Infrastructure as a Service 293\u003c\/p\u003e \u003cp\u003eSummary 295\u003c\/p\u003e \u003cp\u003eExam Essentials 295\u003c\/p\u003e \u003cp\u003eReview Questions 298\u003c\/p\u003e \u003cp\u003e\u003cb\u003ePart II Exam 102-500 303\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 6 Configuring the GUI, Localization, and Printing 305\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eUnderstanding the GUI 306\u003c\/p\u003e \u003cp\u003eUnderstanding the X11 Architecture 307\u003c\/p\u003e \u003cp\u003eExamining X.Org 308\u003c\/p\u003e \u003cp\u003eFiguring Out Wayland 309\u003c\/p\u003e \u003cp\u003eManaging the GUI 311\u003c\/p\u003e \u003cp\u003eStandard GUI Features 311\u003c\/p\u003e \u003cp\u003eThe X GUI Login System 313\u003c\/p\u003e \u003cp\u003eCommon Linux Desktop Environments 314\u003c\/p\u003e \u003cp\u003eProviding Accessibility 323\u003c\/p\u003e \u003cp\u003eUsing X11 for Remote Access 325\u003c\/p\u003e \u003cp\u003eRemote X11 Connections 326\u003c\/p\u003e \u003cp\u003eTunneling your X11 Connection 326\u003c\/p\u003e \u003cp\u003eUsing Remote Desktop Software 328\u003c\/p\u003e \u003cp\u003eViewing VNC 328\u003c\/p\u003e \u003cp\u003eGrasping Xrdp 330\u003c\/p\u003e \u003cp\u003eExploring NX 332\u003c\/p\u003e \u003cp\u003eStudying SPICE 332\u003c\/p\u003e \u003cp\u003eUnderstanding Localization 333\u003c\/p\u003e \u003cp\u003eCharacter Sets 333\u003c\/p\u003e \u003cp\u003eEnvironment Variables 334\u003c\/p\u003e \u003cp\u003eSetting Your Locale 335\u003c\/p\u003e \u003cp\u003eInstallation Locale Decisions 335\u003c\/p\u003e \u003cp\u003eChanging Your Locale 336\u003c\/p\u003e \u003cp\u003eLooking at Time 338\u003c\/p\u003e \u003cp\u003eWorking with Time Zones 338\u003c\/p\u003e \u003cp\u003eSetting the Time and Date 339\u003c\/p\u003e \u003cp\u003eConfiguring Printing 343\u003c\/p\u003e \u003cp\u003eSummary 345\u003c\/p\u003e \u003cp\u003eExam Essentials 346\u003c\/p\u003e \u003cp\u003eReview Questions 348\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 7 Administering the System 353\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eManaging Users and Groups 354\u003c\/p\u003e \u003cp\u003eUnderstanding Users and Groups 354\u003c\/p\u003e \u003cp\u003eConfiguring User Accounts 355\u003c\/p\u003e \u003cp\u003eConfiguring Groups 371\u003c\/p\u003e \u003cp\u003eManaging Email 375\u003c\/p\u003e \u003cp\u003eUnderstanding Email 375\u003c\/p\u003e \u003cp\u003eChoosing Email Software 376\u003c\/p\u003e \u003cp\u003eWorking with Email 377\u003c\/p\u003e \u003cp\u003eUsing Log and Journal Files 384\u003c\/p\u003e \u003cp\u003eExamining the syslog Protocol 385\u003c\/p\u003e \u003cp\u003eViewing the History of Linux Logging 387\u003c\/p\u003e \u003cp\u003eLogging Basics Using \u003ci\u003ersyslogd\u003c\/i\u003e 387\u003c\/p\u003e \u003cp\u003eJournaling with \u003ci\u003esystemd-journaldd\u003c\/i\u003e 394\u003c\/p\u003e \u003cp\u003eMaintaining the System Time 403\u003c\/p\u003e \u003cp\u003eUnderstanding Linux Time Concepts 403\u003c\/p\u003e \u003cp\u003eViewing and Setting Time 404\u003c\/p\u003e \u003cp\u003eUnderstanding the Network Time Protocol 408\u003c\/p\u003e \u003cp\u003eUsing the NTP Daemon 411\u003c\/p\u003e \u003cp\u003eUsing the chrony Daemon 413\u003c\/p\u003e \u003cp\u003eSummary 416\u003c\/p\u003e \u003cp\u003eExam Essentials 416\u003c\/p\u003e \u003cp\u003eReview Questions 419\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 8 Configuring Basic Networking 423\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eNetworking Basics 424\u003c\/p\u003e \u003cp\u003eThe Physical Layer 424\u003c\/p\u003e \u003cp\u003eThe Network Layer 426\u003c\/p\u003e \u003cp\u003eThe Transport Layer 430\u003c\/p\u003e \u003cp\u003eThe Application Layer 431\u003c\/p\u003e \u003cp\u003eConfiguring Network Features 433\u003c\/p\u003e \u003cp\u003eNetwork Configuration Files 433\u003c\/p\u003e \u003cp\u003eGraphical Tools 436\u003c\/p\u003e \u003cp\u003eCommand-Line Tools 438\u003c\/p\u003e \u003cp\u003eGetting Network Settings Automatically 445\u003c\/p\u003e \u003cp\u003eBonding Network Cards 445\u003c\/p\u003e \u003cp\u003eBasic Network Troubleshooting 447\u003c\/p\u003e \u003cp\u003eSending Test Packets 447\u003c\/p\u003e \u003cp\u003eTracing Routes 448\u003c\/p\u003e \u003cp\u003eFinding Host Information 449\u003c\/p\u003e \u003cp\u003eAdvanced Network Troubleshooting 452\u003c\/p\u003e \u003cp\u003eThe \u003ci\u003enetstat\u003c\/i\u003e  Command 452\u003c\/p\u003e \u003cp\u003eExamining Sockets 455\u003c\/p\u003e \u003cp\u003eThe \u003ci\u003enetcat\u003c\/i\u003e Utility 456\u003c\/p\u003e \u003cp\u003eSummary 457\u003c\/p\u003e \u003cp\u003eExam Essentials 458\u003c\/p\u003e \u003cp\u003eReview Questions 460\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 9 Writing Scripts 465\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eShell Variables 466\u003c\/p\u003e \u003cp\u003eGlobal Environment Variables 466\u003c\/p\u003e \u003cp\u003eLocal Environment Variables 468\u003c\/p\u003e \u003cp\u003eSetting Local Environment Variables 470\u003c\/p\u003e \u003cp\u003eSetting Global Environment Variables 472\u003c\/p\u003e \u003cp\u003eLocating System Environment Variables 472\u003c\/p\u003e \u003cp\u003eUsing Command Aliases 474\u003c\/p\u003e \u003cp\u003eThe Basics of Shell Scripting 475\u003c\/p\u003e \u003cp\u003eRunning Multiple Commands 475\u003c\/p\u003e \u003cp\u003eRedirecting Output 476\u003c\/p\u003e \u003cp\u003ePiping Data 477\u003c\/p\u003e \u003cp\u003eThe Shell Script Format 478\u003c\/p\u003e \u003cp\u003eRunning the Shell Script 479\u003c\/p\u003e \u003cp\u003eAdvanced Shell Scripting 481\u003c\/p\u003e \u003cp\u003eDisplaying Messages 481\u003c\/p\u003e \u003cp\u003eUsing Variables in Scripts 482\u003c\/p\u003e \u003cp\u003eCommand-Line Arguments 484\u003c\/p\u003e \u003cp\u003eGetting User Input 484\u003c\/p\u003e \u003cp\u003eThe Exit Status 488\u003c\/p\u003e \u003cp\u003eWriting Script Programs 489\u003c\/p\u003e \u003cp\u003eCommand Substitution 489\u003c\/p\u003e \u003cp\u003ePerforming Math 490\u003c\/p\u003e \u003cp\u003eLogic Statements 492\u003c\/p\u003e \u003cp\u003eLoops 496\u003c\/p\u003e \u003cp\u003eFunctions 498\u003c\/p\u003e \u003cp\u003eRunning Scripts in Background Mode 500\u003c\/p\u003e \u003cp\u003eRunning in the Background 501\u003c\/p\u003e \u003cp\u003eRunning Multiple Background Jobs 502\u003c\/p\u003e \u003cp\u003eRunning Scripts Without a Console 503\u003c\/p\u003e \u003cp\u003eSending Signals 504\u003c\/p\u003e \u003cp\u003eInterrupting a Process 504\u003c\/p\u003e \u003cp\u003ePausing a Process 504\u003c\/p\u003e \u003cp\u003eJob Control 506\u003c\/p\u003e \u003cp\u003eViewing Jobs 506\u003c\/p\u003e \u003cp\u003eRestarting Stopped Jobs 508\u003c\/p\u003e \u003cp\u003eRunning Like Clockwork 509\u003c\/p\u003e \u003cp\u003eScheduling a Job Using the at Command 509\u003c\/p\u003e \u003cp\u003eScheduling Regular Scripts 513\u003c\/p\u003e \u003cp\u003eSummary 515\u003c\/p\u003e \u003cp\u003eExam Essentials 516\u003c\/p\u003e \u003cp\u003eReview Questions 518\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 10 Securing Your System 523\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eAdministering Network Security 524\u003c\/p\u003e \u003cp\u003eDisabling Unused Services 524\u003c\/p\u003e \u003cp\u003eUsing Super Server Restrictions 534\u003c\/p\u003e \u003cp\u003eRestricting via TCP Wrappers 538\u003c\/p\u003e \u003cp\u003eAdministering Local Security 539\u003c\/p\u003e \u003cp\u003eSecuring Passwords 539\u003c\/p\u003e \u003cp\u003eLimiting root Access 543\u003c\/p\u003e \u003cp\u003eAuditing User Access 547\u003c\/p\u003e \u003cp\u003eSetting Login, Process, and Memory Limits 549\u003c\/p\u003e \u003cp\u003eLocating SUID\/SGID Files 551\u003c\/p\u003e \u003cp\u003eExploring Cryptography Concepts 553\u003c\/p\u003e \u003cp\u003eDiscovering Key Concepts 553\u003c\/p\u003e \u003cp\u003eSecuring Data 554\u003c\/p\u003e \u003cp\u003eSigning Transmissions 555\u003c\/p\u003e \u003cp\u003eLooking at SSH 555\u003c\/p\u003e \u003cp\u003eExploring Basic SSH Concepts 555\u003c\/p\u003e \u003cp\u003eConfiguring SSH 558\u003c\/p\u003e \u003cp\u003eGenerating SSH Keys 560\u003c\/p\u003e \u003cp\u003eAuthenticating with SSH Keys 561\u003c\/p\u003e \u003cp\u003eAuthenticating with the Authentication Agent 564\u003c\/p\u003e \u003cp\u003eTunneling 565\u003c\/p\u003e \u003cp\u003eUsing SSH Securely 567\u003c\/p\u003e \u003cp\u003eUsing GPG 567\u003c\/p\u003e \u003cp\u003eGenerating Keys 568\u003c\/p\u003e \u003cp\u003eImporting Keys 569\u003c\/p\u003e \u003cp\u003eEncrypting and Decrypting Data 570\u003c\/p\u003e \u003cp\u003eSigning Messages and Verifying Signatures 571\u003c\/p\u003e \u003cp\u003eRevoking a Key 573\u003c\/p\u003e \u003cp\u003eSummary 574\u003c\/p\u003e \u003cp\u003eExam Essentials 575\u003c\/p\u003e \u003cp\u003eReview Questions 577\u003c\/p\u003e \u003cp\u003e\u003cb\u003eAppendix Answers to Review Questions 583\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eChapter 1: Exploring Linux Command-Line Tools 584\u003c\/p\u003e \u003cp\u003eChapter 2: Managing Software and Processes 587\u003c\/p\u003e \u003cp\u003eChapter 3: Configuring Hardware 590\u003c\/p\u003e \u003cp\u003eChapter 4: Managing Files 593\u003c\/p\u003e \u003cp\u003eChapter 5: Booting, Initializing, and Virtualizing Linux 597\u003c\/p\u003e \u003cp\u003eChapter 6: Configuring the GUI, Localization, and Printing 601\u003c\/p\u003e \u003cp\u003eChapter 7: Administering the System 605\u003c\/p\u003e \u003cp\u003eChapter 8: Configuring Basic Networking 608\u003c\/p\u003e \u003cp\u003eChapter 9: Writing Scripts 611\u003c\/p\u003e \u003cp\u003eChapter 10: Securing Your System 615\u003c\/p\u003e \u003cp\u003e\u003cbr\u003e Index 619\u003c\/p\u003e","brand":"John Wiley \u0026 Sons Inc","offers":[{"title":"Default Title","offer_id":49407090458967,"sku":"9781119582120","price":40.0,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781119582120.jpg?v=1730498144"},{"product_id":"your-linux-toolbox-a-zine-boxset-9781593279776","title":"Your Linux Toolbox: A Zine Boxset","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eEver wished you could spy on your computer with a handy incantation or bewitch your programs to debug themselves - now you can by becoming a Linux wizard! Okay, reading these zines won't actually make you a wizard, but you'll sure feel like one after you learn some neat Linux tricks. With this collected edition of Julia Evans's wildly popular Linux zines, you'll view programming in a way you never have before - now on fancier paper!\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTrade Review\u003c\/b\u003e\u003cbr\u003e\"This is a fantastic way to teach young ones about linux and the command line and I also found it great to learn from myself. Really nicely made and illustrated and would highly recommend!\"\u003cbr\u003e\u003cb\u003e—Tobias F, The Pi Hut Reviewer\u003cbr\u003e\u003c\/b\u003e\u003cbr\u003e\"A rich, illustrated book about the multiple Linux utilities . . . Excellent guidance for any technical person.\"\u003cbr\u003e\u003cb\u003e—Senthil Kumaran, GoodReads Librarian\u003cbr\u003e\u003c\/b\u003e\u003cbr\u003e\"Exquisite reference zine, a perfect tool to begin your learning experience with. The graphics are super cute, but also brilliantly descriptive and insightful. These are a must have for anyone new to Linux, or who has to use one occasionally for work. A+ product!\"\u003cbr\u003e\u003cb\u003e–Joanna White, Amazon Reviewer\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003eSo You Want to Be a Wizard\u003cbr\u003eBite-Size Linux!\u003cbr\u003eNetworking, ACK!\u003cbr\u003eLet's Learn tcpdump!\u003cbr\u003eLinux Debugging Tools You'll Love\u003cbr\u003eSpying on Your Programs with strace\u003cbr\u003eProfiling \u0026amp; Tracing with perf","brand":"No Starch Press,US","offers":[{"title":"Default Title","offer_id":49410455765335,"sku":"9781593279776","price":24.64,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781593279776.jpg?v=1730510292"},{"product_id":"comptia-linux-xk0005-exam-cram-9780137898558","title":"CompTIA Linux XK0005 Exam Cram","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cp\u003eAt the impressionable age of 14, \u003cstrong\u003eWilliam Bo Rothwell \u003c\/strong\u003ecrossed paths with a TRS-80 Micro Computer System (affectionately known as a Trash 80). Soon after the adults responsible for Bo made the mistake of leaving him alone with the TSR-80, he dismantled it and held his first computer class, showing his friends what made this computer thing work.\u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e \u003cp\u003eSince that experience, Bo's passion for understanding how computers work and sharing this knowledge with others has resulted in a rewarding career in IT training. His experience includes Linux, Unix, IT security, DevOps, cloud technologies, and programming languages such as Perl, Python, Tcl, and BASH. He is the founder and lead instructor of One Course Source, an IT training organization.\u003c\/p\u003e\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e    Introduction. . . . . . . . . . . . xxiv\u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e \u003cp\u003e\u003cstrong\u003ePart I: System Management\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eCHAPTER 1: \u003c\/strong\u003e\u003cstrong\u003eLinux Fundamentals\u003c\/strong\u003e\u003cstrong\u003e. . . . . . . . . . . \u003c\/strong\u003e\u003cstrong\u003e1\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e    Filesystem Hierarchy Standard (FHS).. . . . . . . 1\u003c\/p\u003e \u003cp\u003e    Basic Boot Process.. . . . . . . . . . 3\u003c\/p\u003e \u003cp\u003e    Kernel Panic. . . . . . . . . . . 10\u003c\/p\u003e \u003cp\u003e    Device Types in \/dev.. . . . . . . . . 10\u003c\/p\u003e \u003cp\u003e    Basic Package Compilation from Source.. . . . . . 13\u003c\/p\u003e \u003cp\u003e    .\/configure.. . . . . . . . . . 13\u003c\/p\u003e \u003cp\u003e    make.. . . . . . . . . . . 15\u003c\/p\u003e \u003cp\u003e    make install.. . . . . . . . . . 16\u003c\/p\u003e \u003cp\u003e    Storage Concepts.. . . . . . . . . . 16\u003c\/p\u003e \u003cp\u003e    Listing Hardware Information.. . . . . . . . 22\u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eCHAPTER 2: \u003c\/strong\u003e\u003cstrong\u003eManage Files and Directories\u003c\/strong\u003e\u003cstrong\u003e.. . . . . . . . . \u003c\/strong\u003e\u003cstrong\u003e27\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e    File Editing.. . . . . . . . . . . 27\u003c\/p\u003e \u003cp\u003e    File Compression, Archiving, and Backup. . . . . . 36\u003c\/p\u003e \u003cp\u003e    File Metadata.. . . . . . . . . . . 41\u003c\/p\u003e \u003cp\u003e    Soft and Hard Links.. . . . . . . . . 43\u003c\/p\u003e \u003cp\u003e    Copying Files Between Systems.. . . . . . . 46\u003c\/p\u003e \u003cp\u003e    File and Directory Operations.. . . . . . . . 49\u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eCHAPTER 3: \u003c\/strong\u003e\u003cstrong\u003eConfigure and Manage Storage Using the Appropriate Tools\u003c\/strong\u003e\u003cstrong\u003e.. . . \u003c\/strong\u003e\u003cstrong\u003e57\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e    Disk Partitioning.. . . . . . . . . . 57\u003c\/p\u003e \u003cp\u003e    Mounting Local and Remote Devices.. . . . . . 61\u003c\/p\u003e \u003cp\u003e    Filesystem Management. . . . . . . . . 66\u003c\/p\u003e \u003cp\u003e    Monitoring Storage Space and Disk Usage. . . . . . 70\u003c\/p\u003e \u003cp\u003e    Creating and Modifying Volumes Using Logical Volume Manager (LVM).. . . . . . . . . . 71\u003c\/p\u003e \u003cp\u003e    Inspecting RAID Implementations.. . . . . . . 75\u003c\/p\u003e \u003cp\u003e    Storage Area Network (SAN)\/Network-Attached Storage (NAS). . 78\u003c\/p\u003e \u003cp\u003e    Storage Hardware.. . . . . . . . . . 82\u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eCHAPTER 4: \u003c\/strong\u003e\u003cstrong\u003eConfigure and Use the Appropriate Processes and Services\u003c\/strong\u003e\u003cstrong\u003e.. . . \u003c\/strong\u003e\u003cstrong\u003e85\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e    System Services. . . . . . . . . . 85\u003c\/p\u003e \u003cp\u003e    Scheduling Services. . . . . . . . . . 90\u003c\/p\u003e \u003cp\u003e    Process Management. . . . . . . . . 97\u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eCHAPTER 5: \u003c\/strong\u003e\u003cstrong\u003eUse the Appropriate Networking Tools or Configuration Files\u003c\/strong\u003e\u003cstrong\u003e. . . \u003c\/strong\u003e\u003cstrong\u003e113\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e    Interface Management.. . . . . . . . . 113\u003c\/p\u003e \u003cp\u003e    Name Resolution.. . . . . . . . . . 122\u003c\/p\u003e \u003cp\u003e    Network Monitoring.. . . . . . . . . 127\u003c\/p\u003e \u003cp\u003e    Remote Networking Tools.. . . . . . . . 132\u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eCHAPTER 6: \u003c\/strong\u003e\u003cstrong\u003eBuild and Install Software\u003c\/strong\u003e\u003cstrong\u003e. . . . . . . . . \u003c\/strong\u003e\u003cstrong\u003e139\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e    Package Management.. . . . . . . . . 139\u003c\/p\u003e \u003cp\u003e    Sandboxed Applications.. . . . . . . . . 149\u003c\/p\u003e \u003cp\u003e    System Updates.. . . . . . . . . . 150\u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e \u003cp\u003e\u003cstrong\u003ePart II: Security\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eCHAPTER 7: \u003c\/strong\u003e\u003cstrong\u003eManage Software Configurations\u003c\/strong\u003e\u003cstrong\u003e.. . . . . . . . \u003c\/strong\u003e\u003cstrong\u003e155\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e    Updating Configuration Files.. . . . . . . . 155\u003c\/p\u003e \u003cp\u003e    Configure Kernel Options.. . . . . . . . 158\u003c\/p\u003e \u003cp\u003e    Configure Common System Services.. . . . . . . 165\u003c\/p\u003e \u003cp\u003e    Localization.. . . . . . . . . . . 172\u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eCHAPTER 8: \u003c\/strong\u003e\u003cstrong\u003eSecurity Best Practices in a Linux Environment\u003c\/strong\u003e\u003cstrong\u003e.. . . . . \u003c\/strong\u003e\u003cstrong\u003e177\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e    Managing Public Key Infrastructure (PKI) Certificates.. . . 177\u003c\/p\u003e \u003cp\u003e    Certificate Use Cases. . . . . . . . . 181\u003c\/p\u003e \u003cp\u003e    Authentication.. . . . . . . . . . 181\u003c\/p\u003e \u003cp\u003e    Linux Hardening.. . . . . . . . . . 188\u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eCHAPTER 9: \u003c\/strong\u003e\u003cstrong\u003eImplement Identity Management\u003c\/strong\u003e\u003cstrong\u003e. . . . . . . . \u003c\/strong\u003e\u003cstrong\u003e201\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e    Account Creation and Deletion. . . . . . . . 201\u003c\/p\u003e \u003cp\u003e    .bashrc. . . . . . . . . . . 212\u003c\/p\u003e \u003cp\u003e    Account Management.. . . . . . . . . 212\u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eCHAPTER 10: \u003c\/strong\u003e\u003cstrong\u003eImplement and Configure Firewalls\u003c\/strong\u003e\u003cstrong\u003e.. . . . . . . . \u003c\/strong\u003e\u003cstrong\u003e219\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e    Firewall Use Cases.. . . . . . . . . . 219\u003c\/p\u003e \u003cp\u003e    Common Firewall Technologies.. . . . . . . 221\u003c\/p\u003e \u003cp\u003e    Key Firewall Features.. . . . . . . . . 223\u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eCHAPTER 11: \u003c\/strong\u003e\u003cstrong\u003eConfigure and Execute Remote Connectivity for System Management\u003c\/strong\u003e\u003cstrong\u003e.. \u003c\/strong\u003e\u003cstrong\u003e227\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e    SSH.. . . . . . . . . . . . 227\u003c\/p\u003e \u003cp\u003e    Executing Commands as Another User.. . . . . . 235\u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eCHAPTER 12: \u003c\/strong\u003e\u003cstrong\u003eApply the Appropriate Access Controls\u003c\/strong\u003e\u003cstrong\u003e. . . . . . . \u003c\/strong\u003e\u003cstrong\u003e241\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e    File Permissions.. . . . . . . . . . 241\u003c\/p\u003e \u003cp\u003e    Security-Enhanced Linux (SELinux).. . . . . . . 243\u003c\/p\u003e \u003cp\u003e    AppArmor.. . . . . . . . . . . 247\u003c\/p\u003e \u003cp\u003e    Command-Line Utilities.. . . . . . . . . 250\u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e \u003cp\u003e\u003cstrong\u003ePart III: Scripting, Containers, and Automation\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eCHAPTER 13: \u003c\/strong\u003e\u003cstrong\u003eCreate Simple Shell Scripts to Automate Common Tasks\u003c\/strong\u003e\u003cstrong\u003e. . . . \u003c\/strong\u003e\u003cstrong\u003e265\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e    Shell Script Elements.. . . . . . . . . 265\u003c\/p\u003e \u003cp\u003e    Common Script Utilities.. . . . . . . . . 286\u003c\/p\u003e \u003cp\u003e    Environment Variables. . . . . . . . . 298\u003c\/p\u003e \u003cp\u003e    Relative and Absolute Paths.. . . . . . . . 302\u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eCHAPTER 14: \u003c\/strong\u003e\u003cstrong\u003ePerform Basic Container Operations\u003c\/strong\u003e\u003cstrong\u003e. . . . . . . \u003c\/strong\u003e\u003cstrong\u003e305\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e    Container Management.. . . . . . . . . 305\u003c\/p\u003e \u003cp\u003e    Container Image Operations.. . . . . . . . 312\u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eCHAPTER 15: \u003c\/strong\u003e\u003cstrong\u003ePerform Basic Version Control Using Git\u003c\/strong\u003e\u003cstrong\u003e.. . . . . . . \u003c\/strong\u003e\u003cstrong\u003e317\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e    Introduction to Version Control and Git.. . . . . . 317\u003c\/p\u003e \u003cp\u003e    clone.. . . . . . . . . . . . 321\u003c\/p\u003e \u003cp\u003e    push.. . . . . . . . . . . . 323\u003c\/p\u003e \u003cp\u003e    pull.. . . . . . . . . . . . 324\u003c\/p\u003e \u003cp\u003e    commit.. . . . . . . . . . . . 324\u003c\/p\u003e \u003cp\u003e    add.. . . . . . . . . . . . 325\u003c\/p\u003e \u003cp\u003e    branch\/checkout.. . . . . . . . . . 325\u003c\/p\u003e \u003cp\u003e    tag.. . . . . . . . . . . . 329\u003c\/p\u003e \u003cp\u003e    gitignore.. . . . . . . . . . . 330\u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eCHAPTER 16: \u003c\/strong\u003e\u003cstrong\u003eCommon Infrastructure as Code Technologies\u003c\/strong\u003e\u003cstrong\u003e.. . . . . \u003c\/strong\u003e\u003cstrong\u003e333\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e    File Formats. . . . . . . . . . . 334\u003c\/p\u003e \u003cp\u003e    Utilities.. . . . . . . . . . . . 335\u003c\/p\u003e \u003cp\u003e    Continuous Integration\/Continuous Deployment (CI\/CD).. . . 338\u003c\/p\u003e \u003cp\u003e    Advanced Git Topics.. . . . . . . . . 339\u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eCHAPTER 17: \u003c\/strong\u003e\u003cstrong\u003eContainer, Cloud, and Orchestration Concepts\u003c\/strong\u003e\u003cstrong\u003e.. . . . . \u003c\/strong\u003e\u003cstrong\u003e343\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e    Kubernetes Benefits and Application Use Cases.. . . . . 344\u003c\/p\u003e \u003cp\u003e    Single-Node, Multicontainer Use Cases. . . . . . 346\u003c\/p\u003e \u003cp\u003e    Container Persistent Storage.. . . . . . . . 346\u003c\/p\u003e \u003cp\u003e    Container Networks.. . . . . . . . . 347\u003c\/p\u003e \u003cp\u003e    Service Mesh.. . . . . . . . . . . 349\u003c\/p\u003e \u003cp\u003e    Bootstrapping. . . . . . . . . . . 350\u003c\/p\u003e \u003cp\u003e    Container Registries.. . . . . . . . . 350\u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e \u003cp\u003e\u003cstrong\u003ePart IV: Troubleshooting\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eCHAPTER 18: \u003c\/strong\u003e\u003cstrong\u003eAnalyze and Troubleshoot Storage Issues\u003c\/strong\u003e\u003cstrong\u003e.. . . . . . \u003c\/strong\u003e\u003cstrong\u003e353\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e    High Latency.. . . . . . . . . . . 353\u003c\/p\u003e \u003cp\u003e    Input\/Output Operations per Second (IOPS) Scenarios.. . . 354\u003c\/p\u003e \u003cp\u003e    Capacity Issues.. . . . . . . . . . 355\u003c\/p\u003e \u003cp\u003e    Filesystem Issues. . . . . . . . . . 358\u003c\/p\u003e \u003cp\u003e    I\/O Scheduler. . . . . . . . . . . 359\u003c\/p\u003e \u003cp\u003e    Device Issues.. . . . . . . . . . . 360\u003c\/p\u003e \u003cp\u003e    Mount Option Problems.. . . . . . . . . 363\u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eCHAPTER 19: \u003c\/strong\u003e\u003cstrong\u003eAnalyze and Troubleshoot Network Resource Issues\u003c\/strong\u003e\u003cstrong\u003e.. . . . \u003c\/strong\u003e\u003cstrong\u003e365\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e    Network Configuration Issues.. . . . . . . . 365\u003c\/p\u003e \u003cp\u003e    Firewall Issues.. . . . . . . . . . 367\u003c\/p\u003e \u003cp\u003e    Interface Errors.. . . . . . . . . . 367\u003c\/p\u003e \u003cp\u003e    Bandwidth Limitations. . . . . . . . . 373\u003c\/p\u003e \u003cp\u003e    Name Resolution Issues. . . . . . . . . 374\u003c\/p\u003e \u003cp\u003e    Testing Remote Systems.. . . . . . . . . 375\u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eCHAPTER 20: \u003c\/strong\u003e\u003cstrong\u003eAnalyze and Troubleshoot Central Processing Unit (CPU) and Memory Issues\u003c\/strong\u003e\u003cstrong\u003e. . . . \u003c\/strong\u003e\u003cstrong\u003e379\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e    Runaway Processes.. . . . . . . . . . 379\u003c\/p\u003e \u003cp\u003e    Zombie Processes.. . . . . . . . . . 380\u003c\/p\u003e \u003cp\u003e    High Load Average.. . . . . . . . . . 383\u003c\/p\u003e \u003cp\u003e    High Run Queues.. . . . . . . . . . 384\u003c\/p\u003e \u003cp\u003e    CPU Times.. . . . . . . . . . . 384\u003c\/p\u003e \u003cp\u003e    CPU Process Priorities.. . . . . . . . . 384\u003c\/p\u003e \u003cp\u003e    Memory Exhaustion.. . . . . . . . . 385\u003c\/p\u003e \u003cp\u003e    Out of Memory (OOM). . . . . . . . . 385\u003c\/p\u003e \u003cp\u003e    Swapping.. . . . . . . . . . . 386\u003c\/p\u003e \u003cp\u003e    Hardware. . . . . . . . . . . 388\u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eCHAPTER 21: \u003c\/strong\u003e\u003cstrong\u003eAnalyze and Troubleshoot User Access and File Permissions\u003c\/strong\u003e\u003cstrong\u003e. . . \u003c\/strong\u003e\u003cstrong\u003e397\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e    User Login Issues.. . . . . . . . . . 397\u003c\/p\u003e \u003cp\u003e    User File Access Issues. . . . . . . . . 400\u003c\/p\u003e \u003cp\u003e    Password Issues. . . . . . . . . . 404\u003c\/p\u003e \u003cp\u003e    Privilege Elevation.. . . . . . . . . . 405\u003c\/p\u003e \u003cp\u003e    Quota Issues. . . . . . . . . . . 405\u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eCHAPTER 22: \u003c\/strong\u003e\u003cstrong\u003eUse systemd to Diagnose and Resolve Common Problems with a Linux System\u003c\/strong\u003e\u003cstrong\u003e. . . . . \u003c\/strong\u003e\u003cstrong\u003e411\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e    Unit Files. . . . . . . . . . . 412\u003c\/p\u003e \u003cp\u003e    Common Problems.. . . . . . . . . . 429\u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e \u003cp\u003e9780137898558, TOC, 8\/11\/2022\u003c\/p\u003e","brand":"Pearson Education (US)","offers":[{"title":"Default Title","offer_id":49524417036631,"sku":"9780137898558","price":28.49,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9780137898558.jpg?v=1731856696"},{"product_id":"db2-9-7-for-linux-unix-and-windows-database-administration-certification-study-notes-9781583473672","title":"DB2 9.7 for Linux, UNIX, and Windows Database","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eThe relational database-management system DB2 9.7 is given detailed and comprehensive treatment in this exam-preparation resource. Compiled from presentation material used in the popular “Crammer Course” at the IBM Information On Demand Conference, everything required for certification is presented here, including server management, design, business rules implementation, activity monitoring, security, and networking. An essential resource, this guide is helpful when studying to pass the official DB2 9.7 for LUW DBA certification exam.","brand":"MC Press, LLC","offers":[{"title":"Default Title","offer_id":49532645900631,"sku":"9781583473672","price":19.95,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781583473672.jpg?v=1731887916"},{"product_id":"linux-operations-and-administration-9781111035303","title":"Linux Operations and Administration","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e","brand":"Cengage Learning","offers":[{"title":"Default Title","offer_id":49989914132823,"sku":"9781111035303","price":178.6,"currency_code":"GBP","in_stock":true}]},{"product_id":"linux-with-operating-system-concepts-9781032063454","title":"Linux with Operating System Concepts","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e\u003cem\u003eA True Textbook for an Introductory Course, System Administration Course, or a Combination Course\u003c\/em\u003e\u003c\/p\u003e\u003cp\u003e\u003cstrong\u003eLinux with Operating System Concepts, Second Edition\u003c\/strong\u003e merges conceptual operating system (OS) and Unix\/Linux topics into one cohesive textbook for undergraduate students. The book can be used for a one- or two-semester course on Linux or Unix. It is complete with review sections, problems, definitions, concepts and relevant introductory material, such as binary and Boolean logic, OS kernels and the role of the CPU and memory hierarchy.\u003c\/p\u003e\u003cp\u003eDetails for Introductory and Advanced Users\u003c\/p\u003e\u003cp\u003eThe book covers Linux from both the user and system administrator positions. From a user perspective, it emphasizes command-line interaction. From a system administrator perspective, the text reinforces shell scripting with examples of administration scripts that support the automation of administrator tasks.\u003c\/p\u003e\u003cp\u003eThorough Coverage of Concepts and Linux Commands\u003c\/p\u003e\u003cp\u003e\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003e\u003c\/p\u003e\u003cp\u003ePreface. Acknowledgments and Contributions. Author. \u003cb\u003eChapter 1 \u003c\/b\u003eLinux: What, Why, Who and When, and How. \u003cb\u003eChapter 2 \u003c\/b\u003eBash. \u003cb\u003eChapter 3 \u003c\/b\u003eLinux File Commands. \u003cb\u003eChapter 4 \u003c\/b\u003eManaging Processes. \u003cb\u003eChapter 5 \u003c\/b\u003eRegular Expressions. \u003cb\u003eChapter 6 \u003c\/b\u003eShell Scripting. \u003cb\u003eChapter 7 \u003c\/b\u003eUser Accounts. \u003cb\u003eChapter 8 \u003c\/b\u003eAdministering Linux File Systems. \u003cb\u003eChapter 9 \u003c\/b\u003eSystem Initialization and Services. \u003cb\u003eChapter 10 \u003c\/b\u003eNetwork Configuration. \u003cb\u003eChapter 11 \u003c\/b\u003eSoftware Installation and Maintenance. \u003cb\u003eChapter 12 \u003c\/b\u003eMaintaining and Troubleshooting Linux. \u003cb\u003eBibliography\u003c\/b\u003e. \u003cb\u003eIndex.\u003c\/b\u003e\u003c\/p\u003e","brand":"Taylor \u0026 Francis Ltd","offers":[{"title":"Default Title","offer_id":51018820190551,"sku":"9781032063454","price":78.84,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781032063454.jpg?v=1750778273"},{"product_id":"linux-server-cookbook-get-hands-on-recipes-to-install-configure-and-administer-a-linux-server-effectively-9789355513601","title":"Linux Server Cookbook: Get Hands-on Recipes to","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eThe book will then guide you through new technologies related to automation, containers, and continuous integration\/delivery pipelines. Lastly, it will help you explore concepts such as Infrastructure as Code and Infrastructure as a Service and the usage of Linux on Public and Private clouds in detail with multiple examples.","brand":"BPB Publications","offers":[{"title":"Default Title","offer_id":51047098974551,"sku":"9789355513601","price":28.49,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9789355513601.jpg?v=1750970259"},{"product_id":"linux-kernel-programming-9789365897364","title":"Linux Kernel Programming","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e","brand":"BPB Publications","offers":[{"title":"Default Title","offer_id":51360816562519,"sku":"9789365897364","price":38.72,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9789365897364.jpg?v=1754128513"},{"product_id":"ebpf-the-definitive-guide-9789365898859","title":"eBPF The definitive guide","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e","brand":"Unknown","offers":[{"title":"Default Title","offer_id":51360817021271,"sku":"9789365898859","price":26.59,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9789365898859.jpg?v=1754128512"},{"product_id":"cathedral-and-the-bazaar-9781607962281","title":"Cathedral and the Bazaar","description":"","brand":"WWW.Snowballpublishing.com","offers":[{"title":"Default Title","offer_id":51771235664215,"sku":"9781607962281","price":8.67,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781607962281.jpg?v=1758726886"},{"product_id":"linux-mint-essentials-9781782168157","title":"Linux Mint Essentials","description":"","brand":"Packt Publishing Limited","offers":[{"title":"Default Title","offer_id":51771467661655,"sku":"9781782168157","price":47.23,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781782168157.jpg?v=1758727969"},{"product_id":"hacking-essentials-the-beginners-guide-to-ethical-hacking-and-penetration-testing-9781393240891","title":"Hacking Essentials  The Beginners Guide To Ethical Hacking And Penetration Testing","description":"","brand":"Adidas Wilson","offers":[{"title":"Default Title","offer_id":52084899316055,"sku":"9781393240891","price":10.66,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781393240891.jpg?v=1762207480"},{"product_id":"linux-command-line-become-a-linux-expert-input-output-redirection-wildcards-file-security-processes-managing-shell-programming-advanced-features-gui-elements-useful-linux-commands-9781519389084","title":"LINUX Command Line: Become a Linux Expert! (Input\/output Redirection, Wildcards, File Security, Processes Managing, Shell Programming Advanced Features, GUI Elements, Useful Linux Commands)","description":"","brand":"Createspace Independent Publishing Platform","offers":[{"title":"Default Title","offer_id":52085014266199,"sku":"9781519389084","price":8.92,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781519389084.jpg?v=1762207911"},{"product_id":"kubernetes-the-ultimate-beginners-guide-to-effectively-learn-kubernetes-step-by-step-9781647710910","title":"Kubernetes: The Ultimate Beginners Guide to Effectively Learn Kubernetes Step-By-Step","description":"","brand":"Publishing Factory LLC","offers":[{"title":"Default Title","offer_id":52085310226775,"sku":"9781647710910","price":20.69,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781647710910.jpg?v=1762209052"},{"product_id":"linux-the-ultimate-crash-course-to-learn-linux-system-administration-network-security-and-cloud-computing-with-examples-and-exercises-9781647710859","title":"Linux: The ultimate crash course to learn Linux, system administration, network security, and cloud computing with examples and exercises","description":"","brand":"Publishing Factory LLC","offers":[{"title":"Default Title","offer_id":52085310259543,"sku":"9781647710859","price":17.09,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781647710859.jpg?v=1762209051"},{"product_id":"rhcsa-red-hat-enterprise-linux-9-training-and-exam-preparation-guide-ex200-third-edition-9781775062165","title":"RHCSA Red Hat Enterprise Linux 9: Training and Exam Preparation Guide (EX200), Third Edition","description":"","brand":"Endeavor Technologies","offers":[{"title":"Default Title","offer_id":52085508538711,"sku":"9781775062165","price":39.9,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781775062165.jpg?v=1762209772"},{"product_id":"linux-beginners-crash-course-linux-for-beginners-guide-to-linux-command-line-linux-system-linux-commands-9781777942816","title":"LINUX Beginner's Crash Course: Linux for Beginner's Guide to Linux Command Line, Linux System \u0026 Linux Commands","description":"","brand":"Polyscholar","offers":[{"title":"Default Title","offer_id":52085514404183,"sku":"9781777942816","price":14.11,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781777942816.jpg?v=1762209792"},{"product_id":"practical-linux-security-cookbook-secure-your-linux-environment-from-modern-day-attacks-with-practical-recipes-2nd-edition-9781789138399","title":"Practical Linux Security Cookbook: Secure your Linux environment from modern-day attacks with practical recipes, 2nd Edition","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e\u003cb\u003eEnhance file system security and learn about network attack, security tools and different versions of Linux build.\u003c\/b\u003e\u003c\/p\u003eKey Features\u003cul\u003e\n\u003cli\u003eHands-on recipes to create and administer a secure Linux system\u003c\/li\u003e\n\u003cli\u003eEnhance file system security and local and remote user authentication\u003c\/li\u003e\n\u003cli\u003eUse various security tools and different versions of Linux for different tasks\u003c\/li\u003e\n\u003c\/ul\u003eBook Description\u003cp\u003eOver the last few years, system security has gained a lot of momentum and software professionals are focusing heavily on it. Linux is often treated as a highly secure operating system. However, the reality is that Linux has its share of security ﬂaws, and these security ﬂaws allow attackers to get into your system and modify or even destroy your important data. But there’s no need to panic, since there are various mechanisms by which these ﬂaws can be removed, and this book will help you learn about different types of Linux security to create a more secure Linux system. \u003c\/p\u003e\u003cp\u003eWith a step-by-step recipe approach, the book starts by introducing you to various threats to Linux systems. Then, this book will walk you through customizing the Linux kernel and securing local files. Next, you will move on to managing user authentication both locally and remotely and mitigating network attacks. Later, you will learn about application security and kernel vulnerabilities. You will also learn about patching Bash vulnerability, packet filtering, handling incidents, and monitoring system logs. Finally, you will learn about auditing using system services and performing vulnerability scanning on Linux.\u003c\/p\u003e\u003cp\u003eBy the end of this book, you will be able to secure your Linux systems and create a robust environment.\u003c\/p\u003eWhat you will learn\u003cul\u003e\n\u003cli\u003eLearn about vulnerabilities and exploits in relation to Linux systems\u003c\/li\u003e\n\u003cli\u003eConfigure and build a secure kernel and test it\u003c\/li\u003e\n\u003cli\u003eLearn about file permissions and how to securely modify files\u003c\/li\u003e\n\u003cli\u003eAuthenticate users remotely and securely copy files on remote systems\u003c\/li\u003e\n\u003cli\u003eReview different network security methods and tools\u003c\/li\u003e\n\u003cli\u003ePerform vulnerability scanning on Linux machines using tools\u003c\/li\u003e\n\u003cli\u003eLearn about malware scanning and read through logs\u003c\/li\u003e\n\u003c\/ul\u003eWho this book is for\u003cp\u003eThis book is intended for all those Linux users who already have knowledge of Linux file systems and administration. You should be familiar with basic Linux commands. Understanding information security and its risks to a Linux system is also helpful in understanding the recipes more easily.\u003c\/p\u003e\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003eTable of Contents\u003col\u003e\n\u003cli\u003eLinux Security Problem\u003c\/li\u003e\n\u003cli\u003eConfiguring a Secure and Optimized Kernel\u003c\/li\u003e\n\u003cli\u003eLocal Filesystem Security\u003c\/li\u003e\n\u003cli\u003eLocal Authentication in Linux\u003c\/li\u003e\n\u003cli\u003eRemote Authentication\u003c\/li\u003e\n\u003cli\u003eNetwork Security\u003c\/li\u003e\n\u003cli\u003eSecurity Tools\u003c\/li\u003e\n\u003cli\u003eLinux Security Distros\u003c\/li\u003e\n\u003cli\u003eBash Vulnerability Patching\u003c\/li\u003e\n\u003cli\u003eSecurity Monitoring and Logging\u003c\/li\u003e\n\u003cli\u003eUnderstanding Linux Service Security \u003c\/li\u003e\n\u003cli\u003eScanning \u0026amp; Auditing Linux\u003c\/li\u003e\n\u003cli\u003eVulnerability Scanning \u0026amp; Intrusion Detection\u003c\/li\u003e\n\u003c\/ol\u003e","brand":"Packt Publishing Limited","offers":[{"title":"Default Title","offer_id":52085542617431,"sku":"9781789138399","price":42.3,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781789138399.jpg?v=1762209910"},{"product_id":"mastering-embedded-linux-programming-create-fast-and-reliable-embedded-solutions-with-linux-5-4-and-the-yocto-project-3-1-dunfell-9781789530384","title":"Mastering Embedded Linux Programming: Create fast and reliable embedded solutions with Linux 5.4 and the Yocto Project 3.1 (Dunfell)","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eHarness the power of Linux to create versatile and robust embedded solutions  Key Features  Learn how to develop and configure robust embedded Linux devices Explore the new features of Linux 5.4 and the Yocto Project 3.1 (Dunfell) Discover different ways to debug and profile your code in both user space and the Linux kernel  Book DescriptionIf you’re looking for a book that will demystify embedded Linux, then you’ve come to the right place. Mastering Embedded Linux Programming is a fully comprehensive guide that can serve both as means to learn new things or as a handy reference.  The first few chapters of this book will break down the fundamental elements that underpin all embedded Linux projects: the toolchain, the bootloader, the kernel, and the root filesystem. After that, you will learn how to create each of these elements from scratch and automate the process using Buildroot and the Yocto Project. As you progress, the book will show you how to implement an effective storage strategy for flash memory chips and install updates to a device remotely once it’s deployed.  You’ll also learn about the key aspects of writing code for embedded Linux, such as how to access hardware from apps, the implications of writing multi-threaded code, and techniques to manage memory in an efficient way. The final chapters demonstrate how to debug your code, whether it resides in apps or in the Linux kernel itself.  You’ll also cover the different tracers and profilers that are available for Linux so that you can quickly pinpoint any performance bottlenecks in your system. By the end of this Linux book, you’ll be able to create efficient and secure embedded devices using Linux.What you will learn  Use Buildroot and the Yocto Project to create embedded Linux systems Troubleshoot BitBake build failures and streamline your Yocto development workflow Update IoT devices securely in the field using Mender or balena Prototype peripheral additions by reading schematics, modifying device trees, soldering breakout boards, and probing pins with a logic analyzer Interact with hardware without having to write kernel device drivers Divide your system up into services supervised by BusyBox runit Debug devices remotely using GDB and measure the performance of systems using tools such as perf, ftrace, eBPF, and Callgrind  Who this book is forIf you’re a systems software engineer or system administrator who wants to learn how to implement Linux on embedded devices, then this book is for you. It's also aimed at embedded systems engineers accustomed to programming for low-power microcontrollers, who can use this book to help make the leap to high-speed systems on chips that can run Linux. Anyone who develops hardware that needs to run Linux will find something useful in this book – but before you get started, you'll need a solid grasp on POSIX standard, C programming, and shell scripting.\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003eTable of Contents\u003col\u003e\n\u003cli\u003eStarting Out \u003c\/li\u003e\n\u003cli\u003eLearning about Toolchains\u003c\/li\u003e\n\u003cli\u003eAll about Bootloaders\u003c\/li\u003e\n\u003cli\u003eConfiguring and Building the Kernel\u003c\/li\u003e\n\u003cli\u003e Building a Root Filesystem \u003c\/li\u003e\n\u003cli\u003eSelecting a Build System\u003c\/li\u003e\n\u003cli\u003eDeveloping with Yocto\u003c\/li\u003e\n\u003cli\u003eYocto Under the Hood\u003c\/li\u003e\n\u003cli\u003eCreating a Storage Strategy\u003c\/li\u003e\n\u003cli\u003eUpdating Software in the Field\u003c\/li\u003e\n\u003cli\u003eInterfacing with Device Drivers\u003c\/li\u003e\n\u003cli\u003ePrototyping with Breakout Boards\u003c\/li\u003e\n\u003cli\u003eStarting Up – The init Program\u003c\/li\u003e\n\u003cli\u003eStarting with BusyBox runit\u003c\/li\u003e\n\u003cli\u003eManaging Power\u003c\/li\u003e\n\u003cli\u003ePackaging Python\u003c\/li\u003e\n\u003cli\u003eLearning about Processes and Threads\u003c\/li\u003e\n\u003cli\u003eManaging Memory\u003c\/li\u003e\n\u003cli\u003eDebugging with GDB\u003c\/li\u003e\n\u003cli\u003eProfiling and Tracing\u003c\/li\u003e\n\u003cli\u003eReal-Time Programming\u003c\/li\u003e\n\u003c\/ol\u003e","brand":"Packt Publishing Limited","offers":[{"title":"Default Title","offer_id":52085546844503,"sku":"9781789530384","price":58.11,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781789530384.jpg?v=1762209927"},{"product_id":"learn-kali-linux-2019-perform-powerful-penetration-testing-using-kali-linux-metasploit-nessus-nmap-and-wireshark-9781789611809","title":"Learn Kali Linux 2019: Perform powerful penetration testing using Kali Linux, Metasploit, Nessus, Nmap, and Wireshark","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e\u003cb\u003eExplore the latest ethical hacking tools and techniques in Kali Linux 2019 to perform penetration testing from scratch\u003c\/b\u003e\u003c\/p\u003eKey Features\u003cul\u003e\n\u003cli\u003eGet up and running with Kali Linux 2019.2\u003c\/li\u003e\n\u003cli\u003eGain comprehensive insights into security concepts such as social engineering, wireless network exploitation, and web application attacks\u003c\/li\u003e\n\u003cli\u003eLearn to use Linux commands in the way ethical hackers do to gain control of your environment\u003c\/li\u003e\n\u003c\/ul\u003eBook Description\u003cp\u003eThe current rise in hacking and security breaches makes it more important than ever to effectively pentest your environment, ensuring endpoint protection. This book will take you through the latest version of Kali Linux and help you use various tools and techniques to efficiently deal with crucial security aspects.\u003c\/p\u003e\u003cp\u003eThrough real-world examples, you’ll understand how to set up a lab and later explore core penetration testing concepts. Throughout the course of this book, you’ll get up to speed with gathering sensitive information and even discover different vulnerability assessment tools bundled in Kali Linux 2019. In later chapters, you’ll gain insights into concepts such as social engineering, attacking wireless networks, exploitation of web applications and remote access connections to further build on your pentesting skills. You’ll also focus on techniques such as bypassing controls, attacking the end user and maintaining persistence access through social media. Finally, this pentesting book covers best practices for performing complex penetration testing techniques in a highly secured environment.\u003c\/p\u003e\u003cp\u003eBy the end of this book, you’ll be able to use Kali Linux to detect vulnerabilities and secure your system by applying penetration testing techniques of varying complexity.\u003c\/p\u003eWhat you will learn\u003cul\u003e\n\u003cli\u003eExplore the fundamentals of ethical hacking\u003c\/li\u003e\n\u003cli\u003eLearn how to install and configure Kali Linux\u003c\/li\u003e\n\u003cli\u003eGet up to speed with performing wireless network pentesting\u003c\/li\u003e\n\u003cli\u003eGain insights into passive and active information gathering\u003c\/li\u003e\n\u003cli\u003eUnderstand web application pentesting \u003c\/li\u003e\n\u003cli\u003eDecode WEP, WPA, and WPA2 encryptions using a variety of methods, such as the fake authentication attack, the ARP request replay attack, and the dictionary attack\u003c\/li\u003e\n\u003c\/ul\u003eWho this book is for\u003cp\u003eIf you are an IT security professional or a security consultant who wants to get started with penetration testing using Kali Linux 2019.2, then this book is for you. The book will also help if you’re simply looking to learn more about ethical hacking and various security breaches. Although prior knowledge of Kali Linux is not necessary, some understanding of cybersecurity will be useful.\u003c\/p\u003e\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003eTable of Contents\u003col\u003e\n\u003cli\u003eIntroduction to Hacking\u003c\/li\u003e\n\u003cli\u003eSetting up Kali - Part 1\u003c\/li\u003e\n\u003cli\u003eSetting up Kali - Part 2\u003c\/li\u003e\n\u003cli\u003eGetting Comfortable with Kali Linux 2019\u003c\/li\u003e\n\u003cli\u003ePassive Information Gathering\u003c\/li\u003e\n\u003cli\u003eActive Information Gathering\u003c\/li\u003e\n\u003cli\u003eWorking with Vulnerability Scanner\u003c\/li\u003e\n\u003cli\u003eUnderstanding Network Penetration Testing\u003c\/li\u003e\n\u003cli\u003eNetwork Penetration Testing - Pre Connection Attacks\u003c\/li\u003e\n\u003cli\u003eNetwork Penetration Testing - Gaining Access\u003c\/li\u003e\n\u003cli\u003eNetwork Penetration Testing - Post Connection Attacks\u003c\/li\u003e\n\u003cli\u003eNetwork Penetration Testing - Detection \u0026amp; Security\u003c\/li\u003e\n\u003cli\u003eClient Side Attacks - Social Engineering\u003c\/li\u003e\n\u003cli\u003ePerforming Website Penetration Testing\u003c\/li\u003e\n\u003cli\u003eWebsite Penetration Testing-Gaining Access\u003c\/li\u003e\n\u003cli\u003eBest Practices\u003c\/li\u003e\n\u003c\/ol\u003e","brand":"Packt Publishing Limited","offers":[{"title":"Default Title","offer_id":52085547729239,"sku":"9781789611809","price":34.39,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781789611809.jpg?v=1762209931"},{"product_id":"the-ultimate-kali-linux-book-perform-advanced-penetration-testing-using-nmap-metasploit-aircrack-ng-and-empire-9781801818933","title":"The Ultimate Kali Linux Book: Perform advanced penetration testing using Nmap, Metasploit, Aircrack-ng, and Empire","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e\u003cb\u003eExplore the latest ethical hacking tools and techniques to perform penetration testing from scratch\u003c\/b\u003e\u003c\/p\u003e\u003cp\u003e\u003cb\u003ePurchase of the print or Kindle book includes a free eBook in the PDF format\u003c\/b\u003e\u003c\/p\u003eKey Features\u003cul\u003e\n\u003cli\u003eLearn to compromise enterprise networks with Kali Linux\u003c\/li\u003e\n\u003cli\u003eGain comprehensive insights into security concepts using advanced real-life hacker techniques\u003c\/li\u003e\n\u003cli\u003eUse Kali Linux in the same way ethical hackers and penetration testers do to gain control of your environment\u003c\/li\u003e\n\u003c\/ul\u003eBook Description\u003cp\u003eKali Linux is the most popular and advanced penetration testing Linux distribution within the cybersecurity industry. Using Kali Linux, a cybersecurity professional will be able to discover and exploit various vulnerabilities and perform advanced penetration testing on both enterprise wired and wireless networks.\u003c\/p\u003e \u003cp\u003eThis book is a comprehensive guide for those who are new to Kali Linux and penetration testing that will have you up to speed in no time. Using real-world scenarios, you'll understand how to set up a lab and explore core penetration testing concepts. Throughout this book, you'll focus on information gathering and even discover different vulnerability assessment tools bundled in Kali Linux. You'll learn to discover target systems on a network, identify security flaws on devices, exploit security weaknesses and gain access to networks, set up Command and Control (C2) operations, and perform web application penetration testing. In this updated second edition, you'll be able to compromise Active Directory and exploit enterprise networks. Finally, this book covers best practices for performing complex web penetration testing techniques in a highly secured environment.\u003c\/p\u003e \u003cp\u003eBy the end of this Kali Linux book, you'll have gained the skills to perform advanced penetration testing on enterprise networks using Kali Linux.\u003c\/p\u003eWhat you will learn\u003cul\u003e\n\u003cli\u003eExplore the fundamentals of ethical hacking\u003c\/li\u003e\n\u003cli\u003eUnderstand how to install and configure Kali Linux\u003c\/li\u003e\n\u003cli\u003ePerform asset and network discovery techniques\u003c\/li\u003e\n\u003cli\u003eFocus on how to perform vulnerability assessments\u003c\/li\u003e\n\u003cli\u003eExploit the trust in Active Directory domain services\u003c\/li\u003e\n\u003cli\u003ePerform advanced exploitation with Command and Control (C2) techniques\u003c\/li\u003e\n\u003cli\u003eImplement advanced wireless hacking techniques\u003c\/li\u003e\n\u003cli\u003eBecome well-versed with exploiting vulnerable web applications\u003c\/li\u003e\n\u003c\/ul\u003eWho this book is for\u003cp\u003eThis pentesting book is for students, trainers, cybersecurity professionals, cyber enthusiasts, network security professionals, ethical hackers, penetration testers, and security engineers. If you do not have any prior knowledge and are looking to become an expert in penetration testing using the Kali Linux operating system (OS), then this book is for you.\u003c\/p\u003e\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003eTable of Contents\u003col\u003e\n\u003cli\u003eIntroduction to Ethical Hacking\u003c\/li\u003e\n\u003cli\u003eBuilding a Penetration Testing Lab\u003c\/li\u003e\n\u003cli\u003eSetting Up for Advanced Hacking Techniques\u003c\/li\u003e\n\u003cli\u003eReconnaissance and Footprinting\u003c\/li\u003e\n\u003cli\u003eExploring Active Information Gathering\u003c\/li\u003e\n\u003cli\u003ePerforming Vulnerability Assessments\u003c\/li\u003e\n\u003cli\u003eUnderstanding Network Penetration Testing\u003c\/li\u003e\n\u003cli\u003ePerforming Network Penetration Testing\u003c\/li\u003e\n\u003cli\u003eAdvanced Network Penetration Testing – Post Exploitation\u003c\/li\u003e\n\u003cli\u003eWorking with Active Directory Attacks\u003c\/li\u003e\n\u003cli\u003eAdvanced Active Directory Attacks\u003c\/li\u003e\n\u003cli\u003eDelving into Command and Control Tactics\u003c\/li\u003e\n\u003cli\u003eAdvanced Wireless Penetration Testing\u003c\/li\u003e\n\u003cli\u003ePerforming Client-Side Attacks - Social Engineering\u003c\/li\u003e\n\u003cli\u003eUnderstanding Website Application Security\u003c\/li\u003e\n\u003cli\u003eAdvanced Website Penetration Testing\u003c\/li\u003e\n\u003cli\u003eBest Practices for the Real World\u003c\/li\u003e\n\u003c\/ol\u003e","brand":"Packt Publishing Limited","offers":[{"title":"Default Title","offer_id":52085573321047,"sku":"9781801818933","price":47.23,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781801818933.jpg?v=1762210036"}],"url":"https:\/\/bookcurl.com\/collections\/linux.oembed?page=3","provider":"Book Curl","version":"1.0","type":"link"}