nohup の使い方
ログアウトしても止まらないように動かす
書き方
nohup コマンド &
ログアウトするとシェルから送られる HUP の合図を無視させます。画面への出力は nohup.out に書かれます。
例
$ nohup ./long-task.sh &nohup: ignoring input and appending output to 'nohup.out'ログアウトしても止まらないように、後ろで動かします。画面への出力は nohup.out に書かれます。
$ nohup ./long-task.sh > task.log 2>&1 &
出力とエラーを task.log にまとめて書きます。
$ tail -f nohup.out
後ろで動いている処理の出力を見続けます。Ctrl+C で見るのをやめても、処理は止まりません。
よくある間違い・注意
- 最後の & を忘れると、前で動くのでプロンプトに戻りません。
- ずっと動かしておくサービスは、nohup ではなく systemd のサービスにするほうが安全です(落ちたときに自動で起動し直せます)。
実際に打って練習する
Linux レベル1 コースの Lv82「主が去っても nohup」で覚えます(第5章 見張りの塔(環境・ジョブ・ログ・時刻))。ブラウザの中のシミュレーターで、本物と同じように打って確かめられます。
Lv1〜16 は、登録不要・無料で遊べます(それより先はブロンズ以上のプランで遊べます)。