post-stop 中にすべての子プロセスを終了する upstart プロセスがあります。
post-stop exec killall my-process & exec sleep 10
これは期待どおりに動作しますが、次の 2 つのケースについては不明です。
killall プロセスがバックグラウンド プロセスとして実行されていない場合:
post-stop exec killall my-process && exec sleep 10
または、スリープ プロセスを完全に削除した場合:
post-stop exec killall my-process
これら 2 つのシナリオで initctl stop を実行すると、次のエラーが返されます。
initctl: Job failed while stopping
最初の例は期待どおりに停止するのに、他の 2 つの例は適切に停止しないのはなぜでしょうか?