RHCSA Study Guide Summary: Topics and Commands from Both EPUBs¶
Based on analysis of both "RHCSA Red Hat Enterprise Linux - Asghar Ghori" and "Red Hat RHCSA 9 Cert Guide - Sander van Vugt" study guides.
📚 Enhanced Study Resource: This summary has been expanded into the comprehensive RHCSA Synthesis knowledge base, which provides detailed modules for each topic with hands-on labs, troubleshooting guides, and exam strategies. Start with the synthesis modules for the most comprehensive exam preparation.
Book Structure Overview¶
Asghar Ghori RHCSA Book Structure¶
22 Chapters with comprehensive exercises and labs
Chapters 1-4: Foundation Skills
- Chapter 1: Local Installation
- Chapter 2: Initial Interaction with the System
- Chapter 3: Working with Files and File Permissions
- Chapter 4: Basic File Permissions
Chapters 5-8: User and System Management - Chapter 5: Basic User Management - Chapter 6: Advanced User Management - Chapter 7: The Bash Shell - Chapter 8: Managing Services and Processes
Chapters 9-12: System Operations - Chapter 9: Package Management - Chapter 10: System Processes and Job Control - Chapter 11: Boot Process, GRUB2, and the Linux Kernel - Chapter 12: System Logging and Monitoring
Chapters 13-16: Storage and Networking - Chapter 13: Storage Management (LVM, VDO) - Chapter 14: File Systems and Swap - Chapter 15: Networking, Network Devices, and Network Connections - Chapter 16: Network File System
Chapters 17-22: Advanced Topics
- Chapter 17: AutoFS and Automounting
- Chapter 18: Storage Management
- Chapter 19: Firewall and System Security
- Chapter 20: SELinux
- Chapter 21: SSH and Time Services
- Chapter 22: Containers with Podman
Sander van Vugt RHCSA Book Structure¶
26 Chapters organized in 5 parts
Part I: Basic System Management Tasks (Chapters 1-8) - Chapter 1: Installing Red Hat Enterprise Linux Server - Chapter 2: Using Essential Tools - Chapter 3: Essential File Management Tools - Chapter 4: Working with Text Files - Chapter 5: Connecting to Red Hat Enterprise Linux Server - Chapter 6: User and Group Management - Chapter 7: Permissions Management - Chapter 8: Configuring Networking
Part II: Operating Running Systems (Chapters 9-13) - Chapter 9: Software Management - Chapter 10: Managing Processes - Chapter 11: Working with Systemd Services - Chapter 12: Scheduling Tasks - Chapter 13: Configuring Logging
Part III: Advanced System Administration Tasks (Chapters 14-20) - Chapter 14: Managing Storage - Chapter 15: Advanced Storage Management - Chapter 16: Basic Kernel Management - Chapter 17: Managing and Understanding the Boot Procedure - Chapter 18: Essential Troubleshooting Skills - Chapter 19: An Introduction to Bash Shell Scripting - Chapter 20: Managing Software
Part IV: Managing Network Services (Chapters 21-25) - Chapter 21: Configuring SSH - Chapter 22: Managing SELinux - Chapter 23: Configuring a Firewall - Chapter 24: Accessing Network Storage - Chapter 25: Configuring Time Services
Part V: RHCSA Practice Exams (Chapter 26) - Chapter 26: Managing Containers
Topic-by-Topic Breakdown with Lab Exercises¶
1. System Installation and Initial Setup¶
Asghar Ghori Labs:¶
- Exercise 1-1: Download and Install VirtualBox Software
- Exercise 1-2: Download and Install RHEL
- Exercise 1-3: Logging In from Windows
- Lab 1-1: Build RHEL9-VM2 (server2)
Sander van Vugt Labs:¶
- Focus on automated installation methods
- Kickstart configuration
- Initial system configuration
Key Commands:¶
# System information
hostnamectl
uname -a
cat /etc/redhat-release
lscpu
free -h
df -h
# Initial configuration
nmtui
timedatectl set-timezone
localectl set-locale
2. File Management and Text Processing¶
Asghar Ghori Labs:¶
- Exercise 3-1: Create Compressed Archives
- Exercise 3-2: Create and Manage Hard Links
- Exercise 3-3: Create and Manage Soft Links
- Lab 3-1: Archive, List, and Restore Files
- Lab 3-2: Practice the vim Editor
- Lab 3-3: File and Directory Operations
Sander van Vugt Labs:¶
- Working with tar archives
- Text file manipulation with sed, awk, grep
- File linking and copying strategies
Key Commands:¶
# File operations
ls -la
cp -r source destination
mv source destination
rm -rf directory
find / -name "filename" -type f
locate filename
# Archives and compression
tar -czf archive.tar.gz directory/
tar -xzf archive.tar.gz
gzip file
gunzip file.gz
# Links
ln source hard_link
ln -s target symbolic_link
# Text processing
grep pattern file
sed 's/old/new/g' file
awk '{print $1}' file
sort file
uniq file
wc -l file
# Text editors
vim filename
nano filename
3. File Permissions and Security¶
Asghar Ghori Labs:¶
- Exercise 4-1: Modify Permission Bits Using Symbolic Form
- Exercise 4-2: Modify Permission Bits Using Octal Form
- Exercise 4-3: Test the Effect of setuid Bit on Executable Files
- Exercise 4-4: Test the Effect of setgid Bit on Executable Files
- Exercise 4-5: Set up Shared Directory for Group Collaboration
- Exercise 4-6: Test the Effect of Sticky Bit
- Lab 4-1: Manipulate File Permissions
- Lab 4-2: Configure Group Collaboration and Prevent File Deletion
- Lab 4-3: Find Files
- Lab 4-4: Find Files Using Different Criteria
Sander van Vugt Labs:¶
- Advanced permission scenarios
- ACL implementation
- Special permissions in practice
Key Commands:¶
# Basic permissions
chmod 755 file
chmod u+x,g+r,o-w file
chown user:group file
chgrp group file
# Special permissions
chmod +s file # setuid/setgid
chmod +t directory # sticky bit
chmod 4755 file # setuid
chmod 2755 directory # setgid
chmod 1755 directory # sticky bit
# ACLs
setfacl -m u:username:rwx file
getfacl file
setfacl -x u:username file
# Finding files
find / -perm -4000 # setuid files
find / -perm -2000 # setgid files
find / -user username
find / -group groupname
4. User and Group Management¶
Asghar Ghori Labs:¶
- Exercise 5-1: Create a User Account with Default Attributes
- Exercise 5-2: Create a User Account with Custom Values
- Exercise 5-3: Modify and Delete a User Account
- Exercise 5-4: Create a User Account with No-Login Access
- Lab 5-1: Check User Login Attempts
- Lab 5-2: Verify User and Group Identity
- Exercise 6-3: Lock and Unlock a User Account with usermod and passwd
Sander van Vugt Labs:¶
- User account policies
- Group membership management
- Password aging configuration
Key Commands:¶
# User management
useradd -u UID -g GROUP -G GROUPS -s SHELL -d HOME username
usermod -aG group username
usermod -L username # lock account
usermod -U username # unlock account
userdel -r username
# Password management
passwd username
chage -M 90 -m 7 -W 7 username
chage -l username
# Group management
groupadd -g GID groupname
groupmod -n newname oldname
groupdel groupname
gpasswd -a username groupname
# User information
id username
groups username
who
w
last
lastb
5. Process and Service Management¶
Asghar Ghori Labs:¶
- Systemctl command exercises
- Service configuration labs
- Process monitoring and control
Sander van Vugt Labs:¶
- Systemd service creation
- Timer configuration
- Process priority management
Key Commands:¶
# Process management
ps aux
ps -ef
top
htop
pgrep process_name
pkill process_name
kill PID
killall process_name
jobs
bg
fg
nohup command &
# Process priority
nice -n 10 command
renice 5 PID
# System services
systemctl start service
systemctl stop service
systemctl restart service
systemctl reload service
systemctl enable service
systemctl disable service
systemctl status service
systemctl list-units --type=service
systemctl daemon-reload
# Systemd targets
systemctl set-default multi-user.target
systemctl get-default
systemctl isolate rescue.target
6. Package Management¶
Asghar Ghori Labs:¶
- DNF package management exercises
- Repository configuration
- RPM command usage
Sander van Vugt Labs:¶
- Advanced package queries
- Group package management
- Creating custom repositories
Key Commands:¶
# DNF package management
dnf install package
dnf update package
dnf remove package
dnf search keyword
dnf info package
dnf list installed
dnf list available
dnf group list
dnf group install "group name"
dnf history
dnf clean all
# Repository management
dnf config-manager --add-repo URL
dnf repolist
dnf config-manager --enable repo
dnf config-manager --disable repo
# RPM commands
rpm -qa # list all packages
rpm -qi package # package info
rpm -ql package # list files in package
rpm -qf /path/file # which package owns file
rpm -ivh package.rpm # install package
rpm -Uvh package.rpm # upgrade package
7. Storage Management and LVM¶
Asghar Ghori Labs:¶
- LVM creation and management exercises
- File system creation and mounting
- Swap configuration labs
Sander van Vugt Labs:¶
- Advanced LVM scenarios
- Storage troubleshooting
- VDO configuration
Key Commands:¶
# Disk and partition management
lsblk
fdisk -l
fdisk /dev/device
parted /dev/device
partprobe
# LVM management
pvcreate /dev/device
pvdisplay
pvs
vgcreate vg_name /dev/device
vgdisplay
vgs
vgextend vg_name /dev/device
lvcreate -L size -n lv_name vg_name
lvdisplay
lvs
lvextend -L +size /dev/vg/lv
lvreduce -L -size /dev/vg/lv
# File systems
mkfs.xfs /dev/device
mkfs.ext4 /dev/device
mount /dev/device /mountpoint
umount /mountpoint
mount -a
df -h
du -sh directory
# File system resizing
xfs_growfs /mountpoint # for XFS
resize2fs /dev/device # for ext4
# Swap management
mkswap /dev/device
swapon /dev/device
swapoff /dev/device
swapon --show
8. Network Configuration¶
Asghar Ghori Labs:¶
- NetworkManager configuration with nmcli
- Static IP configuration
- Network troubleshooting exercises
Sander van Vugt Labs:¶
- Advanced networking scenarios
- Network bonding and teaming
- IPv6 configuration
Key Commands:¶
# Network information
ip addr show
ip route show
ip link show
nmcli device status
nmcli connection show
# Network configuration
nmcli con add type ethernet con-name NAME ifname DEVICE
nmcli con modify NAME ipv4.addresses IP/MASK
nmcli con modify NAME ipv4.gateway GATEWAY
nmcli con modify NAME ipv4.dns DNS1,DNS2
nmcli con modify NAME ipv4.method manual
nmcli con up NAME
nmcli con down NAME
# Network testing
ping host
traceroute host
nslookup hostname
dig hostname
ss -tuln
netstat -tuln
9. Firewall Configuration¶
Asghar Ghori Labs:¶
- firewall-cmd basic configuration
- Service and port management
- Rich rules implementation
Sander van Vugt Labs:¶
- Advanced firewall scenarios
- Custom service definitions
- Firewall troubleshooting
Key Commands:¶
# Firewall management
firewall-cmd --state
firewall-cmd --get-active-zones
firewall-cmd --list-all
firewall-cmd --add-service=SERVICE --permanent
firewall-cmd --remove-service=SERVICE --permanent
firewall-cmd --add-port=PORT/PROTOCOL --permanent
firewall-cmd --remove-port=PORT/PROTOCOL --permanent
firewall-cmd --reload
# Rich rules
firewall-cmd --add-rich-rule='rule family="ipv4" source address="IP" accept' --permanent
# Zone management
firewall-cmd --set-default-zone=ZONE
firewall-cmd --change-interface=INTERFACE --zone=ZONE --permanent
10. SELinux Management¶
Asghar Ghori Labs:¶
- SELinux mode configuration
- Context management exercises
- Boolean configuration
- Port labeling labs
Sander van Vugt Labs:¶
- Advanced SELinux troubleshooting
- Custom policy modules
- File context analysis
Key Commands:¶
# SELinux status and modes
getenforce
setenforce 0|1
sestatus
# File contexts
ls -Z file
restorecon -Rv /path
semanage fcontext -a -t TYPE "/path(/.*)?"
semanage fcontext -l | grep path
# Process contexts
ps -eZ
ps auxZ
# SELinux booleans
getsebool -a
getsebool boolean_name
setsebool -P boolean_name on|off
# Port contexts
semanage port -l
semanage port -a -t TYPE -p PROTOCOL PORT
# Troubleshooting
ausearch -m AVC -ts recent
sealert -a /var/log/audit/audit.log
11. Boot Process and GRUB¶
Asghar Ghori Labs:¶
- GRUB configuration modification
- Kernel parameter management
- Boot troubleshooting scenarios
Sander van Vugt Labs:¶
- Advanced boot procedures
- Systemd target management
- Recovery scenarios
Key Commands:¶
# GRUB management
grub2-editenv list
grub2-mkconfig -o /boot/grub2/grub.cfg
grub2-set-default "menu entry"
# Boot targets
systemctl get-default
systemctl set-default multi-user.target
systemctl list-units --type=target
# Kernel management
uname -r
rpm -qa kernel
dnf list installed kernel
12. Logging and Monitoring¶
Asghar Ghori Labs:¶
- Journald configuration
- Rsyslog setup
- Log rotation configuration
Sander van Vugt Labs:¶
- Advanced logging scenarios
- Remote logging setup
- Log analysis techniques
Key Commands:¶
# Journal management
journalctl
journalctl -u service
journalctl -f
journalctl --since "1 hour ago"
journalctl -p err
journalctl --list-boots
# Traditional logging
tail -f /var/log/messages
tail -f /var/log/secure
logger "test message"
# Log rotation
logrotate -d /etc/logrotate.conf
13. Scheduled Tasks¶
Asghar Ghori Labs:¶
- Crontab configuration
- At job scheduling
- Systemd timer creation
Sander van Vugt Labs:¶
- Advanced scheduling scenarios
- Timer unit configuration
- Anacron usage
Key Commands:¶
# Cron management
crontab -e
crontab -l
crontab -r
crontab -u username -e
# At scheduling
at now + 5 minutes
at 15:30
atq
atrm job_number
# Systemd timers
systemctl list-timers
systemctl enable timer.timer
systemctl start timer.timer
14. Container Management¶
Asghar Ghori Labs:¶
- Podman basic operations
- Container networking
- Container storage management
Sander van Vugt Labs:¶
- Advanced container scenarios
- Systemd integration
- Container image management
Key Commands:¶
# Container management
podman pull image
podman run -d --name NAME -p HOST:CONTAINER image
podman ps
podman ps -a
podman stop container
podman start container
podman rm container
podman rmi image
# Container systemd integration
podman generate systemd --new --files --name container
loginctl enable-linger username
# Container images
podman images
podman search term
podman inspect image
podman logs container
15. Network Services¶
Asghar Ghori Labs:¶
- NFS server and client configuration
- AutoFS implementation
- SSH configuration
Sander van Vugt Labs:¶
- Advanced NFS scenarios
- Time synchronization
- SSH key management
Key Commands:¶
# NFS management
systemctl enable --now nfs-server
exportfs -arv
exportfs -s
showmount -e server
# AutoFS
systemctl enable --now autofs
mount | grep autofs
# SSH configuration
ssh-keygen -t rsa
ssh-copy-id user@server
scp file user@server:/path
Command Summary by Category¶
User Management Commands¶
useradd, usermod, userdel, passwd, chage, chsh, chfn
groupadd, groupmod, groupdel, gpasswd
id, groups, who, w, last, lastb
File Management Commands¶
ls, cp, mv, rm, mkdir, rmdir, touch, find, locate
chmod, chown, chgrp, umask
setfacl, getfacl
tar, gzip, gunzip, zip, unzip
Process Management Commands¶
ps, top, htop, pgrep, pkill, kill, killall
jobs, bg, fg, nohup
nice, renice
System Service Commands¶
systemctl, journalctl
service, chkconfig (legacy)
Network Commands¶
nmcli, nmtui
ip, ifconfig (legacy)
ping, traceroute, nslookup, dig
ss, netstat (legacy)
Storage Commands¶
lsblk, fdisk, parted, partprobe
pvcreate, vgcreate, lvcreate, pvs, vgs, lvs
mkfs.xfs, mkfs.ext4, mount, umount
xfs_growfs, resize2fs
Package Management Commands¶
dnf, rpm, yum (legacy)
Security Commands¶
firewall-cmd
getenforce, setenforce, setsebool, restorecon, semanage
ausearch, sealert
Container Commands¶
podman, buildah, skopeo
This comprehensive summary covers all major topics and commands from both study guides, organized for efficient exam preparation.