Systemctl – service exit codes and status information explanation

systemd

When checking a service status via systemctl

systemctl status docker

the output is something like

● docker.service - Docker Application Container Engine
  Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
  Active: inactive (dead) (Result: exit-code) since Mon 2018-03-19 13:52:21 CST; 4min 32s ago
  Docs: https://docs.docker.com
  Process: 6001 ExecStart=/usr/bin/dockerd -H fd:// (code=exited, status=205/LIMITS)
  Main PID: 6001 (code=exited, status=205/LIMITS)

The question is about the part in bold: the main process exit code and status information.
Is there a list of all the codes and statuses along with their explanation ?


I know that most times it's self-explanatory (and I know the answer to the question here) but lately we get this question a lot at work (some people search via google but can't find it, other people open the systemd.service man page, search for e.g. code 203 and don't find it…) so I thought I might as well put it here so it's easier for people to find the answer via google.

Best Answer

Yes, but only since 2017 when Jan Synacek finally documented them in the systemd manual. Your work colleagues are simply reading the wrong page of the manual. ☺

Further reading

Related Question