Example 8.1:
List Active Services
jupiter.example.com: ~ # systemctl
UNIT LOAD ACTIVE SUB JOB DESCRIPTION
[...]
systemd-random-seed-load.path loaded active waiting Random Seed
acpid.service loaded active running ACPI Event
Daemon
apache2.service loaded failed failed apache
avahi-daemon.service loaded active running Avahi
mDNS/DNS-SD Stack
bluez-coldplug.service loaded active exited LSB: handles
udev coldplug of bluetooth dongles
console-kit...-system-start.service loaded active exited Console System
Startup Logging
cron.service loaded active running Command
Scheduler
cups.service loaded active running CUPS Printing
Service
[...]
LOAD = Reflects whether the unit definition was properly loaded.
ACTIVE = The high-level unit activation state, i.e. generalization of SUB.
SUB = The low-level unit activation state, values depend on unit type.
JOB = Pending job for the unit.
107 units listed. Pass --all to see inactive units, too.
To restrict the output to services that failed to start, use the --failed option:
Example 8.2:
List Failed Services
jupiter.example.com: ~ # systemctl --failed
UNIT LOAD ACTIVE SUB JOB DESCRIPTION
apache2.service loaded failed failed apache
NetworkManager.service loaded failed failed Network Manager
plymouth-start.service loaded failed failed Show Plymouth Boot Screen
[...]
8.2.3.2 Debug Start-Up Time
To debug system start-up time, systemd offers the systemd-analyze command.
It shows the total start-up time, a list of services ordered by start-up time and can also
generate an SVG graphic showing the time services took to start in relation to the other
services.
Listing the System's Start-Up Time
jupiter.example.com: ~ # systemd-analyze
Startup finished in 2666ms (kernel) + 21961ms (userspace) = 24628ms
The systemd daemon 147