
Create a Red Hat account, download RHEL 9.4 from the Red Hat site, install Oracle VirtualBox, and create a RHEL 9.4 virtual machine accessible from Windows.
Install Red Hat Enterprise Linux 9.4 by selecting the install option, configuring language and keyboard, setting root and user accounts, choosing server with GUI, and beginning installation.
Complete the installation, reboot, and log in with the user created during setup. In Oracle VirtualBox, change the boot order to boot from the hard disk instead of the ISO.
Install and set up MobaXterm to access a Red Hat VM from a Windows host using SSH; enter the system IP, username, and password to establish remote access.
Configure a user with sudoers access to perform administrative tasks via sudo, and set up a local system to install packages from the ISO image.
Improve command line productivity by writing simple bash scripts, creating and executing shell scripts, and using loops, conditionals, and regular expressions.
Use for and while loops to iterate commands across multiple servers or a file of server names, and learn bash loop syntax to automate server tasks.
Practice lab on bash test logic using a variable abc with empty and nonempty values, exploring -z and -n checks and exit status outcomes (zero for true, nonzero for false).
Master if and else conditional logic in shell scripting by evaluating simple comparisons and checking file existence with resolv.conf, printing presence or absence messages.
Explore the if elif else syntax to handle multiple conditions, using a num variable to classify a number as positive, negative, or zero and print the corresponding message.
Learn to schedule deferred user tasks with the at command on Red Hat Enterprise Linux, using atd, ATI, and ATK to run scripts later.
Inspect and manage deferred user jobs on a Red Hat system using at and atq to view pending jobs, their unique job numbers, execution dates, queues, and owners.
Explore recurring user jobs with cron syntax: every five minutes from 9 to 16 on Fridays in July, sending hello world by email to the job owner.
Learn to schedule a script with crontab, use two greater-than signs to append output and errors to separate files, and verify results via manual runs.
Explore how Anacron schedules daily, weekly, and monthly tasks via its configuration file, ensuring execution after system downtime, and compare it with cron through crontab, cron.daily, and cron.d directories.
Toggle SELinux modes temporarily using the set and force command, or by echoing 0 or 1 into the pseudo file, where 0 is permissive and 1 is enforcing.
Learn to tune the SELinux policy with booleans by listing, viewing, and toggling specific rules, and applying temporary or permanent changes to /sys/fs/selinux/booleans.
Examine how the MBR scheme limits to four primary partitions and how to overcome with an extended partition containing logical partitions, noting reserved boot sectors.
The GPT partition scheme supersedes MBR, supports up to 128 partitions with 64-bit addressing under UEFI, and you can identify it via fdisk l by the disk label type.
Practice lab demonstrates managing partitions with the parted command, identifying /dev/sda as a 40 GB boot disk, and viewing its MBR partition table with print in sectors, bytes, or MB.
Explore how swap space on disk supplements RAM under memory pressure, managed by the Linux kernel's memory management subsystem, forming virtual memory.
Learn how logical volume management creates a volume group from multiple disks to form logical volumes, enabling online resizing and flexible storage beyond traditional fdisk partitions.
Explore the architectural overview of LVM and learn how physical volumes form a volume group to pool disk space for creating and extending logical volumes.
Explore Alvium architecture from raw disks to a mounted file system, detailing fdisk partitioning, physical volumes, volume groups, logical volumes, and creating ext4 or xfs file systems.
Learn to build LVM storage by creating partitions on disks, forming physical volumes, creating a volume group and logical volume, then format and mount the storage.
Create a logical volume from a volume group with lv create, naming and sizing it within the VG, while PVs, physical extents, and p size map to the LV.
Learn to create a file system on a logical volume, format with mkfs for ext4 or zfs, create a mount point, and persistently mount via fstab on Red Hat Linux.
Learn to display LVM component status using pv display, vg display, and lv display, and interpret outputs for physical volumes, volume groups, and logical volumes, including their paths.
Extend a volume group by adding a new physical volume to vg zero one, using /dev/sdf1 and pvcreate, then vg extend to increase from about 5 GB to 5.94 GB.
Extend a logical volume with lvextend -L +size (for example +500 MB) to grow capacity without downtime, then extend the file system: zfs_grow_fs for zfs or resize_to_fs for ext4.
Remove a logical volume by unmounting its file system, clearing the fstab entry, and running lv remove. Proceed to remove the volume group, pv remove, and other LVM components.
Remove a volume group by unmounting and deleting its logical volume, then removing the volume group and the physical volume.
Create a Stratis pool from three disks, monitor with pool list, add disks to the pool, and verify block devices to manage pool size and storage.
Create a Stratis file system snapshot for FS1 in pool one using the status file system snapshot command. Observe that snapshots are independent and allocate space, starting with 560 MB.
Unmount the Stratus and Stratus-snap file systems, then destroy the Stratus pool and its main and snapshot file systems, confirming deletion.
Explore network attached storage with NFS in Linux, including how NFS shares files via an NFS server and client, auto mounts, and compare it with Samba for Windows sharing.
Query a server's exported NFS directories using showmount -e for NFS v3, then mount the export tree for NFS v4 and list the mounted paths to reveal all exports.
Edit the main exports file to specify the file system and client network, set read/write and no_root_squash options, then run exportfs -r -v and verify with showmount -e localhost.
Explain indirect wildcard maps in automounts by auto mounting NFS subdirectories (east, west, central) with a single indirect map to /promo/west, /east, and /central.
Export the created file system at /database/docs with read/write and no_root_squash options, verify exports with showmount, then log in to the client and configure the indirect mapping for this lab.
Log in to the NFS client, verify exports with showmount -e, create a master map under auto.master.d, and configure indirect maps with a wildcard under /promo, then restart autofs.
This training module is not authorized or affiliated with Red Hat, Inc. It is an independent educational resource designed to help learners prepare for the Red Hat Certified System Administrator (RHCSA) exam.
This course is part of the Red Hat Certified System Administrator (RHCSA) learning path and corresponds to RH134 – Red Hat System Administration II.
The Red Hat System Administration II (RH134) course focuses on essential tasks required to become a full-time Linux administrator and to validate those skills through the Red Hat Certified System Administrator exam.
This course goes deeper into Enterprise Linux administration, including file systems, partitioning, logical volumes, SELinux, firewalls, and troubleshooting.
Part 1: Newly added lectures based on Red Hat Enterprise Linux 9 (RH134)
Part 2: Original lectures based on Red Hat Enterprise Linux 8 (RH134)
Part 1: Course Content
Red Hat Training and Certification - RHEL 9 (RH134)
Section 1: Introduction to Red Hat Training and Certification – RHEL 9 (RH134)
Introduction about the course module
Section 2: Lab Setup for Practice - RHCSA
Standard Installation of RHEL 9
Create a Red Hat Network (RHN) account - Red Hat Login ID
Download the Latest Version of RHEL 9.4
Download and Install Oracle VirtualBox
Overview of Oracle VirtualBox
Create a template of RHEL9 VM
Create a template for a RHEL 9 virtual machine
Adjust Settings using the RHEL9 Template
Install Red Hat Enterprise Linux 9.4
Continue - Installation of RHEL 9
Access RHEL 9 from a Windows machine
Install and set up MobaXterm software
Allow a user to execute any commands using visudo.
sudo access
Set up a local Yum server
Section 2: Improve command-line productivity
Write simple bash scripts
Execute a bash shell script
Quote special characters
Lab- variable & special characters
echo command
Lab- echo command
Lab- redirection operator ">"
Lab- redirection stderr, append "2>", ">>"
Loops to iterate commands
Exit codes in bash script
Lab- exit code number
Lab- exit code in bash script
Test logic
Conditional structure-if, else, elif..
Lab- if, else
Lab- if, elif
Grep command
Regular expressions
Lab- Match the start and end of a line using "^" & "$"
Section 3:Schedule future tasks
Schedule deferred user tasks
Inspect and manage deferred user jobs
Lab1- at command
Lab2- at command
Recurring user jobs
Examples- Recurring user jobs
Lab- crontab(Recurring user jobs)
Lab 1- Schedule a script via crontab
Lab 2- Schedule a script via crontab
Recurring system jobs
Run periodic commands with Anacron
System timer
Lab- system timer
Managing temporary files
Cleaning temporary files with a systemd timer
Lab 1- Managing temp files
Lab 2- Managing temp files
Section 4: Tune system performance
Adjust tuning profiles
Managing Profiles from the command line
Manage profile with the command line
Linux process scheduling
Section 5: Managing SElinux security
SELinux security concepts
SELinux protection (DAC vs MAC)
SELinux context
Lab- SELinux context
Practical approach to understand SELinux security
SELinux modes
Toggling the SELinux modes temporarily
Toggling the SELinux modes permanently
Lab- SELinux security
Industrial project on SELinux security-1
Industrial project on SELinux security-2
Industrial project on SELinux security-3
Industrial project on SELinux security-4
Lab- change the SELinux context
Define SELinux default file context policies
Lab- SELinux default file context policies
SELinux Booleans
Lab 1- SELinux Booleans
Lab 2- SELinux Booleans
Section 6: Manage basic storage
Overview of partition disk
MBR partition scheme
MBR- Master Boot Record
Limitation of MBR partition scheme
GPT partition scheme
Manage partitions
Lab- create partition using parted command
Lab- create partition using single command
Lab- create file systems
Lab- persistently mount file system
lsblk command to scan the block devices
Swap space concepts
Create a swap partition
Activate swap space
Activate swap space persistently
Set swap space priority
Section 7: Manage storage stack-LVM
Overview of LVM- Logical volume manager
Features of LVM
Architectural overview of LVM
Architectural overview via diagram
Lab- create PV(Physical Volume)
Lab- create VG(Volume Group)
Lab- create LV(Logical Volume)
Lab- create a FS and LV
Lab- Display information about PV,VG, and LV
Extend a volume Group size
Lab- Extend a volume Group size
Extend a logical volume size
Lab- Extend an XFS file system
Lab- Extend an EXT4 file system
Extend swap space logical volumes
Reduce volume group storage
Remove a logical volume
Remove the volume group
Section 8: Manage layered storage
Overview of stratis storage management
Install and enable stratis
Create stratis pools
Manage stratis file system
Create a stratis file system snapshot
Persistently mount stratis file systems
Industrial Project- Lab 1
Industrial Project- Lab 2
Industrial Project- Lab 3
Industrial Project- Lab 4
Industrial Project- Lab 5
Industrial Project- Lab 6
Section 9: Access network-attached storage
Overview of NFS in Linux
Accessing exported NFS directories
Query a server's exported NFS directories
Create local yum server to install NFS package
Lab- Install NFS package
Lab- Create a NFS file system
Lab- Export the file system
Lab- Configure NFS client
Lab- Mount the exported FS on client
Lab- Unmount the exported FS
Mount NFS exports with the Automounter
Lab 1- Setup automount using Indirect Map
Lab 2- Setup automount using Indirect Map
Lab 3- Check the Autofs working
Lab 4- Automatically unmount the file system if it is not being accessed.
Lab 1- Industrial project on Indirect Wildcard Maps
Lab 2- Industrial project on Indirect Wildcard Maps
Lab 3- Industrial project on Indirect Wildcard Maps
Lab 4- Industrial project on Indirect Wildcard Maps
Lab 5- Industrial project on Indirect Wildcard Maps
Section 10: Control the boot process
Booting process of RHEL 9 system
Reboot and Shutdown
System Target
Select a target at runtime
Set a default target
Select a target at boot time
Reset the root passwd using Rd.Break
Reset the root password using RHEL9 ISO
Repairing System boot Issues- Rescue mode
Boot RHEL 9 into Emergency mode
Enabling the early debug Shell
Repair file system issues at boot
Repair file system- Misconfiguration in the /etc/fstab
Repair file system- Root FS corruption
Section 11: Run Containers
Introducing container technology
Container images and registries
Authenticate to registry- Podman login
Conf file of container registries
Container files to Build container Images
The Podman Utility
Install Container Utilities
Search a container Image
Examine container image- skopeo inspect
Create a container image using containerfile
Inspect the container image
Run containers
Create and start container
Run a container from a remote repository
Run a ubuntu container
Run an Apache webserver container on port 8080
Environment isolation in containers
Podman exec- executes a command inside a running container
Remove containers and images
Manage container resources
Environment variable for containers
Run a MariaDB container while passing environment variables
Ephemeral nature of container storage
Container Persistent storage
Attach the persistent storage to a container
Assign a port mapping to containers
Map the container host port on the container (MariaDB)
Part 2: Course Content
Red Hat Training and Certification - RHEL 8 (RH134)
Introduction
Overview about the Course Module
Scheduling Future Tasks
Overview of Scheduling Tasks
Scheduling a Deferred User Job
Controlling Nice Values with Queue Designations
Scheduling Recurring User Jobs
Scheduling a job for a specific time - 1
Scheduling a job for a specific time - 2
Practice Lab Session - Scheduling a Recurring User Jobs
Scheduling Recurring System Jobs
Practice Lab Session - System Jobs
Scheduling tasks with Systemd Timer
Practice Lab Session - Systemd Timer
Managing Temporary Files
Cleaning Temporary Files with a Systemd Timer
Lab - Configure systemd-tmpfiles to remove unused temporary files from /tmp
Lab - Configure systemd-tmpfiles to periodically purge files from another directory
Adjusting Tuning Profiles
Overview about tuning profiles
Managing profiles from the command line
Lab Session - Tune a server’s performance by activating the tuned service and apply a tuning profile to powersave.
Process Scheduling & Multitasking
Displaying Nice Levels from the Command Line
Changing the Nice Level of an Existing Process
Lab Session: Influencing Process Scheduling
Controlling Access to files with ACLs
Access Control List Concepts
Set ACLs on files
Default ACLs
Viewing and Interpreting ACL Permissions
Lab - set acl on files
Lab - set acl on directories
Lab - Mask to limit the set of permissions
Lab - default acl
Guided Exercise on ACL
Managing SELinux Security
SELinux Security Concepts
SELinux Context
SELinux Modes
Apache service without SELinux Protection (DAC)
Apache service with SELinux Protection (MAC)
Practical approach to understand SELinux
Lab - Change context temporary
Lab - Change context permanently
Lab - SELinux inheritance and its pitfalls
SELinux Booleans
Lab - SELinux Booleans
Audit logs & Troubleshooting SELinux
Adding Partitions, File Systems, and Persistent mounts
Partitioning a Disk
Benefits of disk partitioning
MBR Partitioning Scheme
Primary & Extended Partitions
GPT Partitioning Scheme
How to identify what partitioning standard is used
Managing Partitions with Parted
Creating a file system
Swap Space Concepts
Create a Swap Partitions
Setting the Swap Space Priority
Creating Logical Volumes
The LVM Logical Volume Manager
Features of LVM
LVM Architecture Overview
Architectural Overview via Diagram
LVM Components - PV, VG, LV
Lab 1 - Creation of PV, VG, LV
Lab 2 - Create File System, Mount Point
Lab 3 - Remove a Logical Volume
Lab 4 - Extending and Reducing a Volume Group
Lab 5 - Extending a LV and xfs & ext4 FS
Lab 6 - Extend a swap space
Advanced Storage Features
About Stratis
Lab - Installing & Configuring Stratis
Lab - Managing Stratis File Systems
Lab - Persistently Mounting Stratis File Systems
Lab - Stratis filesystem snapshot
Guided Exercise - Create a thin-provisioned file system
Guided Exercise - Verify file system grows dynamically
Guided Exercise - Create & access data from Snapshot
VDO - Virtual Data Optimizer
Lab - Installation VDO
Lab - Create & format a VDO Volume
Lab - Testing Deduplication:
Recap - Lab
Lab - Extend & Remove VDO Volume
Controlling the Boot Process
Booting Process of a RHEL 8 System
Selecting a systemd target, rebooting & shutting
Lab Exercise - Determine the default target and change the target into running system.
Lab - Selecting a rescue mode at boot time
Resetting a root password
Repairing Systemd Boot Issues
Booting RHEL 8 into Rescue Mode
Booting RHEL 8 into Emergency Mode
Enabling the Early Debug Shell
Repair a File System Issues at boot
Lab - Repair a File System
Managing Network Security
Firewall Concepts
Features and advantages of firewalld
Pre-defined Zones
Packet flow via firewalld
Add, remove services from firewall server - Lab Session
Add http service to allow access the website - Lab Session
Port Forwarding - allow access a website running on 12345 port
masquerading, network address translation
Lab Session - masquerading, port forwarding
rich rules
Lab Session - rich rules
Automating Installation with Kickstart
Overview Kickstart Server
Architectural Overview
Lab 1 - Configure dhcp server
Lab 2 - Configure tftp, pxe boot server
Lec 3 - Configure httpd, kick start configuration file
Lab 4 - Configure http repository, start services
Lab 5 - Boot the Client from Network
Network File System
Overview of NFS
nfsconf tool
Lab - Accessing Network-Attached Storage
Exercise - NFS Share
Mounting NFS Shares with Automounter
Automounter Benefits
Lab - Automounter using indirect map
Lab Session on Indirect Wildcard Maps
Lab Session on Direct maps
KVM Virtualization
Overview of Linux Virtualization
Hypervisor Concept - type 1 & type 2
Types of Virtualization
KVM, QEMU & Libvirt Architecture
virsh command to manager vm's
Lab Session
Introducing Containers
Introducing Container Technology
Planning for containers
Lab - configure a basic container
Lab - mapping container host ports to the container
Lab - stop, restart & remove container
Improving Command-line Productivity
Writing Simple Bash Scripts
Lab - Writing Simple Bash Scripts
Simple Commands in Linux
Variable, single and double quote, backslash
Redirection output
Redirection output - Lab
Last lecture