Como você pode obter mais informações sobre os processos quando o Linux é executado fora de memória?

StackOverflow https://stackoverflow.com/questions/120000

  •  02-07-2019
  •  | 
  •  

Pergunta

Eu tive recentemente um problema com oom-killer começa a matar processos depois de algum tempo. Eu podia ver que a memória foi consumido, mas pelo tempo que eu tenho para o servidor não estava claro o que mais consumiu. Existe um bom lugar não-óbvia de obter mais informação sobre oom-killer? Por exemplo. Informações detalhadas sobre os processos no momento da ativação, informação detalhada sobre os processos de mortos e as razões para a escolha?

Eu estou procurando um lugar específico para encontrar essa informação, ferramenta específica para reunir-lo ou alguma configuração para melhorar a comunicação oom-killer. Eu não estou procurando informações genéricas sobre oom-killer. / Var / mensagens por padrão irá conter apenas um relatório detalhado sobre a memória livre / alocados, mas não os processos específicos que foi alocado.

Foi útil?

Solução

Você pode verificar o arquivo de log de mensagens para ver qual processo foi morto e algumas informações relacionadas. Quanto aos motivos:

... o candidato ideal para a liquidação é um processo privilegiado recentemente começou, não que juntamente com ele é crianças usa muita memória, foi nice'd, e não faz nenhum raw I / O. Algo como uma compilação do kernel paralelo nohup'd (que não é uma má escolha, pois todos os resultados são salvos no disco e muito pouco trabalho é perdido quando um 'make' é terminada).

A partir aqui .

Você pode definir alguns processos ser imune ao assassino, ajustar o parâmetro swappiness no caso de você tê-lo muito baixo (que faz o gatilho feliz assassino) e verificar se há coisas listadas aqui

Outras dicas

Normalmente, você deverá receber uma mensagem em / var / log / messages, com uma quantidade bastante grande de detalhes relativos ao processo que foi morto pelo oom-killer.

Esta não é a resposta exata a sua pergunta, mas a página homem malloc(3) no Linux tem algumas informações sobre como desactivar a memória overcommit

echo 2 > /proc/sys/vm/overcommit_memory
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top