Linuxでnohupを使用してデーモンプロセスを作成する方法は?
“nohup”コマンドを使用してプロセスをデーモン化するには、次の手順に従って操作してください:
- 端末を開いてまたはLinuxサーバーにログインしてください。
- 以下のコマンド形式を入力してください。
- nohupコマンド > output.log 2>&1 &
- 上記のうち、「command」は実行するコマンドを指し、「output.log」は出力ログのファイル名を指します。「>&1」は標準エラーを標準出力にリダイレクトします。「&」記号はそのコマンドをバックグラウンドで実行することを示します。
- 例えば、”example.sh”というシェルスクリプトを実行して、出力を”output.log”ファイルにリダイレクトするには、次のコマンドを使用します。
- nohup ./example.sh > output.log 2>&1 &実行中の ./example.sh を nohup コマンドで、output.log にリダイレクトしてバックグラウンドで実行する。
- エンターキーを押すと、コマンドが実行されます。この時、コマンドはバックグラウンドで実行され、ターミナルが閉じても影響を受けません。
- 出力を確認するには、次のコマンドを使用できます:
- output.logを常に監視してください。
- これはログのリアルタイム表示をします。
ご注意事項:
- nohupコマンドを実行すると、”nohup.out”というファイルが現在のディレクトリに作成され、コマンドの出力が含まれます。デフォルトのファイル名として”output.log”を使用することもできます。
- nohupコマンドを実行する前に、実行するコマンドのスクリプトがあるディレクトリに移動することをお勧めします。可能なパスの問題を回避するためです。
- 守護プロセスを停止するには、「ps」コマンドを使ってそのプロセスのPIDを見つけ、「kill」コマンドで停止させることができます。例:ps -ef | grep example.sh
kill PIDここでの「PID」はプロセスのIDを表します。