Por que meu sistema fica travado quando eu executo ps, w e possivelmente outros comandos?

9

Não sei por que, mas não consigo executar os comandos ps ou w na minha máquina Ubuntu 10.04LTS. Fiz um rastreamento para ambos e parei ao ler parte do mesmo arquivo.

Aqui é o resultado da execução de ps

E aqui é o resultado para w

O arquivo também parou ao ler ... em si? link

O que está acontecendo?

    
por user69239 26.02.2011 / 02:56

3 respostas

9

Eu tive que acontecer uma vez quando um servidor NFS caiu.

O fato de que ele travou a tentativa de ler informações sobre o pid 17398 e o pid 17398 está no estado D (wait do disco), sugere que isso pode ser a causa para você também.

read(6, "Name:\tconvert\nState:\tD (disk sle"..., 1023) = 664
open("/proc/17398/cmdline", O_RDONLY)   = 6

Se você tem montagens NFS, acho que a melhor opção é tentar recuperar o servidor NFS.

Caso contrário, umount -f <mount> pode ajudar.

    
por 26.02.2011 / 03:11
3

suspiro o tratamento de perguntas fechadas é muito ruim, essa será a terceira vez que eu tento digitar isso, então, por favor, perdoe a clareza.

Primeiro, use intr montagens NFS. As montagens de hard NFS padrão ficam suspensas para sempre. soft O NFS monta o erro após um tempo limite (o que pode ser estúpido para erros transitórios). intr permite que você decida interromper uma operação NFS travada. Apenas certo.

Segundo, para corrigir esse problema estúpido, usei um truque estúpido antes, provavelmente ainda funciona. Criar um alias de interface em lo com o endereço IP do servidor NFS ( edit : ifconfig eth0:0 <ipaddress> ). Crie um arquivo /etc/exports que contenha uma linha para exportar o sistema de arquivos em que você está pendurado ( edit : exporte um sistema de arquivos com o mesmo nome do sistema de arquivos 'suspenso'; você terá que criar o mesmo nome de caminho do que você montou). Inicie seu servidor NFS em sua máquina local e esperamos que o seu programa travado possa gerar um erro com "arquivo não encontrado" ou "diretório não encontrado" ou algo assim, permitindo que você continue seu trabalho sem reinicializar.

Não esqueça de desligar o servidor NFS novamente e remover o alias da interface quando terminar.

    
por 26.02.2011 / 03:29
2

Não sei por que o foco no NFS? O consulente está executando o NFS? Não vi nada sobre isso.

De qualquer forma, este é um problema muito estranho desde o seu / proc. Experimente o seguinte para obter mais informações sobre o problema:

  • Entre em / proc e encontre outros diretórios pid e tente ler os arquivos cmdline desses diretórios.
  • Tente ler / proc / pid / stat também, se isso não funcionar, eu diria que seu sistema está tendo problemas no kernel.
  • Você consegue executar o netstat -n? Isso lê de diferentes partes do / proc, então pode funcionar e indicaria menos problemas com a interface proc.
  • Tente remontar / proc com mount -o remount / proc, embora eu não tenha ideia do que isso faria nessa situação.

Gostaria apenas de sugerir a reinicialização. Se você não consegue ler coisas de proc, não tenho certeza do que você vai encontrar através de outros métodos. Se isso acontecer novamente, comece a se preocupar.

    
por 26.02.2011 / 06:50

Tags