特定のユーザーのすべてのプロセスを確実に終了する方法はありますか?そのユーザーの不正なプロセスが最初に殺害プロセスを殺さない限り、そのユーザーが動作するように、kill(-1, SIGKILL)
が働きます。私が今までに見つけた最高のものは、そのユーザーのためにsystem("ps -u")
をループして、その方法でプロセスを終了させることですが、それは本当にハックして非効率なようです。与えられたユーザーのすべてのプロセスを終了させる
編集:明確にするために、私は具体的にはPOSIX互換のソリューションを求めています。何らかの理由で、私はposixという質問にタグを付けることで、それをタイトルに入れると思った。
それはここにすべてのソリューションは、(一般的にkill' 'の場合のように)[TOCTOU](HTTPSを持っていることは注目に値します:// CWEを競合状態:プロセスを特定してそれらを強制終了して終了させるプロセス間でプロセスが停止し、PIDがリサイクルされる可能性があります。または、そのユーザーが所有する新しいプロセスが、あなたには分かりません。 – pilcrow