私のUbuntuLinux(12.04)で実行されているbash
プロセスはたくさんあります。ターミナルを閉じても、System Monitor
に表示されます。
以下のように殺してみましたが、そのままです。問題を診断する方法、なぜそれらを終了できないのですか?
user$ ps aux | grep bash
user 2807 0.0 0.0 9484 56 pts/20 Ss+ Mar18 0:00 /bin/bash
user 4431 0.0 0.1 9228 5616 pts/7 Ss 10:39 0:00 bash
user 4655 0.0 0.0 4372 844 pts/7 R+ 10:45 0:00 grep --color=auto --exclude-dir=.svn bash
user 5664 0.0 0.0 12764 12 pts/6 Ss Feb05 0:01 /bin/bash
user 5812 99.6 0.1 11276 7088 ? Rs Sep22 3923:00 bash
user 6174 0.0 0.0 13016 28 pts/19 Ss+ Feb13 0:04 /bin/bash
p 10964 0.0 0.0 11700 28 pts/2 Ss+ Feb11 0:01 bash
p 11126 0.0 0.0 7952 560 pts/3 Ss+ Feb11 0:00 bash
user 18195 0.0 0.0 17320 344 pts/9 Ss+ Apr22 0:29 /bin/bash
user 21721 0.0 0.0 15924 4 pts/10 Ss+ Feb01 0:10 /bin/bash
user 22915 4.7 0.3 19400 13056 pts/22 Rs+ Jul29 3950:07 /bin/bash
user 24030 0.0 0.0 13740 4 pts/23 Ss+ Mar24 0:15 /bin/bash
user 29787 0.0 0.1 9220 5572 pts/11 Ss+ Sep23 0:00 /bin/bash
user$
user$ pkill -f bash
pkill: 10964 - Operation not permitted
pkill: 11126 - Operation not permitted
user$ Sudo pkill -f bash
user$
user$ ps aux | grep bash
user 2807 0.0 0.0 9484 56 pts/20 Ss+ Mar18 0:00 /bin/bash
user 4431 0.0 0.1 9228 5616 pts/7 Ss 10:39 0:00 bash
user 4660 0.0 0.0 4372 844 pts/7 R+ 10:45 0:00 grep --color=auto --exclude-dir=.svn bash
user 5664 0.0 0.0 12764 12 pts/6 Ss Feb05 0:01 /bin/bash
user 5812 99.6 0.1 11276 7088 ? Rs Sep22 3923:21 bash
user 6174 0.0 0.0 13016 28 pts/19 Ss+ Feb13 0:04 /bin/bash
p 10964 0.0 0.0 11700 28 pts/2 Ss+ Feb11 0:01 bash
p 11126 0.0 0.0 7952 560 pts/3 Ss+ Feb11 0:00 bash
user 18195 0.0 0.0 17320 344 pts/9 Ss+ Apr22 0:29 /bin/bash
user 21721 0.0 0.0 15924 4 pts/10 Ss+ Feb01 0:10 /bin/bash
user 22915 4.7 0.3 19400 13056 pts/22 Rs+ Jul29 3950:29 /bin/bash
user 24030 0.0 0.0 13740 4 pts/23 Ss+ Mar24 0:15 /bin/bash
user 29787 0.0 0.1 9220 5572 pts/11 Ss+ Sep23 0:00 /bin/bash
「殺せない」bashプロセスがユーザーp
として実行されていることに注意してください。
user 6174 0.0 0.0 13016 28 pts/19 Ss+ Feb13 0:04 /bin/bash
p 10964 0.0 0.0 11700 28 pts/2 Ss+ Feb11 0:01 bash
p 11126 0.0 0.0 7952 560 pts/3 Ss+ Feb11 0:00 bash
user 18195 0.0 0.0 17320 344 pts/9 Ss+ Apr22 0:29 /bin/bash
ユーザーuser
として実行しているため、ユーザーp
のプロセスを強制終了することはできません。
Sudo
アクセス権がある場合は、rootまたはp
ユーザーとしてkillコマンドを発行できます。古いユーザーセッションである可能性がある場合は、kill -HUP
を使用する方がkill
だけではなく、編集者などが終了する前に未保存の作業のバックアップを保存できるためです。また、インタラクティブなシェルプロセス(つまり、古いセッション)は、通常のkill
の影響を受けない可能性がありますが、kill -HUP
は問題なく機能します。
ユーザーp
としてkillコマンドを発行するには:
user$ Sudo -u p kill -HUP 10964 11126
またはルートパワーを使用して:
user$ Sudo kill -HUP 10964 11126
ユーザーp
として実行されているプロセスの場合、ユーザーp
として発行されたkillコマンドは、rootによって発行されたkillコマンドと同じくらい強力です。通常のユーザーでさえ、彼らが自分自身を所有するプロセス。
システムでbashを殺すことはできないと思いませんか?アプリケーション/プログラムをbashで実行すると、bashで実行されているプログラムを強制終了できます。これで、bashで実行されるすべてのプロセスIDプログラムが見つかります。あなたがあなたのターミナルで示したように:
> user 4660 0.0 0.0 4372 844 pts/7 R+ 10:45 0:00 grep > --color=auto --exclude-dir=.svn bash
そのプロセスを殺してみてください:
Sudo kill 4660
または
Sudo kill -9 4660
何が起こっているのか教えてください