BrokenOps
A community-driven Linux lab platform. Master local troubleshooting by breaking, fixing, and verifying real systems.
01. NATIVE
Runs directly on your hardware for realism.
02. KVM
Standard virtualization for lab isolation.
03. OPEN
Driven by practitioners and real scenarios.
01. PHILOSOPHY
Local-First Troubleshooting
BrokenOps isn't another cloud-based sandbox. It's a collection of intentionally broken local environments designed to teach you how Linux systems fail and how to fix them.
By focusing on local Linux installations with KVM/libvirt, we ensure that you're learning skills that translate directly to production environments.
03. SYSTEM REQUIREMENTS
CPU
3 Cores
FREE AT IDLE
RAM
3 GB
FREE AT IDLE
DISK
25 GB
FREE SPACE
Calculated from the largest lab scenario (2 vCPU, 2048MB RAM) plus host OS overhead.
Getting Started
1. CLONE THE REPOSITORY
git clone https://github.com/HimanM/BrokenOps.git
cd BrokenOps2. INSTALL HOST PREREQUISITES
# install KVM, libvirt, dnsmasq, and Docker with your distro package manager
# then make sure libvirtd is running and the default network is active
sudo systemctl enable --now libvirtd
sudo virsh net-start default
sudo virsh net-autostart default3. DEPLOY A LAB
./deploy.sh
# choose a lab from the dashboardBrokenOps requires a native Linux host with KVM and libvirt available locally. WSL2, Docker Desktop virtualization, and nested virtualization are not supported.
Recent Labs
LATEST COMMITS IN THE LABS TREE
ACL Misconfiguration
Fix Broken Soft and Hard Symlinks
HTTPS Downloads Fail Because CA Certificates Are Missing
Cron Job Never Executes
DNS Resolution Failure
Broken DNS Search Domain
Docker Bind Mount Permissions
Docker Daemon Crash
Join the Project
Whether it's a new lab scenario, a fix for a bug, or documentation updates, your help is welcome.
ADD A LAB
Share a troubleshooting scenario you've encountered.
REVISE DOCS
Help make our guides clearer for new users.
REVIEW PRS
Join the discussion and help maintain quality.
Maintainers
FAQ
What is BrokenOps?
BrokenOps is a community-driven platform for local Linux labs. Each lab starts broken on purpose so you can practice diagnosis, repair, and verification.
How are recent labs selected?
The website builds a lab index from commit history in the labs/ tree, then renders the newest lab folder updates first.
How do I run it locally?
Clone the repo, use a native Linux host with KVM/libvirt, then run ./deploy.sh and choose a lab from the dashboard.
How can I contribute?
Open a PR with a new lab, documentation improvements, or verification fixes. The project is intentionally community-shaped.
