首页 > 解决方案 > 在 systemd 服务文件中使用之前/之后是否有任何先决条件?

问题描述

我有两个服务文件,看起来都像这样:

[Unit]
Description=A service
[Service]
User=root
#change this to your workspace
WorkingDirectory=/data/acloud/repository/lib
#path to executable. 
#executable is a bash script file I created to run the application jar file
ExecStart=/data/acloud/repository/lib/program.sh
SuccessExitStatus=143
TimeoutStopSec=10
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target

After=在其中一个文件中添加了希望它只会在其他服务启动后启动。但它不起作用。即使没有启动其他服务,它也可以正常启动。我不明白为什么。

另外,我放入Requires=<other service>同一个文件并删除了该after子句。它按预期工作。另一个服务在启动时会自动启动。

任何帮助表示赞赏。谢谢。

标签: servicesystemd

解决方案


推荐阅读