具有可选依赖项的 Systemd 服务文件

具有可选依赖项的 Systemd 服务文件

我正在为 myprog.service 创建一个服务文件,并且我想确保它仅在 PostgreSQL 启动后启动。

但是,如果用户没有安装 PostgreSQL,那么我希望它忽略该要求并让 myprog.service 启动。

SystemD 服务文件是否可以依赖于可选(可能不存在)的服务?

答案1

是的。如中所述systemd.unit(5)手册页,使用Wants=andAfter=指令,如下所示:

示例.服务:

[Unit]
Description=Example service
Wants=postgresql.service
After=postgresql.service

Wants=表示依赖项是可选的(与Requires或相对Requisite),并将After=其放在该单元之前。

相关内容