systemd units, services and targets
systemctl is the same program on both distributions and it is a quarter of the exam's biggest domain. The marks are in the distinctions: active is not enabled, disabled is not masked, and a unit with no [Install] section cannot be enabled at all. This guide separates them with output rather than definitions.
Operations Deployment Guide 13 of 38 Intermediate
- PlatformsUbuntu 26.04 LTS + AlmaLinux 10.2
- LVM2.03.31 (Ubuntu) / 2.03.36 (AlmaLinux)
- nftables1.1.6 (Ubuntu) / 1.1.5 (AlmaLinux)
- TimeAbout 20 min
systemd 257 on RHEL 10; the lab's Ubuntu hosts run 259. Nothing on this page differs between the two versions. Unit names do differ between the families - sshd.service against ssh.service.
- Firewallufw 0.36.2 enabled but reporting inactive / firewalld active
- Network confignetplan + systemd-networkd / NetworkManager 1.56.0
| Server Name | IP Address | OS | Roles | CPU | RAM | HDD |
|---|---|---|---|---|---|---|
| LFCS-A01 | 192.168.0.70 | Ubuntu 26.04 LTS | Primary host - most guides run only here | 2 Core | 4 GB | 50 GB |
| LFCS-C01 | 192.168.0.72 | AlmaLinux 10.2 | The other distribution - dnf, firewalld and NetworkManager | 2 Core | 4 GB | 50 GB |
This guide includes
Use this for a quarter of the exam. This matters because enable is only a symlink and mask is stronger than disable - a disabled unit still starts the moment something asks for it.
- asking what is running, and what has failed
- separating
is-active,is-enabledandis-failed - reading a shipped unit file, and its dependency tree in both directions
- using targets, which replaced runlevels, and seeing that enable is a symlink
- finding that disable is not mask, and matching the same services across both distributions
Before you start
- guide 3 - which established systemd is common ground.
- guide 4 - sudo, which every command here needs.
-
What is running, and what has failed
-
Three questions that look like one
-
What a unit file actually says
-
The dependency tree, in both directions
-
Targets, which replaced runlevels
-
Enable is a symlink, and nothing more
-
A unit with no [Install] section cannot be enabled
-
Disable is not mask
-
Masking, which is stronger - and which can fail
-
The same units on Ubuntu, under different names