nohupを使用してスクリプトを無期限に実行するように設定する

nohupを使用してスクリプトを無期限に実行するように設定する

私はそれに慣れておらず、私のWebサーバーLinuxにのみ使用します。私が経験した問題はこんな感じです。SSHPutty

デフォルトではスクリプトが2つありますphp。 1人はget_tweets.phpTwitterのツイートを継続的に聴き、Streaming APIもう1人はparse_tweets.phpそのツイートを記録しますdb。便利に使用するには、継続的に実行する必要があります。

私は次のコマンドを使用してバックグラウンドで実行してきましたが、私が見ることができる限り、一日中実行されますが、朝にコンピュータにログインするたびに停止し、scriptsコマンドを再実行する必要があります。

nohup php my_script.php > /dev/null &

nohup私が使用しているコマンドに応じて、これが正常なのか、それを使用するときに無期限に実行する必要があるのか​​、それ以外の場合は代替策は何ですか?職業CRON

ご協力ありがとうございます

ベストアンサー1

また、nohupエラーをリダイレクトする必要があります。次のコマンドはスクリプトを実行し、出力とエラーを/ dev / nullにリダイレクトします。

nohup php my_script.php >/dev/null 2>&1 &

ただし、他の理由により(スクリプトエラー、oom-killerなど)スクリプトが終了する可能性があります。したがって、システムのinitを介してそれをデーモン化する必要があります(自動再起動をサポートしている場合は、upstart、systemd、および他のいくつかの機能がこれを実行できます)。または、スクリプトが実行されていない場合は、クローンジョブを作成してスクリプトを確認して再起動する必要があります。

おすすめ記事