web-dev-qa-db-ja.com

特定のユーザーによって実行されているプロセスを強制終了します

複数のユーザーが '' Ruby ''プロセスを同時に実行しているとしましょう。特定のユーザーの「Ruby」プロセスを強制終了するシェルコマンドを作成するにはどうすればよいですか? (私はCentOS 5.5を使用しています。)

6
Trevor Burnham

pkillはこれに適しています。

pkill -u particularUser Ruby

これを実行する前に、pgrepをテストとして使用して、通知されるプロセスのプロセス名とPIDを確認できます。

pgrep -u particularUser -l Ruby
10
Kyle Brandt

-uスイッチを使用してkillallを使用し、スコープを1人のユーザーに制限できます。したがって、ユーザーabcの場合、次のようにすることができます:killall -u abc /usr/bin/Ruby(またはRuby proccesses)に一致するものすべて)

man killallから:

-u、-user
Killは、指定されたユーザーが所有するものだけを処理します。コマンド名はオプションです。

1
Zypher

最悪の場合、ユーザーとしてログインまたはsu -できる場合は、有名なkill -9 -1コマンドをユーザーとして発行してプロセスをクリーンアップできます。

ルートとして実行しないでください:)

1
ewwhite