バックグラウンドでジョブを実行する
はじめに
SSH接続で時間のかかるジョブを実行して放置していると、SSH接続が切れてジョブも途中で終了してしまいます。
これを終了しないようにする方法を説明します。
&
殆どの場合 コマンドの最後に & を付けるとよいようです。
tar zcf backup.tar.gz /home/user &
nohup コマンド
nohupでコマンドを実行すると,ログアウトしてもプログラムを実行し続けます。
scpコマンドをバックグラウンドで実行したいときに、コマンドの最後に & をつけると、 パスワードの要求などがうまく動きません。
そういった時に以下のように nohup コマンドを使うとうまくバックグラウンドで処理できました。
nohup scp file user@192.168.xxx.xxx:/home/user
ジョブを終了させる
バックグラウンドで実行したけどやっぱり終了させたい時に、killコマンドで強制終了させます。
ps -ax kill -KILL プロセス番号