Processo zumbi usando 100% de CPU

12

Um processo zumbi , que não deve estar usando nenhum recurso (RAM e CPU), está ocupando um núcleo inteiro no meu Ubuntu de 8-núcleos de 64 bits 11.10 Instalação do desktop.

Esta é a saída de ps -el|grep Z :

F S   UID   PID  PPID  C PRI  NI ADDR SZ WCHAN  TTY          TIME CMD
0 Z  1000 10317     1 99  80   0 -     0 exit   ?        19:27:15 java <defunct>

... e aqui está um trecho de top :

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                                                                
10317 deltik    20   0     0    0    0 Z  100  0.0   1170:17 java <defunct>
 1424 root      20   0  612m 193m 158m S   14  2.4 287:17.11 Xorg
12580 deltik    20   0  710m 135m  46m S    5  1.7  27:31.07 compiz

É assim que o processo zumbi surgiu:

  1. Eu abri um Java JAR chamado minecraft.jar . Este ativador faz o download de outro arquivo JAR para ~ / .minecraft / bin / minecraft.jar
  2. Esse JAR estava em execução quando eu tranquei meu computador com xscreensaver .
  3. Em seguida, inseri minha senha para desbloquear o computador e vi que a janela do Minecraft estava congelada.
  4. Tentei matá-lo (PID 10317) com gnome-system-monitor . Tornou-se um zumbi.
  5. kill -9 10317 foi ineficaz.
  6. xkill apenas fechou a janela "Minecraft"; ele não fechou o processo java subjacente.

Informação relevante:

Eu quero saber:

  1. Qual é o caminho para destruir esse processo de java sem reiniciar, se houver?
  2. Por que esse problema está acontecendo?
  3. O que posso fazer para evitar que esse problema aconteça novamente?
por Deltik 11.02.2012 / 01:13

4 respostas

8

O processo já foi reparado em init , então ele deve estar sendo coletado (caso contrário, a solução provavelmente seria matar seu pai). Parece que está preso em exit , com base no campo WCHAN .

Na verdade, ele pode estar fazendo algo (como criar um dump principal) que terminará e desaparecerá por conta própria. Infelizmente, é provável que ele esteja girando no kernel por causa de um driver quebrado e, por fim, sua única opção será reinicializar.

    
por 11.02.2012 / 02:14
5

Você já tentou sudo kill -SIGCHLD 1 ? Se isso não funcionar, você precisará reinicializar o sistema.

Mais sobre isso: link e link

    
por 24.07.2012 / 23:41
4

Processos de zumbis morreram, mas ainda não foram limpos (o ceifado é o termo correto) e, portanto, kill não funciona neles como um processo normal. O processo ainda está na tabela de processos, mas quando é um zumbi, os recursos foram desalocados.

Você pode tentar enviar um sinal SIGCHLD para o pai do processo, caso contrário o init deve tê-lo coletado e, eventualmente, o coletará. Se você quiser acelerar o processo, basta simplesmente reiniciar.

    
por 11.02.2012 / 02:15
1

Este é um bug do kernel. Você está usando o ecryptfs para criptografar seu diretório pessoal? Há um bug arquivado sobre isso no launchpad.net.

    
por 11.02.2012 / 04:44