Ubuntuのすべてのユーザープロセスを強制終了しますか?


20

1人のユーザーのすべてのプロセスを強制終了する方法は?

私が作成するとき、私ps auxは複数のユーザーでプロセスのリストを取得し、name1たとえばユーザーのすべてのプロセスを強制終了したいです!Ubuntuでそれを行うコマンドは何ですか?



1
ユーザーが実在の人物である場合、これはおそらく良い考えではありません。また、時間を節約するためにプロセスを強制終了したいと思います。これは非常に悪い考えです。たとえば、Ubuntuのサービスはを使用して停止できますsudo service the-service-name stop。プロセスを
強制終了

回答:


27

この場合、それは非常に簡単で、killall一度に多数のプロセスを強制終了したり、他のシグナルを送信したりするために使用できます。「フィルタリング」オプションの1つは所有者です。killall --user name1


私は--user議論に気づかなかった、ありがとう!
jmtd

4
ことに留意すべきであるkillallなどのSolarisのUnixで殺し、すべてのことができ、実行中のプロセスを!参照:en.wikipedia.org/wiki/Killall
donothingsuccessfully正常に

これは、基本的にUbuntuの18にログオフ
ManoharさんレディPoreddy

14

誰も言及していないので別のオプションを追加しますが、私は好きではありませんkillall(solarisで使用すると、災害が発生する可能性があります)。

pkill よりポータブルです

pkill -u username

killallUbuntu にはありませんが、pkill既にインストールされています。
-david.perez

2

ユーザーを特定し、 killall -user <username>

セッションを強制終了するログインセッション強制終了に関連付けられたbash(または同様の)プロセスがあります。

ユーザーが何をしているかの潜在的に良い概要を取得するには-試してください pstree <username>


ユーザーの前に2つのダッシュが必要です。たとえば--user
-jmtd

1

インストールslay

aptitude install slay

次に発行しslay some-userます。

目的がわからないユーザー向けのものを削除すると、(再起動するまで)マシンが使用できなくなる可能性があることに注意してください。

本当にスレイをインストールしたくない場合:

ps -e -o user,pid | grep '^some-user ' | awk '{ print $2 }' | xargs kill

(ちょっと待ってください)

ps -e -o user,pid | grep '^some-user ' | awk '{ print $2 }' | xargs kill -9

1
Btw awkは何かをgrepできます。する必要はありません。代わりにgrep smth | awk使用できますawk '/smth/{...}'
ラッシュ

ここにあなたのための便利な小さな機能があります。 killuser () { ps faux| awk -v user=$1 '$1==user{ system("kill -9 " $2) }' ;};
-rcjohnson
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.