cronジョブでデーモンプロセスを開始する

cronジョブでデーモンプロセスを開始する

私は何時間も次のことをしようとしました(Centos 6で)。

  1. cron はプロセス A を起動します。
  2. プロセスAは、プロセスBがまだ生きていることを確認する。
  3. プロセスBが存在しない場合、プロセスAはプロセスBを開始する。

問題は、プロセスAが終了した後にプロセスBも終了することです。

プロセスAとプロセスBの両方がbashスクリプトを実行します。

bin/bash script.sh &私は使用しようとしましたが、exec bin/bash script.sh成功しませんでした。コンソールでプロセスAを起動すると、プロセスBは終了しません。

私がやろうとしているのは理論的には可能です(例えば、cron実行プロセスでプロセスを起動し、それを維持するようにすること)。プロセスAが終了した後もプロセスBが維持されるようにプロセスBを開始する他の方法は何ですか?

ベストアンサー1

scriptForA.sh内部で使用されますnohup scriptForB.sh。これにより、親プロセスが終了したときに子プロセスが終了しなくなります。

終了すると、親プロセスはSIGTERMすべての子プロセスにシグナルを送信します。を使用すると、nohup子プロセスはシグナルSIGTERMを無視します。

おすすめ記事