0

スクリプトの何が問題なのかを理解するのに苦労しています。私は Linux の世界に足を踏み入れたばかりなので、非常に些細なことを見落としている可能性があります。PCの起動時にデーモンを実行したいpythonスクリプトがあります。また、クラッシュした場合にリスポーンしたいと考えています。グーグルで数時間見た後、私はあきらめました:)

これが私がこれまでに試したことです:

description "some daemon service."

#start on startup
#stop on shutdown
#respawn


pre-start exec python3 /home/dato0011/PycharmProjects/untitled/main.py start

post-stop exec python3 /home/dato0011/PycharmProjects/untitled/main.py stop

initctl start "svc_name" を実行すると、initctl: Job failed to startエラーが発生します。

ありがとう

4

1 に答える 1

0

コマンドは、開始前/開始後のセクションではなく、スクリプト セクションに入力する必要があります。そうしないと、サービスはまったく開始されず、リスポーンなどのために追跡する PID がわかりません。

script
   exec python3 /home/dato011/PPycharmProjects/untitled/main.py start
end script

停止すると upstart は kill でプロセスを強制終了します。同じコマンドを別のパラメーターで実行して指定した方法で強制終了する方法が完全にはわかりません。私の場合、(nodejs) アプリケーションは終了時にイベントを処理し、そこでクリーンアップを行います。

また、開始および停止に initctl を使用する必要はありません。開始および停止コマンド (つまり、start svc_name) を使用するだけです。

于 2014-09-29T15:20:00.893 に答える