計算時間がかかるPythonスクリプトをSSHが切れても実行続けたい
あまり使っていないとすぐ忘れるのでメモ用に投稿
- $ nohup {実行したいコマンド} -u &
実行したいコマンドをnohupと&で挟むことでバックグラウンドで処理を実行する。実行結果は作業ディレクトリに自動でできる"nohup.out"というファイルに出力される。
これまでJupyterで計算をしていて、バックグラウンド実行をしても処理は完了してもJupyter上に結果が出力されない、みたいな問題があった。-uオプションをつけることでバッファに留まることを回避できるっぽい。(これからやって見る)
出力ファイルnohup.outを任意のディレクトリ下におくには
- $ nohup {} > ~/{任意のディレクトリ}/out.log &
出力結果がnohuo.outファイルにどんどん溜まってしまってファイルが大きくなってしまうので、出力先を変更
実行状況を確認
- ps -u
psコマンドで進捗状況を確認できる。-uオプションをつけることでメモリの使用率とかも表示される。表示結果のPID列では実行中プロセスのIDを表示している。
任意のプロセスを停止するには
- kill -KILL {process ID}