systemctl - 服务退出代码和状态信息说明

don*_*sti 22 systemd

通过以下方式检查服务状态时 systemctl

systemctl status docker
Run Code Online (Sandbox Code Playgroud)

输出是这样的

? docker.service - Docker 应用容器引擎
  已加载:已加载(/lib/systemd/system/docker.service;已启用;供应商预设:已启用)
  活动:自 2018-03-19 星期一 13:52:21 CST 起不活动(死)(结果:退出代码);4 分 32 秒前
  文档:https://docs.docker.com
  进程:6001 ExecStart=/usr/bin/dockerd -H fd://(代码=退出,状态=205/LIMITS)
  主 PID: 6001 ( code=exited, status=205/LIMITS )

问题是关于粗体部分:主进程退出代码和状态信息。
是否有所有代码和状态及其解释的列表?


我知道大多数时候它是不言自明的(我知道这里问题的答案)但最近我们在工作中经常遇到这个问题(有些人通过谷歌搜索但找不到它,其他人打开systemd.service手册页,搜索例如代码203并没有找到它......)所以我想我不妨把它放在这里,这样人们通过谷歌更容易找到答案。

Jde*_*eBP 18

是的,但直到 2017 年 Jan Synacek 终于在 systemd 手册中记录了它们。您的同事只是读错了手册页。☺

进一步阅读

  • 这很有帮助。我只想补充一点,即使调用成功并且没有失败,`systemctl` 在某些条件下会以代码 `3` 退出。有关更多详细信息,请参阅 [错误 77507](https://bugs.freedesktop.org/show_bug.cgi?id=77507)。 (2认同)