Course Outline
Part One: System Tools
- Module 1
- Preparing Your Environment
- Setting Up a Learning Space
- Exploring Linux Distributions
- Locating a Terminal
- Module 2
- Sifting Through Services
- What is a Linux Server?
- Serving the Basics
- Serving Local Networks
- Implementing Security
- Improving Performance
- Module 3
- Managing Files, Directories, and Text
- Handling Files and Directories
- Linking Files and Directories
- Reading Files
- Finding Information
- Module 4
- Searching and Analyzing Text
- Processing Text Files
- Redirecting Input and Output
- Editing Text Files
Part Two: System Configuration
- Module 5
- Explaining the Boot Process
- The Linux Boot Process
- The Firmware Startup
- Linux Bootloaders
- System Recovery
- Module 6
- Maintaining System Startup and Services
- Looking at init
- Managing systemd Systems
- Managing SysV init Systems
- Digging Deeper into systemd
- Module 7
- Configuring Network Connections
- Configuring Network Features
- Basic Network Troubleshooting
- Advanced Network Troubleshooting
- Module 8
- Comparing GUIs
- Focusing on the GUI
- Serving Up the GUI
- Using Remote Desktops
- Forwarding
- Module 9
- Adjusting Localization Options
- Understanding Localization
- Setting Your Locale
- Looking at Time
Part Three: System Management
- Module 10
- Administering Users and Groups
- Managing User Accounts
- Managing Groups
- Setting Up the Environment
- Querying Users
- Managing Disk Space Usage
- Module 11
- Handling Storage
- Storage Basics
- Partitioning Tools
- Understanding Filesystems
- Formatting Filesystems
- Mounting Filesystems 329 Managing Filesystems 331 Storage Alternatives
- Module 12
- Protecting Files
- Understanding Backup Types
- Looking at Compression Methods
- Comparing Archive and Restore Utilities
- Securing Offsite/Off-System Backups
- Checking Backup Integrity
- Module 13
- Governing Software
- Working with Source Code
- Packaging Applications
- Module 14
- Tending Kernel Modules
- Exploring Kernel Modules
- Installing Kernel Modules
- Removing Kernel Modules
Part Four: System Security
- Module 15
- Applying Ownership and Permissions
- Looking at File and Directory Permissions
- Access Control Lists
- Context-Based Permissions
- Understanding Linux User Types
- Restricting Users
- Module 16
- Looking at Access and Authentication Methods
- Getting to Know PAM
- Exploring PKI Concepts
- Using SSH
- Using VPN as a Client
- Module 17
- Implementing Logging Services
- Understanding the Importance of Logging
- Basic Logging Using rsyslog
- Journaling with systemd-journald
- Module 18
- Overseeing Linux Firewalls
- Providing Access Control
- Looking at Firewall Technologies
- Forwarding IP Packets
- Dynamically Setting Rules
- Module 19
- Embracing Best Security Practices
- User Security
- System Security
- Network Security
Part Five: Troubleshooting Your System
- Module 20
- Analyzing System Properties and Remediation
- Troubleshooting the Network
- Troubleshooting Storage Issues
- Troubleshooting the CPU
- Troubleshooting Memory
- Surviving a Lost root Password
- Module 21
- Optimizing Performance
- Looking at Processes
- Monitoring Processes in Real Time
- Managing Processes
- Module 22
- Investigating User Issues
- Troubleshooting Access
- Examining File Obstacles
- Exploring Environment and Shell Issues
- Module 23
- Dealing with Linux Devices
- Communicating with Linux Devices
- Working with Devices
- Using Hot Pluggable Devices
- Module 24
- Troubleshooting Application and Hardware Issues
- Dealing with Storage Problems
- Uncovering Application Permission Issues
- Analyzing Application Dependencies
- Looking at SELinux Context Violations
- Exploring Firewall Blockages
- Troubleshooting Additional Hardware Issues
Part Six: Automating Your System
- Module 25
- Deploying Bash Scripts
- The Basics of Shell Scripting
- Advanced Shell Scripting
- Writing Script Programs
- Module 26
- Automating Jobs
- Running Scripts in Background Mode
- Running Scripts Without a Console
- Sending Signals
- Job Control
- Running Like Clockwork
- Module 27
- Controlling Versions with Git
- Understanding Version Control
- Setting Up Your Git Environment
- Committing with Git
- Merging Versions
Part Seven: Realizing Virtual and Cloud Environments
- Module 28
- Understanding Cloud and Virtualization Concepts
- Considering Cloud Services
- Understanding Virtualization
- Exploring Containers
- Module 29
- Inspecting Cloud and Virtualization Services
- Focusing on VM Tools
- Understanding Bootstrapping
- Exploring Storage Issues
- Considering Network Configurations
- Module 30
- Orchestrating the Environment
- Understanding Orchestration Concepts
- Provisioning the Data Center
- Looking at Container Orchestration Engines