LFCS Practice Tool
83 Linux admin scenarios in throwaway Docker containers, each one checked automatically when you exit the shell.

I built a command-line tool for practising Linux system administration.
It gives you a task, drops you into a container, and checks your work when you exit. 83 scenarios across the five LFCS exam categories.
pip install lfcs
lfcs startWhy containers
You cannot practise system administration by reading about it. You have to break things.
But the machine you would break is the one you work on. Partition a disk
wrongly, misconfigure a firewall, get a chmod wrong on /etc, and you have a
real problem instead of a lesson.
So every scenario runs in its own Docker container. Do whatever you want to it. Exit, and it is gone.
Checking the work, not the commands
The tool does not care how you got there.
It checks the state of the system afterwards. Did the user exist with the right group. Is the mount there. Does the service come back after a restart. There are usually four ways to do any of it, and an exam does not care which one you picked either.
That is also the hard part of writing scenarios. It is easy to check that someone typed a particular command. It is more work to check that the machine ended up in the right state, and it is the only check worth having.
Using it
lfcs start # pick a scenario, work, validate
lfcs start --category networking --difficulty easy
lfcs list # every scenario available
lfcs stats # pass rate, streaks, mastery
lfcs stats --category storage
lfcs learn # the structured path
lfcs learn --list
lfcs learn --module 01_beginner/01_linux_basics
lfcs learn --continue # from where you stopped
lfcs reset --confirmThe loop is always the same. Pick a scenario. Read the task. Do the work in the
container shell. Type exit. It tells you what passed and what did not.
Live validation is there too, so you can check without leaving the container and losing your place.
The five categories
The scenarios follow the exam.
essential_commands text processing, pipes, archives
operations_deployment services, packages, systemd
networking interfaces, routing, firewall
storage filesystems, LVM, mounting, permissions
users_groups users, permissions, sudoEach has easy, medium and hard, and scenarios are generated with randomised values, so running the same one twice is not the same exercise twice.
Ubuntu, CentOS, Rocky
Paths move between distributions. So do service names, package managers and default configurations.
Practising on only one of them teaches you that one. So the containers come in three, and a scenario can be run against any of them.
What it tracks
Pass rate, per category and per difficulty. Streaks. Mastery percentages. Which areas you keep failing, and what to practise next based on that.
There is also a structured learning path, 14 modules from Linux basics up to security hardening and automation, for when you do not know enough yet to attempt a scenario.
01_beginner basics, navigation, first commands
02_intermediate text processing, processes, packages
03_advanced networking, storage, user administration
04_expert security hardening, automation, troubleshootingHints and validation can go through Claude or GPT if you give it a key, but the tool works without one. AI is an addition, not a requirement.
export ANTHROPIC_API_KEY="..."
lfcs start --aiThere is a --local mode that runs on your own machine instead of a container.
It works, and the README says plainly not to use it unless you understand what
you are agreeing to. A tool that reformats disks for practice should not do
that to the machine you are reading this on.
tl;dr
Practise Linux administration in a container you can destroy, and have your work checked automatically.