Break It, Fix It
Objective: Diagnose and repair intentionally broken system configurations.
You're going to break your own system on purpose. Then fix it. No reinstalling. No giving up. Read the error messages. Search the docs. Think.
The troubleshooting process:
- 1. What is the symptom?
- 2. What changed?
- 3. Where are the logs?
- 4. What does the error actually say?
- 5. Can you reproduce it?
- 6. What is the fix?
The difference between a junior and a senior isn't that seniors don't encounter problems. It's that seniors know how to methodically find and fix them.
-
Permissions lockout : Run chmod 000 ~ on your home directory. Figure out how to get back in.
-
Missing PATH : Edit ~/.bashrc and delete the PATH export. Open a new terminal. Nothing works. Fix it.
-
DNS broken : Edit /etc/resolv.conf and point the nameserver to 0.0.0.0. Websites don't load. Fix it.
-
Disk full (simulated) : Create a massive dummy file with dd. System is sluggish. Find out why and fix it.
-
Service down : Stop NetworkManager with systemctl stop. Internet is gone. Figure out why and bring it back.
- 1
For each of the 5 break scenarios: run the break command, close the terminal, walk away for 15 minutes, come back and fix it without scrolling through your history.
- 2
For each scenario, write a full After Action Report: symptom, diagnostic commands, root cause, resolution, and lessons learned.