← All checks

Failed systemd units

medium on-server

What it inspects

`systemctl --failed --no-legend`. No failed units passes, 1 or 2 warns (naming them), and 3 or more fails. If systemctl cannot run (no systemd), the check is skipped.

Why it matters

A failed unit is a service, timer or mount that stopped working and is usually still waiting for someone to notice: a backup that never ran, an updater that cannot start, a monitor that is down. Cleaning up failed units keeps real problems from hiding among old ones.

How to verify

systemctl --failed --no-pager

How to fix

Judgement step: read why each unit failed, fix or disable it, then clear the recorded failure with systemctl reset-failed.

Diagnose each failed unit, then fix or disable it needs your judgement

Any distro

# Look at each failed unit; the right action depends on why it failed.
#   systemctl --failed
#   systemctl status <unit>
#   journalctl -u <unit> -n 100 --no-pager
# Common causes and fixes:
#   - the service is not needed (leftover package, unused timer): disable it so it stops failing:
#       systemctl disable --now <unit>        (or `systemctl mask <unit>` to stop anything starting it)
#   - a missing file, wrong permission or bad configuration: fix that, then start it:  systemctl restart <unit>
#   - killed for lack of memory: see the swap_pressure check.
# After you fix the cause, clear the recorded failure so it stops being listed:
#   systemctl reset-failed <unit>
# `reset-failed` only clears the list. Without a real fix the unit fails again at the next start.
# This check warns for 1-2 failed units and fails for 3 or more.

References

Scan your server free