RHCSA study materials
RHCSA study resources

RHCSA study plan

RHCSA · Give each week a clear focus.

8 weeks · About 7 hours per week

Week 1

Understand and use essential tools

  • Navigate the filesystem and locate files using find with -name, -type, -size, and -mtime filters

  • Create, copy, move, and delete files and directories, then inspect and modify ownership and permissions with ls -l, chmod, and chown

  • Search text recursively with grep using regular expressions and pipe results through sort, uniq, wc, head, and tail

  • Edit files in vim using insert and normal modes, search-and-replace, and write-quit commands

  • Create and extract tar archives with gzip and bzip2 compression and list contents with tar -tf

Your checkpoint

A saved typescript log of one working session that exercises find, grep, tar, and vim against a directory tree you built yourself, plus a one-page reference of the 20 flags you used most.

Week 2

Understand and use essential tools & Manage software

  • Chain at least three commands into one pipeline using redirection, pipes, and command substitution, sending both stdout and stderr to separate files

  • Install, remove, and query packages with dnf and enable or disable a repository

  • Install and remove a package group and inspect package metadata with rpm -qi and dnf info

  • Create a local dnf repository configuration pointing at a directory of RPM files and install a package from it

  • Create a soft link and a hard link and verify the inode and link-count difference with ls -li

Your checkpoint

A working local RPM repository on the machine, plus a written record of installing a package from it, removing it, and reinstalling the same package from the standard repositories.

Week 3

Configure local storage

  • Partition a spare disk with fdisk and parted and print the resulting table with lsblk and parted print

  • Create LVM physical volumes, a volume group, and a logical volume, then extend the logical volume and grow its filesystem online

  • Add a swap file, activate it with swapon, and persist it in /etc/fstab

  • Mount a partition by UUID through /etc/fstab and confirm with mount -a and findmnt

Your checkpoint

A spare disk with two partitions, one of them an LVM volume extended by at least 200 MB, plus an active swap file, all mounting correctly and surviving a reboot.

Week 4

Create and configure file systems

  • Create ext4 and xfs filesystems with mkfs, mount them, and apply and verify labels with e2label and xfs_admin

  • Set and verify ownership, mode bits, and special bits including setgid on a shared directory and the sticky bit on a scratch directory

  • Configure a POSIX ACL with setfacl and getfacl, including a default ACL that new files inherit

  • Diagnose and repair a deliberately broken /etc/fstab entry using mount -a errors and systemd journal messages

  • Run fsck on an unmounted device to check and repair consistency

Your checkpoint

A shared directory carrying setgid plus a default ACL that grants read and write to a second user, backed by an fstab that mounts every entry cleanly after a reboot.

Week 5

Operate running systems & Create simple shell scripts

  • Start, stop, enable, disable, and mask systemd units and inspect their state with systemctl status

  • Switch the default target and boot into rescue or emergency mode to recover from a failed service

  • Read the journal with journalctl filtered by unit, priority, and time range, and enable persistent journal storage

  • Write a bash script that accepts positional arguments, branches with if and case, and loops over a file list

  • Add exit-code handling to a script and schedule it with a cron entry or a systemd timer

Your checkpoint

An executable bash script with a shebang, argument validation, and a loop that runs on a schedule and appends timestamped output to a log file you can show.

Week 6

Manage users and groups & Create simple shell scripts

  • Create users with useradd, set passwords with passwd, and set comment, shell, and expiry fields with usermod and chage

  • Create groups, add users to supplementary groups, and verify membership with id and groups

  • Grant sudo rights by dropping a validated file into /etc/sudoers.d with visudo -c

  • Lock, unlock, and expire accounts and confirm the effect on login

  • Automate bulk account creation by reading a CSV with a bash while-read loop

Your checkpoint

A script that reads a CSV of username, group, and expiry date and creates or updates accounts idempotently; run it twice and show that the second run makes no changes.

Week 7

Deploy, configure, and maintain systems (includes Manage basic networking) & Manage security

  • Configure a static IPv4 address, gateway, and DNS server with nmcli and verify with ip addr and nmcli connection show

  • Add a host entry to /etc/hosts and confirm resolution with getent hosts and ping

  • Set the hostname persistently with hostnamectl and the timezone with timedatectl

  • Enable firewalld, open a service permanently, and confirm the active ruleset with firewall-cmd --list-all

  • Switch SELinux modes with getenforce and setenforce and correct a file context using semanage fcontext plus restorecon

Your checkpoint

A host with a static address set through nmcli, firewalld permitting only the intended service, and SELinux enforcing with correct contexts on a directory moved away from its default location.

Week 8

Manage security & Deploy, configure, and maintain systems (includes Manage basic networking) & Understand and use essential tools

  • Reset a lost root password through the rd.break boot method and relabel the filesystem afterward

  • Harden sshd by enabling key-based login and disabling direct root login, then restart and verify

  • Run one timed end-to-end scenario from a blank virtual machine and grade it against your own checklist

  • Re-drill the two weakest objectives the timed run exposed until each is completed twice without notes

Your checkpoint

A scored timed practice run with a written list of every task you failed and the exact command sequence that fixes each one.

Milestones

Week 2: Without notes, install a package from a local repo you configured yourself and explain how dnf resolved it.

Week 4: Starting from a clean virtual machine, partition a spare disk, build LVM, format and mount it persistently by UUID, and reboot into a working system in under 25 minutes.

Week 6: Explain and demonstrate the difference between a user's primary group, supplementary groups, and sudo policy, then create a working account matching a written spec in under 5 minutes.

Week 8: Complete a full timed practice scenario on a blank VM and score at least 80 percent against your checklist, with no repeated failure on the same objective.