服务启动请求重复太快,拒绝启动限制

Vik*_*ari 55 linux systemd

我有一个 systemd 服务,显示以下错误 service start request repeated too quickly, refusing to start

我知道该服务被配置为在失败时重新启动,并且它一次又一次地重新启动。但它究竟什么时候拒绝重启?是否有定义它的限制或数量?

此外,究竟是too quickly什么意思,它是给定时间段内重启次数的限制吗?

Sve*_*ven 52

默认限制是允许在 10 秒内重新启动 5 次。如果服务由于Restart=服务定义中的config 选项而超过该阈值,它将不再尝试重新启动。

速率由StartLimitIntervalSec=StartLimitBurst=选项配置,Restart=选项控制 SystemD 何时尝试重新启动服务。

更多信息man systemd.unitman systemd.service

然后用于systemctl daemon-reload重新加载单元配置。

  • 默认值*可以* 配置,例如在`/etc/systemd/system.conf` 中使用`DefaultStartLimitIntervalSec`(和类似的)选项。但是,这些通常没有设置,而是使用编译的默认值。参见`man systemd-system`。 (5认同)
  • 谢谢@Sven。这些配置在哪里定义? (3认同)

Pet*_*ter 7

不完全相同的问题,但由于这是搜索时出现的问题......

如果您只想启动它而忽略这个荒谬的限制胡说八道(例如在 Debian 上,这是 apt 自动启动服务的必然结果,在它们被配置之前注定它们会失败并循环并达到限制,在开始时向日志发送垃圾邮件限制您甚至无法轻松阅读原因的错误):

请参阅https://bugzilla.redhat.com/show_bug.cgi?id=1016548,其中 Michal Schmidt 说您可以在其中找到它man systemd.service并建议重置失败状态:

systemctl reset-failed <service name>
Run Code Online (Sandbox Code Playgroud)

所以现在您的服务可能会启动。或者至少不应该在日志中的实际最新原因,例如。看过journalctl -x

  • **开始忽略这个_荒谬_限制废话**,仅此一项就值得与白银同等重量(不是黄金:白银是我最喜欢的贵金属)!并感谢您的命令。这与修复权限(特别是所有权)相结合 - 新安装 - 解决了我的问题。 (2认同)