私は、Requires/After/Before/BindsTo フィールドを使用して、systemd で 4 つのサービスを順番に開始/停止します。
systemctl start service01
このような開始命令を開始します。
サービス01 -> サービス02 -> サービス03 -> サービス04
停止アクションは、service0[234]側のBindToを通じて設定されます。これらはservice01にバインドされているため、service01が停止した場合は他のサービスも停止されます。
ただし、いくつかの問題があるため、service02 と service03 の開始の間に 5 ~ 10 秒の遅延を設定する必要があります。
これに systemd を使用することは可能ですか?
もちろん、service03 の ExecStart の先頭に「sleep 10」を追加するだけでもかまいませんが、systemd をこれに使用する他の方法もあるかもしれません。
答え1
があるタイマーsystemd の単位。OnUnitActiveSec=
タスクにタイマーを使用する場合は、オプションを使用してみてください。