systemd Unit Explainer

Paste a systemd unit file — a .service, .timer, .socket, .mount, .path or .target — and get every directive back in plain English, grouped by section. Directives I don't recognise are flagged rather than hidden. Everything runs in your browser; nothing is uploaded. There's a cheatsheet at the bottom.

Load an example

Cheatsheet

[Unit] — metadata & ordering

  • Description= human label
  • After= / Before= ordering
  • Requires= hard dependency
  • Wants= soft dependency
  • Conflicts= can't co-run

[Service] — how it runs

  • Type= simple / forking / oneshot / notify
  • ExecStart= the command
  • Restart= on-failure / always
  • User= / Group= identity
  • Environment= env vars

[Timer] — scheduling

  • OnCalendar= wall-clock schedule
  • OnBootSec= after boot
  • OnUnitActiveSec= periodic
  • Persistent= catch up missed runs

[Install] — enablement

  • WantedBy= target that pulls it in
  • RequiredBy= hard version of above
  • Alias= alternate names
  • usually multi-user.target