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