ブログ

sshでログイン時に、ログアウトしても継続するコマンドを実行する方法

at_ito
2017年5月8日 7時26分

sshを使用してログイン後、バックグラウンドでコマンドを実行し、ログアウトをすると実行したコマンドは終了してしまいます。ここではログアウト後も継続してバックグラウンドでコマンドを実行したい場合に使える方法について紹介します。

sshログアウト時にバックグラウンドで実行したコマンドが終了するのは、ログアウト時にプロセスがシグナル(HUP)によって終了させられるためです。

そのため、HUPシグナルを無視するためのコマンドであるnohupを使用します。

例えば「test.sh」というシェルスクリプトを、ログアウト後もバックグラウンドで動かしたい場合には、以下のようなコマンドを実行します。

[armadillo ~]# nohup ./test.sh &