プロセスの一時停止と再開
サーバが Disk full になりかけていたからとりあえずプロセスを suspend してくれといったら、バックグランドで実行してすでに実行した SSH セッションはログアウト済みなんだけどどうするの、と返された。suspend も resume も signal で実現されているということは案外知られていないものなのだな。まぁ、実際なんていう名前の signal かは自分も覚えていないけど。
プロセスの停止/再開の方法は簡単で、それぞれ kill を使って SIGSTOP と SIGCONT を送ってやれば良い。
% kill -STOP pid
で、suspend。
% kill -CONT pid
で、resume。
当然ながら、shell で実行中のプロセスは Ctrl-z で suspend できるし、fg/bg で resume できる。