Lab environment

VM setup

Practice labs can use one RHEL 10 (or Rocky / Alma 10) node. Mock exams match the exam with two systems: servera.lab.example.com and serverb.lab.example.com. Extra disk, SELinux Enforcing, SSH as student. Low RAM: one VM is enough — see section 8.

If a VM feels like a lot, that is the point of this track. The EX200 drops you on two live systems with a ticket and no emulator. Finish this setup once, take snapshots, then every lab is SSH.

1 Get an ISO (free)

  1. RHEL 10: create a free account at developers.redhat.com and download the DVD ISO.
  2. Or use Rocky Linux 10 / AlmaLinux 10 from their project sites if you do not want a Red Hat login. Commands match closely enough for this practice set.

2 Choose a hypervisor

HypervisorHostNotes
KVM / virt-manager Linux Closest to the exam. Pro users can download a script that creates two VMs.
VirtualBox Windows / Mac / Linux Simplest everywhere. Extra disk often shows up as /dev/sdb.
Hyper-V Windows 11 Pro Built in. Generation 2, 4 GB RAM.
VMware Workstation / Fusion Windows / Linux / Mac Good snapshots. Free for personal use.
UTM macOS Apple Silicon Use a Linux aarch64 image, or x86_64 with emulation (slow).

3 VM specifications

Create machines that look like exam nodes. Free labs: one VM is enough. Mocks: two VMs if you can; otherwise one VM (section 8).

OSRHEL 10 / Rocky 10 / Alma 10 — the current EX200 is based on RHEL 10
RAM4 GB minimum (8 GB is more comfortable)
CPU2 cores
System disk40 GB. Do not reformat this disk in the exam ticket.
Extra disk10 GB, empty. KVM virtio → /dev/vdb. VirtualBox SATA → /dev/sdb. Required for storage objectives.
Hostname after prepservera.lab.example.com and, for mocks, serverb.lab.example.com
NetworkNAT is enough for SSH from the host. Bridged if you want another device.
SoftwareServer with GUI or Minimal. sshd must work. SELinux Enforcing.

4 Install, then snapshot the clean OS

  1. Boot from the ISO. Automatic storage is fine for the first disk only.
  2. Set a root password you will remember. Create user student with wheel/sudo if the installer asks.
  3. Finish install, reboot, eject the ISO.
  4. Snapshot 00_Clean_Install (optional). Then run the prep script below before any lab.

5 Prep script — exam starting state

Copy this onto each VM and run it as root. On serverb: EX200_HOSTNAME=serverb.lab.example.com sudo bash prep-exam.sh. It sets hostname, student + sudo, SELinux Enforcing, sshd, man pages. It does not do the lab or mock tasks.

Download prep-exam.sh

# from your laptop
scp prep-exam.sh student@192.168.x.x:
ssh student@192.168.x.x
sudo bash prep-exam.sh

# RHEL 10 only, if dnf has no repos (developer.redhat.com account):
sudo rhc connect
sudo bash prep-exam.sh

When it prints success, snapshot 01_Exam_Start. Roll back to that snapshot between labs. Then grade with the lab grade script.

6 SSH from the host

The VM window is painful. Find the address with ip addr, then from your laptop:

ssh student@192.168.x.x

Copy/paste, resize the terminal, run man nmcli. After a lab or the mock: scp the grade script and sudo bash grade-….sh.

7 Two VMs for the mock exams (Pro, KVM)

Pro includes a KVM script that creates servera and serverb. The seven mock exams are 3 hours, 18–22 tasks, split grade on each host. A single VM from this guide is enough for the five free labs.

Get full access

8 Weak PC — one VM for mocks

The real EX200 uses two nodes. If your computer cannot run two guests (about 8 GB RAM for both), use one VM. Free labs already work this way. For a mock, play both roles on the same guest.

  1. One RHEL 10 / Rocky 10 / Alma 10 VM, 4 GB RAM, extra 10 GB disk. Run prep-exam.sh (hostname stays servera.lab.example.com). Snapshot 01_Exam_Start.
  2. Do every servera task first, including the NFS server exports.
  3. Point both names at this VM so NFS client tasks can mount the same box:
# on the VM — use the address from `ip -4 addr`
sudo hostnamectl set-hostname servera.lab.example.com
echo "$(hostname -I | awk '{print $1}') servera.lab.example.com servera serverb.lab.example.com serverb" | sudo tee -a /etc/hosts
  1. Then do the serverb tasks on the same guest (fstab NFS, autofs, and the rest).
  2. Grade on this VM: first sudo bash grade-examN-servera.sh. Then set the hostname to serverb and run the serverb script. Add the two PASS counts. Pass is still 70% combined.
sudo bash grade-exam1-servera.sh
sudo hostnamectl set-hostname serverb.lab.example.com
sudo bash grade-exam1-serverb.sh

Roll back to 01_Exam_Start before the next mock. This is practice on a weak host, not the exam layout. If you can run two VMs, use section 7.

Ready? Snapshot, then open a lab.

Go to labs