11

無限ループのPHPスクリプトがあります。このスクリプトを永久に実行する必要があります。だから、私は実行します

php /path/to/script.php > /dev/null &

そして、それは私の現在のユーザーのセキュリティコンテキストでバックグラウンドで動作します。しかし、ターミナルウィンドウを閉じる(ログオフする)と、もちろん、CentOSLinuxは私のプログラムを強制終了します。

2つの推測があります。バックグラウンドで別のユーザーから実行するか、デーモンを作成します。それぞれの状況で助けが必要です。

どうもありがとう!

4

5 に答える 5

25

nohupはあなたの友達です。

nohup command &
于 2010-03-23T10:48:05.160 に答える
6

私はそれに対する一般的な解決策は次のとおりだと思いますnohup

nohupは、HUP(ハングアップ)信号を無視するPOSIXコマンドであり、コマンドを発行したユーザーがログアウトした後もコマンドを実行し続けることができます。HUP(ハングアップ)信号は、慣例により、ログアウトのプロセスに応じて端末が警告する方法です。

nohupは、デーモンとしてバックグラウンドでコマンドを実行するために最もよく使用されます。通常はターミナルに送られる出力は、まだリダイレクトされていない場合はnohup.outというファイルに送られます。このコマンドは、相互に依存する多数のバッチジョブを実行する必要がある場合に非常に役立ちます。

于 2010-03-23T10:48:21.463 に答える
1

nohupはあなたの友達です。

于 2010-03-23T10:48:50.150 に答える
1

あなたは出来る:

  • 画面をインストールし、そこからコマンドを実行します。screenは、実行したままにしておくことができる永続的なターミナルセッションです。
  • 起動時に読み込まれるように、init / upstart(使用するものは何でも)スクリプトを記述します
  • 梨ライブラリを使用するsystem_daemon
  • バッチ作業がシナリオにより適している場合はcronを使用します(同時実行性が問題になる場合は、別のインスタンスを起動する前に実行中のインスタンスを確認することを忘れないでください)
  • 編集:または他のみんなと彼らの兄弟がちょうど言ったように、nohup
于 2010-03-23T10:51:57.930 に答える
0

コマンドnohupyour_commandの使用 & たとえば、

nohup phantomjs highcharts-convert.js -host 127.0.0.1 -port 3003& ここでは「phantomjshighcharts-convert.js -host127.0.0.1-port3003」が私のコマンドでした




于 2016-11-28T12:10:48.880 に答える