This comprehensive course is designed to equip learners with a profound understanding of Linux system administration. The course kicks off with foundational concepts such as the Linux Kernel| device management| and the intricacies of systemd| setting the stage for deeper exploration into system boot processes| including GRUB2 and systemd boot. Each section progresses through detailed topics| including hardware discovery| kernel module configuration| and systemd service management| ensuring participants build a robust foundation in managing and configuring the core aspects of a Linux system. The course also addresses the dynamic nature of networking and system maintenance| with chapters dedicated to basic and advanced networking concepts| log file administration| and the pivotal aspects of monitoring and troubleshooting.
Supported Distributions: Red Hat Enterprise Linux 9
Learning Objectives
Course Details
Module 1: Linux Kernel & Devices
Hardware Discovery Tools| Configuring New Hardware with hwinfo
Kernel Hardware Info – /sys/
/sys/ Structure| udev| Managing Linux Device Files| List Block Devices
SCSI Devices| USB Devices| USB Architecture| Kernel Modules
Configuring Kernel Components and Modules
Handling Module Dependencies| Configuring the Kernel via /proc/
Console| Virtual Terminals| Keyboard & locale configuration
Serial Ports| Random Numbers and /dev/random
LAB TASKS| Adjusting Kernel Options
Linux Kernel Driver Compilation
Introduction to Troubleshooting Labs
Troubleshooting Practice: Kernel Modules
Module 2: Systemd Overview
System Boot Method Overview
systemd System and Service Manager
systemd Targets
Using systemd
Linux Runlevels Aliases
Legacy Support for SysV init
LAB TASKS
Managing Services With Systemd's systemctl
Creating a systemd unit file
Module 3: Brub2/Systemd Boot Process
Booting Linux on PCs
GRUB 2| Grub 2Configuration & GRUB 2 Security
Boot Parameters| Initial RAM Filesystem| init
Systemd local-fs.target and sysinit.target
Systemd basic.target and multi-user.target
Legacy local bootup script support
System Configuration Files| RHEL7 Configuration Utilities
SLES12 Configuration Utilities| Shutdown and Reboot
LAB TASKS| Boot Process| Booting directly to a bash shell|
GRUB Command Line| Basic GRUB Security
Troubleshooting Practice: Boot Process
Module 4: Software Maintenance
Managing Software| RPM Features
RPM Architecture & RPM Packaging Files
Querying and Verifying with RPM
Updating the Kernel RPM
Dealing With RPM & Yum Digest Changes
Yum Plugins & RHN Subscription Manager
YUM Repository & YUM Repository Groups
Compiling/Installing from Source
Manually Installed Shared Libraries
Rebuilding Source RPM Packages
LAB TASKS| Managing Software with RPM| Creating a Custom RPM Repository
Querying the RPM Database| Installing Software via RPM & Source and Rebuilding SRPMs| Troubleshooting Practice: Package Management
Module 5: Local Storage Administration
Partitioning Disks with fdisk & gdisk
Resizing a GPT Partition with gdisk
Partitioning Disks with parted| Non-Interactive Disk Partitioning with sfdisk
Filesystem Creation| Persistent Block Devices
Mounting| Resizing| and Maintenance of Filesystems
Managing an XFS Filesystem| Swap| Filesystem Structures
Determining Disk Usage With df and du
Configuring Disk Quotas| Setting| Viewing| & Monitoring Quotas
Filesystem Attributes
LAB TASKS| Creating and Managing Filesystems|
Hot Adding Swap| Setting User Quotas
Module 6: LVM & RAID
Logical Volume Management| Creating| Implementing| & Activating LVM & VGs
Exporting & Importing a VG| Examining & Changing LVM Components
Advanced LVM: Components & Object Tags
Advanced LVM: Components| Object Tags| & Automated Storage Tiering
Advanced LVM: Thin Provisioning| Striping| & Mirroring
SLES Graphical Disk Tool| RAID Concepts
Array Creation with mdadm
Software RAID Monitoring| Control| and Display
LAB TASKS| Creating and Managing LVM Volumes
Creating LVM Thin Volumes| Troubleshooting Practice: LVM
Creating and Managing a RAID-5 Array
Module 7: Remote Storage Administration
Remote Filesystem Protocols| Remote Block Device Protocols
File Sharing via NFS| NFSv4+ & Clients
NFS Server Configuration & YaST Administration
AutoFS Configuration| Accessing Windows/Samba Shares from Linux
SAN Multipathing & Configuration Best Practices
iSCSI Architecture| Open-iSCSI Initiator Implementation
iSCSI Initiator Discovery & Node Administration
Mounting iSCSI Targets at Boot
iSCSI Multipathing Considerations
LAB TASKS| Using autofs| NFS Server Configuration
iSCSI Initiator Configuration| Multipathing with iSCSI
Module 8: User/Group Administration
Approaches to Storing User Accounts
User and Group Concepts| User Administration
Modifying Accounts| Group Administration
Password Aging| Default User Files
Controlling Login Sessions
RHEL DS Client Configuration
SLES DS Client Configuration
System Security Services Daemon (SSSD)
LAB TASKS| User and Group Administration
Using LDAP for Centralized User Accounts
Troubleshooting Practice: Account Management
Module 9: Pluggable Authentication Modules )PAM)
PAM Overview
PAM Module Types
PAM Order of Processing
PAM Control Statements
PAM Modules
pam_unix
pam_nologin.so| pam_limits.so
pam_wheel.so| pam_xauth.so
LAB TASKS| Restricting superuser access to wheel group membership
Using pam_nologin to Restrict Logins
Setting Limits with the pam_limits Modules
Using pam_limits to Restrict Simultaneous Logins
Module 10: Security Administration
Security Concepts & Advisory with SuSE Security Checker
Fine Grained Authorizations with Polkit
File Access Control Lists
Manipulating| Viewing| & Backing Up FACLs
File Creation Permissions with umask
User Private Group Scheme & Alternatives
AppArmor| SELinux Security Framework| Modes| Commands| and Booleans
Permissive Domains| SELinux Policy Tools
SUSE Basic Firewall Configuration| FirewallD
LAB TASKS| User Private Groups| Using Filesystem ACLs
Exploring AppArmor| Exploring SELinux Modes|
SELinux File Contexts| SELinux Contexts in Action
Module 11: Basic Networking
IPv4 & TCP/UDP Fundamentals| Linux Network Interfaces - Starting & Stopping
Ethernet Hardware Tools| Network Configuration with ip Command
Network Manager| DNS & DHCP Clients
SUSE YaST Network Configuration Tool
Information from ss and netstat| Hardware and System Clock
Managing Network-Wide Time
Continual Time Sync with NTP
Configuring NTP Clients & Useful Commands
LAB TASKS| Network Discovery
Basic Client Networking| NTP Client Configuration
Module 12: Advanced Networking
Multiple IP Addresses
Configuring a DHCP server
IPv6| Interface Aggregation
Interface Bonding| Network Teaming
Interface Bridging
802.1q VLANS
Tuning Kernel Network Settings
LAB TASKS| Multiple IP Addresses Per Network Interface
Configuring IPv6
Troubleshooting Practice: Networking
Module 13: Log File Administration
System Logging
systemd Journal
systemd Journal's journalctl
Secure Logging with Journal's Log Sealing
gnome-system-log
Rsyslog
/etc/rsyslog.conf
Log Management
Log Anomaly Detector
Sending logs from the shell
LAB TASKS| Using the systemd Journal| Setting up a Full Debug Logfile
Remote Syslog Configuration| Remote Rsyslog TLS Configuration
Module 14: Monitoring & Troubleshooting
System Status Memory| I/O| CPU
Performance Trending with sar
Determining Service to Process Mapping
Realtime Monitoring of Resources Cgroups
Troubleshooting Basics: The Process & Tools
strace and ltrace| Common Problems
Troubleshooting Incorrect File Permissions
Inability to Boot| Typos in Configuration Files
Corrupt Filesystems
RHEL7 & SUSE Rescue Environment
LAB TASKS| System Activity Reporter
Cgroup for Processes|Recovering Damaged MBR
PRE-INSTALLATION CONSIDERATIONS
Pre-Installation Considerations
Hardware Compatibility
Multi-OS Booting
Partition Considerations
Filesystem Planning
Selecting a Filesystem
INSTALLING RHEL7
Anaconda: An Overview
Anaconda: Booting the System
Anaconda: Common Boot Options
Anaconda: Loading Anaconda and Packages
Anaconda: Storage Options
Anaconda: Troubleshooting
FirstBoot| Kickstart|
Network Booting with PXE
A Typical Install
LAB TASKS| Linux Installation
Automating Installation with Kickstart
INSTALLING SLES12
YaST Install Program Interface| Network Installation
SLP for SUSE Linux Installation
Installation Choices
Kernel Crash Dump Configuration
Network Booting with PXE| Creating AutoYaST2 Files
Using AutoYaST2 files| linuxrc Automation
Installation Diagnostics
After The First Reboot
A Typical Install
LAB TASKS| SUSE Linux Enterprise Server Installation
Automating Installation with AutoYaST
MANAGE VIRTUAL MACHINES
Virtualization: What and Why?
Introducing libvirt| libvirt: Basic Concepts
libvirt: Storage Architecture| libvirt: Network Architecture
libvirt: Graphical Tools| libvirt: Command Line Tools
virsh: Basics| virsh: Common Tasks
virt-install| Virtual Machine Guest Tools & Drivers
libguestfs and guestfish
LAB TASKS| Installing a Virtual Machine
BACKUPS
Backup Software
Managing Optical Media
Tape Libraries
Backup Examples
LAB TASKS| Using rsync and ssh for Backups|
Using tar for Backups
Using cpio for Backups
Creating ISO Images for Backups
Using dump and restore for Backups
Framework Connections
The materials within this course focus on the NICE Framework Task, Knowledge, and Skill statements identified within the indicated NICE Framework component(s):