CompTIA Linux+ Certification All-in-One Exam Guide, Second Edition (Exam XK0-005), 2nd Edition

Book description

This comprehensive study guide delivers 100% coverage of every topic on the challenging CompTIA Linux+ exam

Take the newest version of the CompTIA Linux+ exam (Exam XK0-005) with complete confidence using the detailed information contained in this highly effective self-study guide. You will get clear explanations of every topic on the test along with special elements that reinforce and teach practical skills, step-by-step exercises, exam tips, and notes. Written by an expert in the field, the book serves both a powerful exam preparation tool and an ideal on-the-job reference.

CompTIA Linux+ Certification All-in-One Exam Guide, Second Edition (Exam XK0-005) offers complete coverage of every topic on the test and features more than 180 accurate practice questions. Videos and a downloadable virtual machine is pre-configured for use with specific exercises in each chapter. Sidebars throughout offer real-world insights and practical applications, and end-of-chapter summaries and review questions aid in retention.

  • Offers complete coverage of all exam objectives for the CompTIA Linux+ certification
  • Contains a coupon for 10% off any CompTIA exam
  • Online content includes 180 practice questions and training videos from the author

Table of contents

  1. Cover
  2. Title Page
  3. Copyright Page
  4. Dedication
  5. Contents
  6. Acknowledgments
  7. Introduction
  8. Chapter 1 An Introduction to Linux and a Pre-Assessment Exam
    1. A Brief History of Linux
      1. Batch Processing
      2. MULTICS
      3. UNIX
      4. Linux
    2. Linux Operating System Structure
      1. Kernel
      2. Operating System Software
      3. Application Software
    3. Linux Distributions
      1. Distribution Differences
      2. Linux Derivatives
    4. Common Linux Implementations
      1. Linux on the Desktop
      2. Linux on the Server
      3. Mobile Linux
      4. Linux and Virtualization
      5. Linux and Cloud Computing
      6. Embedded Linux
    5. Chapter Review
    6. Pre-Assessment Test
    7. Questions
    8. Quick Answer Key
    9. In-Depth Answer Explanations
    10. Analyzing Your Results
  9. Chapter 2 Using the vi Text Editor
    1. The Role and Function of the vi Text Editor
    2. Editing Text Files in vi
      1. Opening Files in vi
      2. The vi Modes
      3. Working in Normal Mode
      4. Working in Command-Line Mode
      5. Exercise 2-1: Using the vi Editor
    3. Editing Text Files in nano
      1. Command Keys
      2. Configuration Files
    4. Chapter Review
      1. Questions
      2. Answers
  10. Chapter 3 Working with the Linux Shell
    1. What Is a Shell?
    2. Configuring the Shell
      1. The Life of a Process
      2. Managing Variables
      3. Configuring Aliases
    3. Setting Up the Local Environment
      1. Locale Settings
      2. Character Encoding
      3. An ASCII Primer
      4. A Unicode Primer
    4. Setting Time
      1. The date Command
      2. The /usr/share/zoneinfo/ and /etc/localtime Files
      3. The hwclock Command
      4. The timedatectl Command
    5. Bash Configuration Files
      1. Login Script Order
      2. The source Command
      3. Exercise 3-1: Working with Variables, Parameters, and Aliases
    6. Redirection
      1. File Descriptors
      2. Redirect stdin with <
      3. Redirect stdout with > and >>
      4. Redirect stderr with 2>
      5. Combining stdout and stderr
      6. Send Data to a Command Using a Pipe
      7. Exercise 3-2: Redirection Hands-on Project
    7. Chapter Review
      1. Questions
      2. Answers
  11. Chapter 4 Managing Linux Users and Groups
    1. Understanding Linux Users and Groups
      1. Linux User Accounts
      2. Displaying User and Group IDs
    2. Creating and Managing User Accounts from the Command Line
      1. Provisioning New Users with useradd
      2. Exercise 4-1: Managing User Accounts from the Command Line
      3. Provisioning New Workgroups with groupadd
      4. Exercise 4-2: Managing Groups from the Command Line
    3. Chapter Review
      1. Questions
      2. Answers
  12. Chapter 5 Managing Linux Files and Directories
    1. Understanding the Filesystem Hierarchy Standard
      1. Navigating the Linux Filesystem
      2. Viewing Directory Contents with ls
      3. Exercise 5-1: Navigating the Filesystem
    2. Managing Linux Files
      1. Files, Filenames, and Inodes
      2. Creating and Validating Files with touch and stat
      3. Soft and Hard Links
      4. Creating New Directories with mkdir
      5. Determining the File Type
      6. Viewing File Contents
      7. Deleting Files
      8. Copying and Moving Files
      9. Exercise 5-2: Managing Files and Directories
    3. Finding Files in the Linux Filesystem
      1. Using find to Search for Files
      2. Using xargs to Run Commands from Standard Input
      3. Using locate to Find Files
    4. Understanding Commands and Precedence
      1. Creating Aliases
      2. Creating and Using Functions
      3. Using Builtin Commands
      4. Using External Commands
      5. Exercise 5-3: Finding Files
    5. Finding Content Within Files
      1. Using grep to Search Within Files
      2. Using egrep to Search Within Files
      3. Exercise 5-4: Using grep
    6. Chapter Review
      1. Questions
      2. Answers
  13. Chapter 6 Managing Ownership and Permissions
    1. Managing File Ownership
      1. Viewing Default File Permissions and Ownership
      2. Managing Ownership from the Command Line
      3. Exercise 6-1: Managing Ownership
    2. Managing File and Directory Permissions
      1. How Permissions Work
      2. Managing Permissions from the Command Line
      3. Exercise 6-2: Managing Permissions
      4. Working with Default Permissions
      5. Working with Special Permissions
      6. Exercise 6-3: Managing Default and Special Permissions
    3. Configuring File Attributes and Access Control Lists
      1. File Attributes
      2. File Access Control Lists
    4. Chapter Review
      1. Questions
      2. Answers
  14. Chapter 7 Managing Storage
    1. An Overview of Storage
      1. The Master Boot Record
      2. The GUID Partition Table
      3. The Device Naming Conventions
      4. Viewing Disk Partitions
    2. Creating Partitions
      1. Partition Considerations
      2. fdisk Partitioning Utility
      3. parted Partitioning Utility
      4. gdisk Partitioning Utility
      5. Block Device Encryption
    3. Creating Filesystems
      1. Available Filesystems
      2. Building a Filesystem
      3. Mounting a Filesystem
      4. Mounting Filesystems Automatically at Boot
      5. Unmounting a Partition with umount
    4. Managing Linux Filesystems
      1. Using df to Verify Free Disk Space
      2. Using du to Verify Directory Usage
      3. Reporting Filesystem Status Using dumpe2fs
      4. Verifying XFS Filesystems Using xfs_admin
      5. Checking the Filesystem Integrity
    5. Managing Quotas
      1. Editing /etc/fstab to Set Up Quotas
      2. Creating Quota Database Files
      3. Assigning a Quota to Users and Groups
      4. Exercise 7-1: Managing Linux Partitions
    6. Chapter Review
      1. Questions
      2. Answers
  15. Chapter 8 Configuring Volume Management
    1. Implementing Logical Volume Management
      1. LVM Components
      2. LVM Configuration
      3. LVM Snapshots
      4. Extending LVMs
    2. Creating Archives and Performing Compression
      1. Selecting a Backup Medium
      2. Selecting a Backup Strategy
      3. Linux Backup and Compression Utilities
      4. Exercise 8-1: Backing Up Data
    3. Enabling Redundant Array of Independent Disks
      1. Configuring Software RAID
      2. Verifying RAID Status
      3. Exercise 8-2: Configuring RAID and Logical Volumes
    4. Chapter Review
      1. Questions
      2. Answers
  16. Chapter 9 Managing Linux Processes
    1. Understanding Linux Processes
      1. Types of Linux Programs
      2. User Processes Versus System Processes
      3. How Linux Processes Are Loaded
    2. Managing Processes
      1. Starting System Processes
      2. Viewing Running Processes
      3. Prioritizing Processes
      4. Managing Foreground and Background Processes
      5. Ending a Running Process
      6. Keeping a Process Running After Logout
      7. Exercise 9-1: Working with Linux Processes
    3. Scheduling Jobs
      1. Using the at Daemon
      2. Using the cron Daemon
      3. Exercise 9-2: Scheduling Linux Processes
      4. Using systemd timers
    4. Chapter Review
      1. Questions
      2. Answers
  17. Chapter 10 Managing Linux Applications
    1. Using a Package Manager to Install Applications
    2. Installing Applications on Red Hat with RPM
      1. RPM Package Naming Conventions
      2. RPM Command Options
      3. RPM Application Installation
      4. RPM Application Upgrades
      5. RPM Application Removal
      6. RPM Application Verification
      7. RPM Database Querying
      8. RPM Conversion to CPIO
      9. Exercise 10-1: Practicing Package Manipulation with RPM
    3. Installing RPMs with YUM, DNF, and ZYpp
      1. The YUM Package Manager
      2. Exercise 10-2: Practicing Package Manipulation with YUM
      3. The DNF Package Manager
      4. The ZYpp Package Manager
    4. Installing Applications on Debian with dpkg
      1. Debian Package Naming Conventions
      2. Managing Applications with dpkg
      3. Viewing Application Information with apt-cache
    5. Installing Applications on Debian with APT
      1. Troubleshooting an Application Crash
    6. Using Universal Linux App Stores
      1. Snap Fundamentals
      2. Flatpak Fundamentals
      3. AppImage Fundamentals
    7. Installing Applications from Source Code
      1. Preparing the Installation Files
      2. Compiling the Executable
      3. Installing the Executable
      4. Exercise 10-3: Building Software from Source Code
      5. Uninstalling Software Compiled from Source Code
    8. Managing Shared Libraries
      1. How Shared Libraries Work
      2. Managing Shared Library Dependencies
      3. Exercise 10-4: Working with Shared Libraries
    9. Chapter Review
      1. Questions
      2. Answers
  18. Chapter 11 Managing the Linux Boot Process
    1. The BIOS POST Phase
      1. The Classic BIOS
      2. The Modern UEFI
    2. The GRUB2 Bootloader Phase
      1. Modify the GRUB2 Bootloader
      2. Change a Forgotten root Password
      3. Exercise 11-1: Working with GRUB2
    3. The Kernel Initiation Phase
    4. System V Initialization
      1. The Linux Runlevels
      2. The inittab Startup File
      3. Shutting Down the System
    5. The systemd Initialization Phase
      1. systemd Unit Files
      2. Service Procedures
      3. Targets
    6. Kernel Panic
    7. Chapter Review
      1. Questions
      2. Answers
  19. Chapter 12 Managing Hardware Under Linux
    1. Discovering Devices
      1. Displaying the Kernel Ring Buffer with dmesg
      2. Detecting USB Devices with lsusb
      3. Detecting PCI Devices with lspci
    2. Managing Kernel Modules
      1. Exercise 12-1: Working with Kernel Modules
    3. Referencing Kernel and User Space
      1. /sys and sysfs
      2. udev
    4. Configuring Hardware Devices
      1. lsdev
      2. lshw
      3. Exercise 12-2: Discovering Devices
    5. Configuring Bluetooth
      1. Classes
      2. Bluetooth Commands
    6. Configuring Wi-Fi
      1. Scanning for Network Devices
      2. Configuring a Wi-Fi Network
    7. Configuring Storage Devices
      1. IDE
      2. SCSI
      3. SATA
      4. Optical Drives
      5. Solid State Drives
      6. USB
      7. hdparm
      8. lsscsi
    8. Printing in Linux
      1. Adding Printers
      2. Printing to a Printer
      3. Managing Printers and Print Queues
      4. Canceling Print Jobs
      5. lpmove
      6. Removing a Printer or Printer Class
      7. Exercise 12-3: Printing
    9. Chapter Review
      1. Questions
      2. Answers
  20. Chapter 13 Writing Shell Scripts
    1. Advanced Shell Concepts
      1. Globbing Wildcard Characters
      2. Sequencing Commands
      3. Command Substitution
    2. Understanding Shell Script Components
      1. Defining the Interpreter with #!
      2. Commenting with #
      3. Defining Variables
      4. Reading User Input
      5. Using Positional Parameters
      6. Using Functions
    3. Using Control Operators
      1. Expression Operators
      2. Testing with Conditionals
      3. Using Looping Structures
      4. Exercise 13-1: Creating a Basic Shell Script
    4. Processing Text Streams
      1. The tr Command
      2. The cut Command
      3. The nl Command
      4. The od Command
      5. The sed Command
      6. The awk Command
      7. The sort Command
      8. The split Command
      9. The head Command
      10. The tail Command
      11. The uniq Command
      12. The wc Command
      13. Exercise 13-2: Processing Text Streams
    5. Chapter Review
      1. Questions
      2. Answers
  21. Chapter 14 Managing Linux Network Settings
    1. Understanding IP Networks
      1. What Is a Protocol?
      2. How IPv4 Addresses Work
      3. How IPv4 Subnet Masks Work
    2. Configuring Network Addressing Parameters
      1. Assigning NIC Nomenclature
      2. Configuring IPv4 Parameters
      3. Exercise 14-1: Working with Network Interfaces
      4. Configuring Routing Parameters
      5. Configuring Name Resolver Settings
      6. Configuring IPv6
    3. Troubleshooting Network Problems
      1. Using a Standardized Troubleshooting Model
      2. Using ping
      3. Using netstat
      4. Using traceroute
      5. Using nc
      6. Using Name Resolution Tools
      7. Synchronizing Time on a Network
      8. Exercise 14-2: Working with Network Commands
    4. Understanding Network-Based Filesystems
      1. Network File System (NFS)
      2. Samba
    5. Chapter Review
      1. Questions
      2. Answers
  22. Chapter 15 Understanding Network Security
    1. Understanding How Encryption Works
      1. Symmetric Encryption
      2. Asymmetric Encryption
      3. Integrity Checking via Hashing
    2. Implementing Secured Tunnel Networks
      1. How SSH Works
      2. Configuring SSH
      3. Exercise 15-1: Working with SSH
      4. Logging In to SSH Without a Password
      5. Exercise 15-2: Configuring Public Key Authentication
      6. Virtual Private Networks
    3. Configuring High-Availability Networking
      1. Network Bridge Control
      2. Network Bonding
    4. Understanding Single Sign-On
      1. RADIUS
      2. LDAP
      3. Kerberos
      4. TACACS+
    5. Defending Against Network Attacks
      1. Mitigating Network Vulnerabilities
      2. Implementing a Firewall with firewalld
      3. Exercise 15-3: Implementing Network Security Measures with firewalld
      4. Implementing a Firewall with iptables
      5. Exercise 15-4: Implementing Network Security Measures with iptables
    6. Encrypting Files with GPG
      1. How GPG Works
      2. Using GPG to Encrypt Files
      3. Using GPG to Revoke Keys
      4. Exercise 15-5: Using GPG to Encrypt Files
    7. Chapter Review
      1. Questions
      2. Answers
  23. Chapter 16 Securing Linux
    1. Securing the System
      1. Securing the Physical Environment
      2. Securing Access to the Operating System
    2. Controlling User Access
      1. To Root or Not to Root?
      2. Implementing a Strong Password Policy
      3. Locking Accounts After Failed Authentications
      4. Configuring User Limits
      5. Disabling User Login
      6. Security Auditing Using find
      7. Exercise 16-1: Managing User Access
    3. Managing System Logs
      1. Configuring Log Files
      2. Using Log Files to Troubleshoot Problems
      3. Using Log Files to Detect Intruders
    4. Enhancing Group and File Security
      1. Implementing SELinux
      2. Implementing AppArmor
      3. Exercise 16-2: Managing SELinux Contexts
    5. Chapter Review
      1. Questions
      2. Answers
  24. Chapter 17 Applying DevOps: Automation and Orchestration
    1. Orchestration Concepts
    2. Orchestration Processes
    3. The Git Revision Control System
      1. Using Git
      2. Collaborating with Git
      3. Exercise 17-1: Working with a Git Repository
    4. Chapter Review
      1. Questions
      2. Answers
  25. Chapter 18 Understanding Virtualization and the Cloud
    1. Understanding Virtualization
      1. Hypervisors
      2. Thin vs. Thick Provisioning
      3. Virtualization File Formats
      4. Managing Virtual Machines with virsh
      5. Virtual Networking
      6. BLOB Storage
      7. Virtual Machine Shortcomings
    2. Understanding Containers
      1. Persistent Volumes
      2. Container Markup Languages
    3. Managing Containers with Docker and Kubernetes
      1. Getting Started with Docker
      2. Deploying an Existing Container Image
      3. Running a Container Image
      4. Configuring Container Persistent Storage
      5. Removing Containers
      6. Cluster Management with Kubernetes
    4. Automating Installations with Kickstart
    5. Chapter Review
      1. Questions
      2. Answers
  26. Chapter 19 Troubleshooting and Diagnostics
    1. A Standardized Troubleshooting Model
    2. Troubleshooting Computer Problems
      1. Verify Hardware Configuration
      2. Verify CPU Performance
      3. Verify Memory Performance
      4. Exercise 19-1: Working with Swap Space
      5. Validate Storage Performance
      6. Validate Other Devices
    3. Troubleshooting Network Problems
      1. Verify Network Performance
      2. Validate User Connections
      3. Validate the Firewall
      4. Exercise 19-2: Troubleshooting Networking Issues
    4. Chapter Review
      1. Questions
      2. Answers
  27. Chapter 20 Installing and Configuring Linux
    1. Designing a Linux Installation
      1. Conducting a Needs Assessment
      2. Selecting a Distribution
      3. Checking Hardware Compatibility
      4. Verifying System Requirements
      5. Planning the Filesystem
      6. Selecting Software Packages
      7. Identifying User Accounts
      8. Gathering Network Information
      9. Selecting an Installation Source
    2. Installing Linux
      1. Exercise 20-1: Installing a Linux System
    3. Configuring the X Window System
      1. Configuring the X Server
      2. Configuring the Display Manager
      3. Configuring Accessibility
    4. Configuring Locale Settings
    5. Configuring Time Zone Settings
    6. Configuring Printing with CUPS
      1. Configuring CUPS
    7. Configuring E-mail
    8. Configuring SQL Databases
    9. Configuring Storage
      1. GUID Partition Table Components
      2. IDE Drives
      3. Locating a Device
    10. Chapter Review
      1. Questions
      2. Answers
  28. Appendix A Objective Map
    1. Exam XK0-005
  29. Appendix B About the Online Content
    1. System Requirements
    2. Your Total Seminars Training Hub Account
      1. Privacy Notice
    3. Single User License Terms and Conditions
    4. TotalTester Online
    5. Other Book Resources
      1. Performance-Based Questions
      2. Virtual Machines
      3. Videos
    6. Technical Support
  30. Index

Product information

  • Title: CompTIA Linux+ Certification All-in-One Exam Guide, Second Edition (Exam XK0-005), 2nd Edition
  • Author(s): Ted Jordan, Sandor Strohmayer
  • Release date: May 2023
  • Publisher(s): McGraw-Hill
  • ISBN: 9781264802777