web-dev-qa-db-ja.com

psはプロセスを見つけますが、killはしません

仕様

_[midas@localhost ~]$ uname -a Linux localhost.localdomain 4.0.4-301.fc22.x86_64 #1 SMP Thu May 21 13:10:33 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux_

そして

[midas@localhost ~]$ cat /etc/issue Fedora release 22 (Twenty Two)

問題の序文

Fedora 22にdnfを介して新しいパッケージをインストールしようとしました。(Linux 4.0.4)パッケージが52%でダウンロードを停止し、ターミナルウィンドウにそれ以上の進歩が表示されませんでした。

ダウンロードを中止し、同じ_dnf install [package name]_コマンドを使用して再起動を試みました。

その後、次の通知を受け取りました:_Waiting for process with pid 2967 to finish._

dnfがまだバックグラウンドで実行されていることがわかります:

_[midas@localhost ~]$ ps -A | grep 2967 2967 ? 00:00:01 dnf_

問題

プロセスをkillできると思ったのですが、

[midas@localhost ~]$ kill 2967 bash: kill: (2967) - No such process [midas@localhost ~]$ Sudo kill 2967 kill: sending signal to 2967 failed: No such process

psがプロセスをリストできても、killがそれを見つけられないのはなぜですか?

私は再起動がこれを解決することを知っています(または少しの忍耐さえも)。しかし、これらの2つのコマンドになぜそのような違いがあるのか​​について、私は興味があります。

3
Midas

リストされたプロセスはおそらくすでにゾンビプロセスであり、強制終了することはできません。そのライブ時間は、その親プロセスに依存しています。

uフラグをpsの呼び出しに追加すると、ゾンビプロセスのSTATであるZ列も表示されます。

たとえば、 https://stackoverflow.com/questions/16944886/how-to-kill-zombie-process 詳細については。

2
jofel