Kdump es un mecanismo avanzado de volcado de datos. Cuando está habilitado, el sistema se inicia desde el contexto de otro núcleo. Este segundo kernel reserva una pequeña cantidad de memoria y su único propósito es capturar la imagen de volcado del núcleo en caso de que el sistema falle. Dado que poder analizar el volcado del núcleo ayuda significativamente a determinar la causa exacta de la falla del sistema, se recomienda enfáticamente tener esta función habilitada.
Kexec es un mecanismo de inicio rápido que permite iniciar un kernel de Linux desde el contexto de un kernel que ya se está ejecutando sin pasar por el BIOS. Kdump usa kexec para arrancar en un segundo kernel cada vez que el sistema falla.
# up2date --nox -u kexec-tools Fetching Obsoletes list for channel: el5_i386_latest... ######################################## Fetching rpm headers... ######################################## Name Version Rel ---------------------------------------------------------- kexec-tools 1.101 194.4.el5.0.1 i386 Testing package set / solving RPM inter-dependencies... ######################################## kexec-tools-1.101-194.4.el5 ########################## Done. Preparing ########################################### [100%] Installing... 1:kexec-tools ########################################### [100%]
Los valores especificados deben indicar que kexec está habilitado y que este kernel se puede usar como un kernel bloqueado:
# cat /boot/config-`uname -r` CONFIG_KEXEC=y CONFIG_CRASH_DUMP=y ...
Edite el archivo /etc/grub.conf y agregue "crashkernel=128M@16M" a la línea del núcleo para reservar 128 MB de memoria, comenzando en la dirección física 0x01000000 (16 MB)
# vi /etc/grub.conf ... title Red Hat Enterprise Linux Server (2.6.18-8.el5) root (hd0,0) kernel /vmlinuz-2.6.18-8.el5 ro root=/dev/VolGroup00/LogVol00 rhgb quiet crashkernel=128M@16M initrd /initrd-2.6.18-8.el5.img ...
La cantidad de memoria reservada puede variar dependiendo de la cantidad de memoria en el sistema.
Se pueden especificar diferentes tipos de ubicaciones de destino de volcado en el archivo /etc/kdump.conf. Puede especificar un directorio de su elección en este archivo. Por ejemplo:
path /usr/local/cores
A continuación se muestra una entrada de muestra que utiliza NFS como ubicación para el destino de volcado. Por ejemplo, a continuación montará el sistema de archivos y copiará
el archivo vmcore al servidor NFS
net my.server.com:/export/tmp
Para obtener más opciones, consulte /etc/kdump.conf.
Este archivo define la especificación del núcleo de captura de volcado, incluidos su nombre/ubicación y la línea de comandos para el núcleo si va a ser diferente del núcleo que se está ejecutando actualmente.
# cat /etc/sysconfig/kdump KDUMP_KERNELVER="" KDUMP_COMMANDLINE="" KDUMP_COMMANDLINE_APPEND="irqpoll maxcpus=1" KEXEC_ARGS=" --args-linux" KDUMP_BOOTDIR="/boot" KDUMP_IMG="vmlinuz"
KDUMP_COMMANDLINE modify the default crash kernel command line from /proc/cmdline KDUMP_COMMANDLINE_APPEND adds irqpoll and maxcpus=1 to the command line for the crash kernel KEXEC_ARGS adds --args-linux to the kexec command line KDUMP_BOOTDIR is set to /boot KDUMP_IMG specifies the crash kernel image name, defaulting to /boot/vmlinuz with the current kernel version appended
El servicio Set kdump se puede iniciar cuando se reinicia el sistema.
# chkconfig kdump on
Nota:no se puede iniciar porque el nuevo parámetro del kernel aún no está en vigor.
Verifique que kdump esté activo:
# cat /proc/cmdline ro root=/dev/VolGroup00/LogVol00 rhgb quiet crashkernel=128M@16M
# /etc/init.d/kdump status Kdump is operational
# /sbin/chkconfig --list |grep kdump kdump 0:off 1:off 2:on 3:on 4:on 5:on 6:off
# echo c > /proc/sysrq-trigger
Esto hace que el kernel entre en pánico, seguido de que el sistema se reinicie en el kernel kdump. Cuando el proceso de inicio llega al punto en que inicia el servicio kdump, el archivo vmcore debe copiarse en el disco en la ubicación especificada en el archivo /etc/kdump.conf.
CentOS / RHEL 6:Cómo configurar kdumpCentOS / RHEL 7:Cómo configurar kdump
Cómo configurar Kdump en SuSE Linux Enterprise System 10 y 11