![允许用户使用 systemd 进行简短的“会话”](https://linux22.com/image/158968/%E5%85%81%E8%AE%B8%E7%94%A8%E6%88%B7%E4%BD%BF%E7%94%A8%20systemd%20%E8%BF%9B%E8%A1%8C%E7%AE%80%E7%9F%AD%E7%9A%84%E2%80%9C%E4%BC%9A%E8%AF%9D%E2%80%9D.png)
我正在测试我设置的新 gitlab 运行程序。
如果一个项目只有一个非常短的 CI 作业(或者一个很快失败的作业,这在测试设置之外可能更现实),systemd 开始报告“[电子邮件受保护]“失败,999 是 gitlab-runner 的 uid。作业按其应有的方式运行,如果它使它变慢(例如,通过添加睡眠),则不会失败。
搜索错误使我相信它只是 systemd 试图在每次为该用户启动新的“会话”时执行某些操作,并确定它必须被破坏,因为它在很短的时间内多次退出。我该如何允许这一点,最好只针对这一用户?
答案1
事实证明这是一个比我想象的更正常的单位。
并通过创建一个(实际上并不重要,它可以是任何(可能有一些例外)字符串),包含:/etc/systemd/system/[email protected]/override.conf
override
[Service]
StartLimitBurst=20
运行sudo systemctl daemon-reload
问题就消失了。 (我没有考虑太多这个值20
,这只是一个被证明有效的数字)
(如果您不需要自动化它,那么制作这样的文件的好方法是- 我发现的一些文档建议在制作这样的文件后,重新启动受影响的服务就足够了,这就是它似乎特别的地方,至少我还没弄清楚如何。)sudo systemctl edit [email protected]