シェルスクリプトをデーモンとして実行する起動スクリプト

シェルスクリプトをデーモンとして実行する起動スクリプト

私はDebian Stretchとsystemdバージョン231-9を使用しています。

ログアウトするときも、バックグラウンドで一部のシェルスクリプトとデーモン以外のプログラムを実行する必要があります。

私はLSBヘッダーを持つ単純なinit.dスクリプトを作成し、起動オプションを使用して単に "my_script.sh >> /var/log/my_script.log 2>&1&"を実行してmy_script.shをバックグラウンドで実行しましたが、今Systemdは、端末を閉じると、何を試しても、それらを殺します。 &, nohup, setid, disown.

スクリプトやデーモン以外のプログラムをデーモンとして実行するための正しいinit.dスクリプトのレシピを提供するのに役立ちますか?

ありがとうございます。

ベストアンサー1

あなたのものがルート所有の場合は、次のことを行います/etc/rc.local

screen -dmS ThingOne /path/to/thing-one
screen -dmS ThingTwo /path/to/thing-two

または、すべてのユーザー(ルートを含む)の場合は、cronテーブルで次の操作を行います。

@reboot screen -dmS ThingOne /path/to/thing-one
# et cetera

おすすめ記事