The LFCS validates Linux administration skills that are agnostic to any particular distribution. It covers essential commands (Git, services, performance, SSL), operations and deployment (packages, recovery, libvirt, containers, SELinux), users and groups (profiles, limits, ACL, LDAP), storage (LVM, NFS, autofs) and networking (OpenSSH, firewall, NAT, reverse proxy), in 2 hours, on a real Linux terminal.
This page is the LFCS preparation hub. It follows the 5 official domains of the blueprint and points you to the guides and labs to work on for each one.
How to use this hub
The hub is read in the order of the four steps below: understand the exam, measure your gaps, go deeper into each objective, then face the labs.
- Read the format and the rules of the day, to know exactly what to expect.
- Go through the 5 official domains, to identify your strengths and gaps.
- Work through the Essential skills page, to understand what each objective involves in practice.
- Move on to the companion repository labs, to validate your skills in conditions close to the exam.
What you will learn
- The format and real conditions of the LFCS exam
- The 5 official domains and their respective weight
- What each domain covers in practice, beyond the official titles
- A preparation plan in 6 blocks, from the foundation to advanced skills
- The technical traps to know before the day
What the LFCS validates
The LFCS certifies your ability to administer a Linux system in real conditions, without being tied to a particular distribution. The skills assessed cover a wide spectrum:
- Cross-cutting essential commands: Git, creating and troubleshooting services, performance monitoring, application constraints, disk space, SSL/TLS certificates
- Operations and deployment: kernel parameters, process and service diagnosis, scheduling, package and repository management, recovery after failure, libvirt VMs, container engines, SELinux
- Users and groups: local accounts, personal and system-wide environment profiles, resource limits, ACL, LDAP accounts
- Storage: LVM, virtual file systems, remote file systems (NFS, iSCSI), autofs, swap, storage performance
- Networking: IPv4/IPv6 addressing, DNS resolution, NTP synchronisation, network monitoring, OpenSSH server/client, filtering/NAT/port redirection, static routing, bridge and bonding, reverse proxy and load balancer
Exam format
| Aspect | Value |
|---|---|
| Duration | 2 hours |
| Type | Proctored hands-on exam (performance-based) |
| Number of tasks | 17 to 20 tasks |
| Minimum score | 67% |
| Mode | Online, remote proctoring through PSI Bridge |
| Certification validity | 2 years |
| Exam window | 12 months after purchase |
| Attempts | 1 attempt + 1 retake included if you fail |
| Price | $445, exam only (checked on 2026-10-01) |
| Killer.sh simulator | 2 sessions included, 36 h of access each, 20 scenarios |
| Languages | English; other languages on offer are checked on the official page at purchase time |
| Allowed resources | man, documentation installed by the distribution (/usr/share), distribution packages installable if needed |
The point of this table most often badly anticipated is the allowed
resources row. The official Linux Foundation instructions phrase it
negatively: "resources that cannot be accessed from within the terminal are
not allowed". In other words, no browser tab, no online documentation, no
personal wiki. You have the manual pages, what the distribution installed
under /usr/share, and the option to install a distribution package if
its documentation is missing. A candidate used to searching the web loses much
more time than expected on the day, and that is reason enough to practise with
man open and the browser closed.
The price, the validity period and the exam conditions were checked on 2026-10-01 and may change without notice. The official page is the reference: training.linuxfoundation.org/certification/lfcs.
The 5 official domains of the blueprint
| Domain | Weight | Official objective summary | What it covers |
|---|---|---|---|
| Operations and deployment | 25% | Kernel parameters, processes and services, scheduled jobs, software packages and repositories, recovery from failures, VMs (libvirt), container engines, SELinux | Persistent and non-persistent kernel parameters, process and service diagnosis, scheduling, package and repository management, recovery from hardware or system failure, libvirt virtual machines, container engines, mandatory access control |
| Networking | 25% | IPv4/IPv6, hostname resolution, NTP, OpenSSH, packet filtering, NAT, static routing, bridge, bonding, reverse proxies | Addressing, DNS resolution, time synchronisation, SSH server/client, firewall, NAT, routing, bridge/bonding, reverse proxy |
| Storage | 20% | LVM, partitions, filesystems, NFS/CIFS/iSCSI, swap, autofs, storage performance | Partitions, LVM, persistent mounts, remote file systems, dynamic mounting, swap, I/O performance |
| Essential commands | 20% | Basic Git operations, services, performance, constraints, diskspace, SSL certificates | Git versioning, service creation, system monitoring, application constraints, disk space, SSL/TLS certificates |
| Users and groups | 10% | Local user and group accounts, personal and system-wide environment profiles, user resource limits, ACLs, LDAP user and group accounts | Accounts and groups, personal and system shell profiles, resource limits, ACL, LDAP integration |
What you must be able to do without hesitation
For each official objective, examples of tools are given; they are not a list imposed by the blueprint.
Essential commands
Official objective: Basic Git Operations, services creation and troubleshooting, monitoring system performance, determining application and service constraints, managing disk usage, working with SSL certificates
- Git: initialise a repository, clone, create a branch, commit, merge, push
- Create and troubleshoot a service: write a systemd unit file, diagnose a failed service
- Monitor performance: identify CPU, memory and I/O bottlenecks
- Application constraints: resource limits, kernel parameters
- Disk space: analyse real usage, identify deleted files still open
- SSL/TLS certificates: generate, inspect, verify certificates
Operations and deployment
Official objective: Configure kernel parameters (persistent and non-persistent), diagnose/identify/manage/troubleshoot processes and services, manage or schedule jobs, search for/install/validate/maintain software packages or repositories, recover from hardware/OS/filesystem failures, manage Virtual Machines (libvirt), configure container engines, create and enforce MAC using SELinux
- Kernel parameters: read and change a value live, make it persistent, check that it survives a reboot
- Processes and services: identify a process that consumes, diagnose a failed service, act without rebooting the machine
- Scheduling: configure recurring tasks (cron or systemd timers)
- Packages and repositories: search, install, check the origin of a package, add a repository, manage versions
- Recovery: get back from a system that no longer boots, a wrong
/etc/fstabor a file system in error - libvirt VMs: list, start, stop, create virtual machines
- Containers: start, inspect, generate a system service; the tool depends on the distribution
- SELinux: manage enforcing mode, fix contexts, enable booleans, allow ports
Users and groups
Official objective: Create and manage local user and group accounts, manage personal and system-wide environment profiles, configure user resource limits, configure and manage ACLs, configure the system to use LDAP user and group accounts
- Accounts and policies: create users, manage expiry, shells and passwords
- Environment profiles: configure the environment at system and user level
- Resource limits: set constraints per user or group
- ACL: apply finer permissions than ugo/rwx
- LDAP: integrate a centralised identity source
sudo delegation and SSH key authentication do not appear in this
domain. sudo is not a named objective of the blueprint, and OpenSSH belongs
to the Networking domain. Both remain essential in practice, and the site
teaches them: they simply do not count in this domain's 10%.
Storage
Official objective: LVM, partitions, filesystems, remote filesystems and network block devices, swap, autofs, storage performance
- Partitions + formatting: create and format partitions
- LVM: create, extend, format and mount logical volumes
- Persistent mount through
/etc/fstabwith UUID - Remote file systems: NFS, CIFS, iSCSI
- autofs: dynamic on-demand mounting
- Swap: create and enable a swap space
- Storage performance: measure and diagnose I/O performance
Networking
Official objective: IPv4/IPv6, hostname resolution, NTP, OpenSSH, packet filtering/NAT, static routing, bridge/bonding, reverse proxies/load balancers
- Addressing + resolution: configure IPv4/IPv6 addresses and hostname resolution
- NTP synchronisation: configure and check time synchronisation
- Network monitoring: diagnose connectivity and open ports
- OpenSSH server and client: configure key authentication, harden the server
- Filtering, NAT, port redirection: define persistent rules
- Static routing: add persistent routes
- Bridge and bonding: create an aggregated interface or a network bridge
- Reverse proxy and load balancer: configure a front-end service to distribute traffic to backends
Prerequisites before you start
-
Master the Linux terminal
Navigate the file system, create directories, copy, move and delete files without hesitation. It is the implicit foundation of the whole blueprint.
-
Understand Unix permissions
Read
rwxr-xr-x, usechmodin octal and symbolic notation, knowchownandchgrp. -
Have used
systemctlBe comfortable with
start,stop,enable,disable,status. If not, start with the services and systemd guides. -
Have practised on a real VM or a real server
The LFCS is a hands-on exam. Set up a KVM lab or a VM; working only in a browser or on Windows WSL is not enough.
Preparation plan
Linux foundation before the certification
What you must already master:
- Navigating the file system (
ls,cd,find,locate) - Handling files and text (
cp,mv,rm,cat,grep,awk,sed) - Unix permissions (
chmod,chown,umask, SUID/SGID/sticky bit) - The
vi/vimeditor, essential to edit files in an exam situation - Understanding the Linux file system hierarchy (FHS)
Site guides:
The essential skills page goes over navigation, file handling and text filtering. The Linux permissions guide covers chmod, chown, umask and the SUID and SGID bits, and the vim editor guide its modes, navigation and search, enough to edit a file without hesitation on the day.
Git, services, performance, SSL/TLS
Official objective (LFCS domain): Basic Git Operations. Create, configure, and troubleshoot services. Monitor and troubleshoot system performance and services. Determine application and service specific constraints. Troubleshoot diskspace issues. Work with SSL certificates.
What it means in practice:
- Use Git for versioning:
init,clone,add,commit,log,diff,branch,switch,merge,stash,remote,push,pull - Create and troubleshoot a systemd service: write a unit file,
systemctl daemon-reload, diagnose afailed - Monitor performance:
top,vmstat,iostat,free,uptime,sar(examples of tools, not an exhaustive list) - Application constraints:
ulimit -a,/etc/security/limits.conf,sysctl,lsof - Disk space:
df -h,du -sh,lsof +L1(deleted files still open),find -size - SSL/TLS:
openssl req,openssl x509,openssl s_client,openssl verify
Companion repository labs:
dsoxlab list-labs --level lfcs --bloc 1Site guides:
For Git, the Git course (in French) covers the command-line basics. systemctl day to day teaches you to start, enable and troubleshoot a service, unit files included. Process management and checking system load cover performance: top, vmstat, iostat, sar, /proc/pressure and the OOM killer. Check disk space and inodes handles df, du, find -size and lsof +L1, the command that finds a deleted file still open.
For SSL/TLS certificates, the guide TLS diagnosis: debug SSL errors with openssl (in French) trains you to inspect a certificate with openssl s_client and openssl x509, to read a chain of trust and to diagnose common errors. For the other half of the objective, creating certificates, the guide Generate TLS certificates with openssl (in French) covers the private key, the CSR, the self-signed certificate, an internal CA and its installation in the trust store.
Kernel, processes, packages, recovery, libvirt, containers, SELinux
Official objective (LFCS domain): Configure kernel parameters, persistent and non-persistent. Diagnose, identify, manage, and troubleshoot processes and services. Manage or schedule jobs for executing commands. Search for, install, validate, and maintain software packages or repositories. Recover from hardware, operating system, or filesystem failures. Manage Virtual Machines (libvirt). Configure container engines, create and manage containers. Create and enforce MAC using SELinux.
What it means in practice:
- Kernel parameters:
sysctland/etc/sysctl.d/for persistence - Processes:
ps,top,kill,nice,renice,jobs,bg,fg,nohup - systemd targets: identify, change the default target (
systemctl set-default), reach rescue mode through GRUB2 - Scheduling:
cron, systemd timers - Packages and repositories: search, install, check and maintain, with the package manager of the distribution you meet on the day
- Recovery: get back from a stuck boot, a wrong
/etc/fstab, a file system gone read-only - libvirt VMs:
virsh list,start,shutdown,define,autostart - Containers: start, inspect, generate a system service; the tool depends on the distro (examples:
podman,nerdctl) - SELinux:
getenforce,setenforce,chcon,restorecon,semanage fcontext,setsebool -P,semanage port,ausearch,sealert
Companion repository labs:
dsoxlab list-labs --level lfcs --bloc 2Site guides:
Processes and systemd: process management (ps, kill, nice, jobs) and the systemd architecture (targets, boot, dependencies). Scheduling: cron, at for a single run, and systemd timers with OnCalendar and their persistence. Scripts, to automate these tasks: write a shell script, conditionals and tests, loops and robust scripts with set -euo pipefail and trap.
Logs: journalctl to filter by unit or by level, and logrotate for rotation and purging. Packages and repositories: the package manager module (apt, dnf, zypper, pacman, apk) and understand packages for repositories and signatures. Recovery: a server stuck at boot, between a wrong fstab and rescue mode, and a read-only file system, with the fsck verdict. Kernel: boot parameters, on the kernel command line and in GRUB.
For mandatory access control, the guide SELinux: understand, troubleshoot and disable covers modes, contexts, booleans and the diagnosis of AVC denials. On Debian and Ubuntu, the equivalent is covered in Understand and use AppArmor: since the LFCS is vendor-neutral, knowing both systems is a real asset.
For kernel parameters, the guide sysctl: harden the Linux kernel and network stack shows how to change a parameter live, make it persistent in /etc/sysctl.d/ and check the result, with the network settings most often needed in practice.
VMs and containers are learnt outside the Linux section
Two objectives of this domain, "Manage Virtual Machines (libvirt)" and "Configure container engines, create and manage containers", are not covered in the Linux section, and that is not an oversight. The site already covers these topics in depth elsewhere, and duplicating them here would produce two versions to maintain that would diverge within a few months.
The Linux course therefore points to these two satellite sections, which are the authority on their subject. You come back for the rest of the block.
For libvirt, virsh (in French) covers list, start, shutdown, define and autostart, which is the objective as such, and create a KVM virtual machine (in French) goes from the disk image to the first boot. For containers, the Podman course (in French) presents the daemonless engine of RHEL distributions, and Quadlet (in French) shows how to turn a container into a systemd service, the most frequent expectation.
Users, groups, sudo, SSH server, LDAP
Official objective (LFCS domain): Create and manage local user and group accounts. Manage personal and system-wide environment profiles. Configure user resource limits. Configure and manage ACLs. Configure the system to use LDAP user and group accounts.
This block also covers sudo and SSH key authentication, which are not
objectives of this domain: sudo is named nowhere in the blueprint, and
OpenSSH belongs to the Networking domain. They are here because the
teaching order calls for it, not because the exam counts them in this 10%.
What it means in practice:
- Create users and groups, manage shells and passwords
- Manage password expiry with
chage - Configure
sudoto delegate without granting full root rights - Define shell profiles in
/etc/profile.d/and~/.bashrc - Configure resource limits with
ulimitand/etc/security/limits.conf: the Limit a process's resources guide covers soft/hard limits,limits.confthrough PAM, systemd'sLimit*directives andprlimit - Apply ACLs:
setfacl,getfacl - Configure SSH key login on the server side,
sshd_config, disable password authentication - Integrate LDAP as an authentication source, examples of tools:
sssd,authselect(RHEL-based),ldap-utils(Debian-based)
Companion repository labs:
dsoxlab list-labs --level lfcs --bloc 3Site guides:
The users and groups guide covers creation, shells and passwords. sudo writes targeted rules, and ACLs detail getfacl, setfacl and the mask. For SSH, the client covers key login and ~/.ssh/config, and the sshd server the sshd_config file, PermitRootLogin and validation with sshd -t.
For the LDAP objective, the guide LDAP, Active Directory and Kerberos: enterprise directories (in French) lays down the concepts of directory, DN and centralised authentication, essential before configuring a client such as sssd.
Partitions, LVM, NFS, autofs, swap, performance
Official objective (LFCS domain): Configure and manage LVM storage. Manage and configure the virtual file system. Create, manage, and troubleshoot filesystems. Use remote filesystems and network block devices. Configure and manage swap space. Configure filesystem automounters. Monitor storage performance.
What it means in practice:
- Identify the disks:
lsblk,blkid,fdisk -l - Create and format partitions (ext4, xfs, vfat)
- Create an LVM volume, extend it, mount it persistently:
pvcreate,vgcreate,lvcreate,lvextend - Make a mount persistent through
/etc/fstabwith UUID, check withfindmnt - Configure NFS, CIFS and iSCSI as remote file systems (persistence through fstab)
- Configure autofs for dynamic mounting:
/etc/auto.master,/etc/auto.* - Create and enable additional swap:
mkswap,swapon - Storage performance:
iostat,iotop,hdparm
Companion repository labs:
dsoxlab list-labs --level lfcs --bloc 4Site guides:
The partitions guide covers fdisk, parted and formatting. LVM chains pvcreate, vgcreate, lvcreate and lvextend. Mount and make persistent handles the persistent mount with mount, umount, fstab and findmnt, and check disk space and inodes adds df -i, lsof +L1 and tune2fs.
For remote file systems, the Use NFS on Linux guide covers mounting an NFS export, its persistence in /etc/fstab and its check with findmnt. The SMB/CIFS with Samba guide does the equivalent for Windows shares: mount -t cifs with credentials and the vers=3.0 dialect. The Use iSCSI on Linux guide completes it with network block devices: discovering a target, connecting with iscsiadm and mounting persistently. For dynamic mounting, the Automount with autofs guide covers the auto.master maps, the home directory wildcard and unmounting after inactivity.
Addressing, NTP, monitoring, OpenSSH, firewall, reverse proxy
Official objective (LFCS domain): Configure IPv4 and IPv6 networking and hostname resolution. Set and synchronize system time using time servers. Monitor and troubleshoot networking. Configure the OpenSSH server and client. Configure packet filtering, port redirection, and NAT. Configure static routing. Configure bridge and bonding devices. Implement reverse proxies and load balancers.
What it means in practice:
- Addressing + resolution:
ip addr,ip route,hostnamectl,dig,/etc/resolv.conf - NTP synchronisation:
timedatectl,chronyc tracking,/etc/chrony.conf - Network monitoring:
ss -tulpn,tcpdump,ping,traceroute, diagnose connectivity - OpenSSH server:
sshd_config, key authentication, disable password authentication - Filtering, NAT, port redirection: permanent rules, masquerade, examples:
firewall-cmd --permanent,iptables - Persistent static routing, examples:
ip route add, network management tools - Bridge and bonding: create an aggregated interface or a Linux bridge
- Reverse proxy and load balancer: configure a front-end service to distribute traffic to backends
Companion repository labs:
dsoxlab list-labs --level lfcs --bloc 5Site guides:
The Networking module sets out ip addr, ip route, ss, ping and dig, the basic commands and the common denominator of every distribution. NetworkManager covers nmcli and nmtui, the tool of RHEL-based systems.
For network filtering, three guides cover the tools you meet depending on the distribution: Configure a firewall with Firewalld for RHEL-based systems (zones, --permanent, --reload), Configure a firewall with nftables for native kernel rules, NAT and port redirection, and Configure a firewall with UFW for Ubuntu.
For static routing, the guide Routing: how packets find their way (in French) explains the routing table, ip route add and route persistence, the blueprint objective as such.
For time synchronisation, the Chrony and NTP: precise synchronisation guide details the NTP configuration in /etc/chrony.conf, the check with chronyc tracking and the link with timedatectl.
For the reverse proxy and load balancing, start with Reverse proxy: definition, role and which tool to choose (in French) to lay down the concept, then practise with Nginx: practical guide (reverse proxy, TLS, performance) (in French) or HAProxy: load balancing and high availability, the two reference tools for this objective.
Often underestimated skills
These topics are in the blueprint but are frequently missing from revision.
| Skill | Domain | Common trap |
|---|---|---|
| SELinux | Operations | Many disable it, the LFCS requires managing it |
| libvirt / KVM | Operations | Create and start a VM with virsh |
| Containers | Operations | podman or nerdctl depending on the exam distro |
| Recovery after failure | Operations | A wrong /etc/fstab prevents booting; know how to reach rescue mode and remount read-write |
| Package repositories | Operations | The objective says "repositories", not only "packages": add and validate a source, not just install |
| Persistent kernel parameters | Operations | A sysctl -w disappears at reboot, the objective explicitly asks for both forms |
| OpenSSH server side | Networking | Not just the client, configure sshd_config |
| NAT and port redirection | Networking | Permanent firewalld rules, masquerade |
| Static routing | Networking | Add a persistent route |
| Bridge and bonding | Networking | Create a Linux bridge or an aggregated interface |
| autofs | Storage | Mount on demand, /etc/auto.master |
| LDAP (clients) | Users | Join an LDAP domain, sssd.conf |
| Reverse proxy | Networking | Minimal nginx or HAProxy configuration |
| NTP synchronisation | Networking | chrony, edit /etc/chrony.conf, check with chronyc tracking |
| SSL/TLS | Essential commands | Generate and inspect a certificate with openssl |
Real conditions on the day
Technical environment:
- A single screen allowed, no second monitor
- Private room, clear desk, working webcam required
- The secure PSI Browser is downloaded when the exam is launched; run the PSI system check several days before to validate your hardware
- The base machine is called
base, it is your SSH entry point - Additional hosts can be reached through SSH from
base, never through nested SSH - Use
sudo -ito get a root shell
Technical traps to know:
| Situation | Rule |
|---|---|
base | Never reboot base: rebooting it does not restart the exam environment |
certerminal process | Do not stop or tamper with this process, it handles your exam session |
| Ports not to block | 8080/tcp, 4505/tcp, 4506/tcp inbound, including through the firewall rules shipped by default with the distribution |
| Other hosts | Only base is forbidden from rebooting in the instructions |
| Copy/paste in the terminal | Use Ctrl+Shift+C / Ctrl+Shift+V in the exam terminal |
| Closing a tab | Use Ctrl+Alt+W rather than Ctrl+W so as not to close the session |
Good practices during the exam:
- Read each task in full before starting, the context matters
- Always check the expected effect after each action:
systemctl status,ip addr,findmnt,getfacl… - Go back to
basebefore connecting to another host: nested SSH is not supported
Take the mock exam
Once the skills of the five domains are acquired, put yourself in real conditions with the LFCS mock exam: 17 tasks to complete on Ubuntu 24.04, timed, scored on the state of the system. The threshold is set at 70 out of 100, deliberately above the 67% of the real exam: a margin in training is better.
What this mock exam tests, and what it samples
The 17 tasks were checked against the official blueprint on 2026-09-15, task by task, then rewritten where they diverged. Three corrections, all verifiable by replaying the lab:
| What was tested | Why it was wrong | What replaces it |
|---|---|---|
find and tar, text filtering, links, set-GID directory | It is the old scope of "Essential Commands", which the domain no longer covers | Git, repairing a broken service, recovering the space held by a deleted but still open file, producing an SSL certificate |
Delegating sudo | sudo is named nowhere in the blueprint | POSIX ACLs, named entry and default entry, which are an objective |
| A disk quota | Quotas belong to no LFCS objective, and this page already said so further up | Automounting, the "Configure filesystem automounters" objective |
The mock exam therefore no longer scores anything outside the reference. It samples part of it, exactly like the real exam, which draws 17 to 20 tasks from the 34 objectives published.
What it does not draw, and must therefore be worked on elsewhere: kernel parameters, recovery after failure, libvirt VMs, container engines and SELinux on the Operations side; NTP, OpenSSH, bridge and bonding and the reverse proxy on the Networking side; environment profiles, resource limits and LDAP on the Users side; remote file systems and storage performance on the Storage side.
Treat it for what it is: training in exam conditions, timer and persistence included, on a faithful sample of the reference. For the objectives not drawn, the guides and labs of the five blocks above remain the reference.
Key points
- The LFCS is a 100% hands-on exam on a real Linux terminal; practise in a real environment (VM or KVM lab), not only in an online simulator.
- The blueprint is vendor-neutral: the skills are described as objectives, not imposed tools; depending on the distro, the commands may vary.
- The networking and operations domains alone make up 50% of the score, do not neglect them.
- The built-in documentation (
man,/usr/share) and the distribution packages are allowed during the exam: learn to navigate them quickly. - Never reboot
base, do not stopcerterminal, do not block inbound ports 8080/4505/4506. - The Killer.sh simulator offers the same scenarios in both its sessions; use it to get familiar with the interface, not to predict the real exam.
- Each task must survive a check: after each action, verify the effect with
systemctl status,ip addr,findmnt,getfacl, etc. - Disk quotas are not part of the current LFCS blueprint, do not prioritise them.