
ファイルのインデックス作成に使用していますrecoll
が、都合の悪いときに起動してしまいます。
F5 を使用しhtop
てビューをツリー ビューに変更し、プロセス リストをフィルターすると、マスター プロセスが実行中であり、その下に子プロセスが表示されます。終了オプションを選択するために F9 を押すと、SIGTERM
オプションに応答しないようなので、オプションを使用する必要がありますSIGKILL
。
親プロセスとそのすべての子プロセスを完全に強制終了するのではなく、一時停止または停止するオプションはありますか?
答え1
バージョン以降2.0.0
(2016年にリリース) の場合、 を押すc
と、プロセスとその子にタグを付けることができます。これは、 に表示される組み込みヘルプに記載されていますh
。
次に、 を押すとk
、タグ付けされたプロセスに信号を送信できます。選択可能なすべての信号のリストが表示されます。
答え2
信号を送信するSIGTSTP
か、または次のいずれかを選択できますSIGSTOP
。
SIGTSTP
Ctrl: +を押したときに送信される信号ですZ。プロセスを一時停止して停止します。bg
(バックグラウンドで再開) またはfg
(フォアグラウンドに戻して再開) を使用して再開できます。SIGSTOP
: プロセスを停止するだけです。無視したりブロックしたりすることはできません。シグナルを送信した場合にのみプロセスが再開されますSIGCONT
。
答え3
Spaceプロセスにタグを付けるには、を押します。kill コマンドは、タグ付けされたすべてのプロセスに適用されます。
プロセスとその子にタグを付ける簡単な方法はありませんが、ツリー ビュー ( t) ではそれらが連続してリストされるはずです。
recollの実行方法に応じて、プロセスは独自のプロセスグループ。そうであれば、 を使用してkill -STOP -1234
すべてのプロセスを一時停止できます。ここで、1234 はプロセス グループ ID (通常はグループ内の最初のプロセスのプロセス ID ですが、必ずしもそうとは限りません) です。 を使用して、ps -o pid,ppid,pgid,comm -C recoll
プロセスps -o pid,ppid,pgid,comm ww | grep -v recoll
グループ内に他のプロセスがあるかどうかを確認できます。htop にはプロセス グループへのインターフェイスはありません。
すべてのプロセスが と呼ばれる場合recoll
、より簡単な方法は、名前でプロセスをフィルタリングすることです。htop で filter コマンドを使用すると、強制終了するプロセスに簡単にタグを付けることができます。コマンド ラインで を実行して、一致するプロセスをps $(pgrep recoll)
一覧表示します。一覧に問題がなければ、 を実行してpkill -STOP recoll
それらのプロセスを一時停止します。