小编Bug*_*ler的帖子

用另一个系统单元启动和停止一个系统单元

我有两个服务 A.service 和 B.service。当 A 退出/被杀死/停止时,我希望 B 停止。另外,我希望 B 在 A 重新启动时重新启动。我尝试了如何使用另一个系统启动和停止系统单元中给出的答案 并按如下方式设置我的文件:-

A.服务

[Unit]
Description=A
Before=B.service
Requires=B.service
[Service]
ExecStart=/usr/share/A
ExecStopPost=/usr/evo/exit_handler.sh %p
Restart=always
StartLimitBurst=3
StartLimitInterval=300
Run Code Online (Sandbox Code Playgroud)

B.服务

[Unit]
Description=B
BindsTo=A.service

[Service]
Type=forking
ExecStart=/usr/share/B start
ExecStop=/usr/share/B stop
StartLimitBurst=5
StartLimitInterval=10
Restart=always
Run Code Online (Sandbox Code Playgroud)

当我杀死 A 或执行 systemctl restart A 时,我看到 B 重新启动。但是当 A 以状态 0 退出时,我没有看到 B 重新启动。我已启用 systemd 调试登录,我看到 A 的状态变为死机但未自动重启

linux systemd

9
推荐指数
1
解决办法
5066
查看次数

标签 统计

linux ×1

systemd ×1