Como posso habilitar despejos de falhas do kernel no Debian?


9

Quero habilitar despejos de memória do kernel para minha máquina Debian 5.0.7. A versão do kernel é 2.2.26 amd64.

Como posso configurar isso?


Não me lembro do Kernel 2.2.x com suporte para AMD64 ... Este número de versão está correto?
Turbo J

Respostas:


7

Você também pode querer olhar o kdump-toolspacote do Debian para automatizar algumas das etapas necessárias no tempo de inicialização.

Os passos são aproximadamente,

  1. sudo apt-get install kdump-tools
  2. Situado USE_KDUMP=1em/etc/default/kdump-tools
  3. Adicione crashkernel=128Mà linha de comando do kernel fornecida na configuração do gerenciador de inicialização (por exemplo /etc/default/grub). Também não nmi_watchdog=1custa passar tão bem para garantir que travamentos difíceis sejam pegos.
    • Observe que 128 MB é apenas uma figura aproximada. Ele precisa ser grande o suficiente para acomodar a imagem do kernel e o ramdisk init associado.
    • Se o seu disco initram for grande, você poderá reduzi-lo ajustando /etc/initramfs-tools/initramfs.conf
  4. Verifique se a configuração do carregador de inicialização está atualizada (por exemplo sudo update-grub)
  5. Verifique se o seu kernel é construído com,
    • CONFIG_RELOCATABLE=y
    • CONFIG_KEXEC=y
    • CONFIG_CRASH_DUMP=y
    • CONFIG_DEBUG_INFO=y
  6. Reiniciar
  7. Verifique se o kernel de falha está carregado, cat /sys/kernel/kexec_crash_loaded
  8. Opcional: teste se tudo isso funcionou,
    1. sudo sync; echo c | sudo tee /proc/sysrq-trigger
    2. Use a crashferramenta para examinar o despejo de memória resultante
  9. Encontre uma boa dose de uísque para aliviar a dor do seu futuro na depuração do kernel.

Voto positivo para a referência de uísque. (E qualquer outra coisa).
clearlight

4

Uma resposta curta, mas ...

Vá para a fonte do seu kernel (por exemplo, cd / usr / src / linux /) e configure as opções para o próximo kernel (make menuconfig). Vá para "Tipo e recursos do processador". Ative "despejos de falha do kernel". (CONFIG_CRASH_DUMP = y)

Crie um novo kernel, instale.

Em seguida, leia-os para obter mais informações: Linux-Crash-HOWTO.pdf e lkcd utils


11
E para verificar se já está ativado: grep CONFIG_CRASH /boot/config-$(uname -r)
Matthew Flaschen
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.