nginx.service
我想在 Debian (Buster) 下添加一个 systemd 插件。包含的ExecStartPre=
指令应在服务器启动之前从模板创建 Nginx 配置文件。
我遇到的问题是/lib/systemd/system/nginx.service
已经包含一个ExecStartPre=
,它检查 Nginx 配置文件的有效性。由于它是ExecStartPre=
在我的插件之前执行的,并且此时 Nginx 配置文件尚未完成,因此systemctl start nginx.service
失败。
我如何指示 systemd 执行我的ExecStartPre=
第一个(或者忘记 from ExecStartPre=
)/lib/systemd/system/nginx.service
?
更新 ExecCondition=
看起来很有希望,但显然在我的 systemd 版本(241)中不可用。
答案1
按照systemd.service 手册页ExecStart=
(相同语法):
如果为此选项分配空字符串,则要启动的命令列表将被重置,此选项的先前分配将不起作用。
因此解决方案是在指定之前添加ExecStartPre=
到您的插件中ExecStartPre=whatever
。