例如,我有一些通常相互冲突的服务(相同的端口等)。但我从来不需要它们同时运行。例如,如果我启动 service a
,它会检查 或 是否b
正在c
运行并停止它们?如果其他服务未运行,则它会b
正常启动。但如果是的话,它会stop
向其他服务发送命令。
作为现在的解决方法,我只有一个 .sh 运行systemctl stop a.service
一个 while 循环,grepssystemctl status a.service
直到它返回停止,然后运行systemctl stop c.service
一个 while 循环,grepssystemctl status c.service
直到它返回停止。两者返回停止后,然后运行systemctl start b.service
。然后我制作了相同的文件,但用于启动a.service
和c.service
,但在我看来,这个解决方法相当混乱,我想知道是否有官方的东西。
systemd ×1