EX342 Practice ExamLesson 1 of 4
Exam briefing, lab and marking sheet
Rules, the two-machine lab and its disks, how the faults are prepared, the task map with dependencies, and the sheet you mark yourself on.
lab-check.shvirsh snapshot-revertlsblkfindmnt --verifysystemctl is-activeman -k
After this lesson you can
- State the rules, the four-hour limit and the pass mark, and build both machines to the exam's starting state.
- Map the 23 tasks, their points and their dependencies before starting the clock.
About this exam
This is a practice exam written for Linux Roads. It follows the objectives of the EX342 exam (Red Hat Certified Advanced System Administrator in Enterprise Linux, current for RHEL 10) and the way those objectives are usually examined: a machine is broken or incomplete, you diagnose it from evidence, and a script checks the result. It is not Red Hat’s exam and does not contain real exam questions. The time, the number of tasks and the scoring below are this practice’s own design; check Red Hat’s exam page for the official format when you book.
The eight objective areas covered, and where they appear:
| Area | Tasks |
|---|---|
| Troubleshooting method, documentation, monitoring, web console | A2, A4, B7 |
| Boot process and start-up failures | A1, A2, A5 |
| Storage, file systems, LVM, space | A6, A7, A8 |
| Software, RPM, repositories | B1, B2, B3 |
| Application and service debugging, crash analysis | B4, B5, B6 |
| Networking and firewall | C1, C2 |
| Logging, integrity, automation | C3, C4, B8 |
| Security, PAM, account policy | C5, C6, C7 |
| Crash dumps and support data | A3, A4 |
Rules
| Item | Rule |
|---|---|
| Time | 4 hours (240 minutes) from the moment you read the first task |
| Score | 300 points: Part A 100, Part B 100, Part C 100 |
| Pass mark | 210 points (70 %) |
| Scoring | A task earns its points only if every check in its list passes. No partial credit inside a task |
| Machines | node1 (the machine under repair) and node2 (peer, log server, root-password task). Each task says where to work |
| Internet | None. No browser, no search engine, no AI assistant, no notes |
| Allowed help | man, --help, info, /usr/share/doc, ansible-doc, and the commands on the machine |
| Persistence | Every change must survive a reboot. You reboot both machines at the end and the checks are run after that |
| Starting state | The clean snapshot plus the setup blocks of each part |
The suggested minutes of the tasks add up to 225, leaving 15 minutes for the final reboot and your own verification.
The lab
| Item | Value |
|---|---|
node1.lab.example | 192.168.50.11, RHEL 10, 4 GiB RAM, disks vda (system), vdb, vdc, vdd (2 GiB each) |
node2.lab.example | 192.168.50.12, RHEL 10, 2 GiB RAM, disk vda |
| Accounts | root password Ex342!Lab on both; user alex (password Ex342!Lab) with full sudo |
| SSH | alex can reach node2 with a key (set during preparation) |
| Repositories | BaseOS and AppStream available (a local mirror or your subscription) |
| Default firewall and SELinux | firewalld running, SELinux enforcing on both nodes |
Packages that the tasks ask you to install (kexec-tools, cockpit, sos, aide, ansible-core, gdb, strace, createrepo_c) are not installed on the clean snapshot.
Preparation common to all parts
Run once, as root on node1, after reverting to clean:
# SSH key for alex to node2 (the Ansible task needs it)
sudo -u alex ssh-keygen -q -t ed25519 -N '' -f /home/alex/.ssh/id_ed25519
sudo -u alex ssh-copy-id -o StrictHostKeyChecking=accept-new alex@node2.lab.example
# sudo without a password on node2 for alex
ssh root@node2.lab.example 'echo "alex ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/alex; chmod 440 /etc/sudoers.d/alex'
# the machine names
for h in node1.lab.example=192.168.50.11 node2.lab.example=192.168.50.12; do grep -q "${h%%=*}" /etc/hosts || echo "${h#*=} ${h%%=*}" >> /etc/hosts; done
# tools for the setups only (not graded)
dnf install -y gcc lvm2 xfsprogs e2fsprogs
Each part’s lesson has its own setup block. Run them in this order, before you start the clock: Part C, then Part B, then Part A. Part A goes last because its setup ends by rebooting node1 into emergency mode on purpose, and because it sets an unknown root password on node2, which the other setups still need.
Task map and marking sheet
Mark yourself honestly. A task is worth its points only if every check in its list passed after the final reboot.
| ID | Task | Points | Suggested minutes | Needs |
|---|---|---|---|---|
| A1 | Recover node1 from emergency mode | 12 | 10 | (first) |
| A2 | Persistent journal and boot arguments | 10 | 8 | A1 |
| A3 | Capture-ready kdump | 10 | 10 | A1; reboot |
| A4 | Web console, metrics and a support archive | 12 | 10 | A1 |
| A5 | Reset the root password of node2 | 12 | 10 | reboot of node2 |
| A6 | Repair a damaged XFS and a damaged ext4 | 16 | 12 | A1 |
| A7 | Restore a lost LVM label and metadata | 16 | 12 | A1 |
| A8 | Space that cannot be used | 12 | 8 | A1 |
| Part A | 100 | 80 | ||
| B1 | Repair a damaged package | 12 | 8 | A1 |
| B2 | A repository that does not work | 10 | 7 | A1 |
| B3 | Signatures, keys and rolling back | 12 | 8 | B2 |
| B4 | Analyse a crash | 14 | 12 | A1 |
| B5 | A service that will not start | 16 | 12 | A1 |
| B6 | Limits and a port conflict | 12 | 8 | A1 |
| B7 | Find what a program is looking for | 8 | 6 | A1 |
| B8 | One playbook for both nodes | 16 | 12 | SSH key to node2 |
| Part B | 100 | 73 | ||
| C1 | A path that does not work | 18 | 12 | A1 |
| C2 | A web service nobody can reach | 14 | 10 | C1 |
| C3 | Central logging | 18 | 14 | A5, C1 |
| C4 | File integrity | 12 | 9 | A1 |
| C5 | Account policy | 14 | 9 | A1 |
| C6 | Five users who cannot log in | 14 | 10 | A1 |
| C7 | Repair the PAM configuration | 10 | 8 | do last |
| Part C | 100 | 72 | ||
| Total | 300 | 225 |
Scoring: write the points you earned next to each ID. 210 or more passes. Below 210, look at which objective areas lost the points (table above) and revisit those skills. Below 150 usually means the method, not a command, is missing: re-read A method for troubleshooting and practise reading the logs before changing anything.
After the exam
Rebuild from the snapshot and do it again two weeks later, but this time without the hints and with the clock. The second pass shows which areas are fluent and which you still look up. The solutions in each task are one correct way; any approach that passes the checks and survives a reboot earns the points.
Practice
0 of 2 done
Do these on your own system. They get harder. Check each result, then tick it off.
- Warm-up
Prepare the lab and read every task
Revert both machines to the
cleansnapshot, check the starting state (below), run the setup block of each part (Part C, then B, then A) as root, then read all 23 tasks without typing any answer. Write a plan: the order, the three tasks you will do first and the tasks that need a reboot (so you start them early).Check your result
lsblkon node1 showsvdb,vdc,vddof 2 GiB with the layouts described in the setup blocks.sudo ssh -o BatchMode=yes node2.lab.example trueworks foralex.- Your plan lists A1 first, A3 and A5 (reboots) early, and C7 (PAM) last.
Hint
Start the clock only when the plan is written. Reading time counts as part of the four hours.
Solution
Order: A1 (node1 is in emergency mode: nothing else works) -> A2 -> A3 (kdump, reboot) -> A5 (node2 root, reboot) -> A4 -> A6 -> A7 -> A8 -> B1 -> B2 -> B3 -> B4 -> B5 -> B6 -> B7 -> B8 -> C1 (network) -> C2 -> C3 -> C4 -> C5 -> C6 -> C7 -> final reboot of both nodes Reboots to start early: A3, A5. Last: C7, then the final reboot and checks. - Challenge
Write your four-hour budget
Using the marking sheet, write a budget: reading time, a per-part target, the rule that makes you skip a task, and the 15 minutes you reserve for the final reboot and checks. Then name the task whose failure hurts most (the one with most dependants) and say how you will protect it.
Check your result
- Your budget totals 240 minutes or less and has a skip rule stated as a number of minutes.
- You name a task from the dependency map (A1, C1 or A5) as the one to protect.
Hint
Points per minute: A8 is 1.5, B7 is 1.3, C7 is 1.25, C1 is 1.5, A6 is 1.3. Do the high-value, low-risk tasks first, and anything that needs a reboot early.
Solution
Reading 5 | Part A 78 | Part B 70 | Part C 72 | Reserve 15 = 240 Skip rule: 10 minutes over the suggested time on one task -> mark it, move on, come back at the end. Most protected: A1 (node1 does not boot to a normal system until it is done).