【回答】
nohupでプログラムを実行した場合、プログラムはジョブではなくプロセスとして管理されます。この場合プログラムを実行したユーザがログアウトしてもプログラムは終了しません。
出力は標準出力に出力できない(ログアウトした場合など)代わりに、nohup.outに出力されます。
一般的にユーザがログアウトする場合、実行中のプロセスには "SIGHUP"シグナルが送信されます。ただし nohup で実行したプロセスにはこの"SIGHUP"シグナルが送信されないため、ログアウトした後でもプログラムは実行されます。
ユーザが再度ログオンすればプログラムを終了させることは可能です。プログラムの実行に長時間必要でありログアウト後もプログラムの実行を継続させたい場合などに使用します。
bash では
/usr/bin/nohup
が実行される。
# nohup --help
Usage: nohup COMMAND [ARG]...
or: nohup OPTION
Run COMMAND, ignoring hangup signals.
--help この使い方を表示して終了
--version バージョン情報を表示して終了
(*)本ページは Redhat Enterprise Linux 4以後を想定しています。
最終更新日:2013/09/25
[Redhat Enterprise linux 6(EL) FAQ トップへ]
[FAQ CENTER トップ]