GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo configurar kdump en Oracle Enterprise Linux (OEL 5,6)

Cuando el mecanismo de volcado de errores de kdump está habilitado, el sistema se inicia desde el contexto de otro kernel. Este segundo núcleo 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.

Ser capaz de analizar el volcado del núcleo ayuda significativamente a determinar la causa exacta de la falla del sistema y, por lo tanto, se recomienda enfáticamente tener esta función habilitada. Este capítulo explica cómo configurar, probar y utilizar el servicio kdump en Red Hat Enterprise Linux y proporciona una breve descripción general de cómo analizar el volcado del núcleo resultante mediante la utilidad de depuración de fallas.

Instalación del servicio kdump

Para usar el servicio kdump en su sistema, asegúrese de tener las herramientas kexec paquete instalado. Para hacerlo, escriba lo siguiente en un indicador de shell como root:

# yum install kexec-tools

Configuración del servicio kdump

Configuración del uso de la memoria

Para configurar la cantidad de memoria que se reservará para el kernel kdump, edite el /boot/grub/grub.conf archivo y agregue crashkernel=[size]M o crashkernel=auto . Tenga en cuenta que la opción crashkernel=auto solo reserva la memoria si la memoria física del sistema es igual o mayor que:

  • 2 GB en arquitecturas x86 de 32 y 64 bits

Un archivo de muestra /boot/grub/grub.conf

# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE:  You have a /boot partition.  This means that
#          all kernel and initrd paths are relative to /boot/, eg.
#          root (hd0,0)
#          kernel /vmlinuz-version ro root=/dev/sda3
#          initrd /initrd
#boot=/dev/sda
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title Red Hat Enterprise Linux Server (2.6.32-220.el6.x86_64)
        root (hd0,0)
        kernel /vmlinuz-2.6.32-220.el6.x86_64 ro root=/dev/sda3 crashkernel=128M
        initrd /initramfs-2.6.32-220.el6.x86_64.img

Configuración del tipo de objetivo

Cuando se captura un bloqueo del kernel, el volcado del núcleo puede almacenarse como un archivo en un sistema de archivos local, escribirse directamente en un dispositivo o enviarse a través de una red utilizando el protocolo NFS (Network File System) o SSH (Secure Shell). Solo se puede configurar una de estas opciones en este momento, y la opción predeterminada es almacenar el archivo vmcore en /var/crash/ directorio del sistema de archivos local. Para cambiar esto, como raíz, abra el archivo de configuración /etc/kdump.conf en un editor de texto y edite las opciones como se describe a continuación.

Para cambiar el directorio local en el que se guardará el volcado del núcleo, elimine el signo de almohadilla (“#”) del principio de la línea #path /var/crash y reemplace el valor con la ruta del directorio deseado. Opcionalmente, si desea escribir el archivo en una partición diferente, siga el mismo procedimiento con la línea #ext4 /dev/sda3 y cambie el tipo de sistema de archivos y el dispositivo (un nombre de dispositivo, una etiqueta de sistema de archivos, y UUID son compatibles) en consecuencia. Por ejemplo:

ext3 /dev/sda4
path /usr/local/cores

Para escribir el volcado directamente en un dispositivo, elimine el signo de almohadilla ("#") del comienzo de la línea #raw /dev/sda5 y reemplace el valor con el nombre de dispositivo deseado. Por ejemplo:

raw /dev/sdb1

Para almacenar el volcado en una máquina remota mediante el protocolo NFS, elimine el signo almohadilla ("#") del principio de la línea #net my.server.com:/export/tmp y reemplace el valor con un nombre de host válido y la ruta del directorio. Por ejemplo:

net penguin.example.com:/export/cores

Para almacenar el volcado en una máquina remota mediante el protocolo SSH, elimine el signo almohadilla (“#”) del principio de la línea #net [email protected] y reemplace el valor con un nombre de usuario y un nombre de host válidos. . Por ejemplo:

net [email protected]

Al transferir un archivo central a un destino remoto a través de SSH, el archivo central debe serializarse para la transferencia. Esto crea un archivo vmcore.flat en el directorio /var/crash/ en el sistema de destino, que la utilidad de bloqueo no puede leer. Para convertir vmcore.flat en un archivo de volcado que se pueda leer en caso de bloqueo, ejecute el siguiente comando como root en el sistema de destino:

# /usr/sbin/makedumpfile -R */tmp/vmcore-rearranged* < *vmcore.flat*

Configuración del recopilador principal

Para reducir el tamaño del archivo de volcado de vmcore, kdump le permite especificar una aplicación externa (es decir, un recopilador central) para comprimir los datos y, opcionalmente, omitir toda la información irrelevante. Actualmente, el único recopilador central totalmente compatible es makedumpfile.

Para habilitar el recopilador principal, como raíz, abra el archivo de configuración /etc/kdump.conf en un editor de texto, elimine el signo de almohadilla ("#") del principio del #core_collector makedumpfile -c --message-level 1 - d 31 y edite las opciones de la línea de comandos como se describe a continuación.

Para habilitar la compresión del archivo de volcado, agregue el parámetro -c. Por ejemplo:

core_collector makedumpfile -c

Para eliminar las páginas cero y las gratuitas, utilice lo siguiente:

core_collector makedumpfile -d 17 -c

Consulte la página man de makedumpfile para obtener una lista completa de las opciones disponibles.

Cambiar la acción predeterminada

De forma predeterminada, cuando kdump no puede crear un volcado del núcleo, se monta el sistema de archivos raíz y se ejecuta /sbin/init. Para cambiar este comportamiento, como raíz, abra el archivo de configuración /etc/kdump.conf en un editor de texto, elimine el signo de almohadilla ("#") del comienzo de la línea de shell #default y reemplace el valor con la acción deseada como se describe a continuación:

Acciones admitidas

Opción Descripción
reiniciar Reiniciar el sistema, perdiendo el núcleo en el proceso.
detener Detener el sistema.
apagado Apague el sistema.
cáscara Ejecute la sesión msh desde dentro de initramfs, lo que permite que un usuario registre el núcleo manualmente.

Por ejemplo:

default halt

Habilitación del servicio

Para iniciar el demonio kdump en el momento del arranque, escriba lo siguiente en un indicador de shell como root:

# chkconfig kdump on

Esto habilitará el servicio para los niveles de ejecución 2, 3, 4 y 5. De manera similar, escribir "chkconfig kdump off" lo deshabilitará para todos los niveles de ejecución. Para iniciar el servicio en la sesión actual, use el siguiente comando como root:

# service kdump start

Probar la configuración

Los siguientes comandos harán que el kernel se bloquee. Tenga cuidado al seguir estos pasos y de ninguna manera los utilice en una máquina de producción. Para probar la configuración, reinicie el sistema con kdump habilitado y asegúrese de que el servicio se esté ejecutando:

# service kdump status
Kdump is operational

Luego escriba los siguientes comandos en un indicador de shell:

# echo 1 > /proc/sys/kernel/sysrq
# echo c > /proc/sysrq-trigger

Esto hará que el kernel de Linux se bloquee, y el archivo dirección-YYYY-MM-DD-HH:MM:SS/vmcore se copiará en la ubicación que haya seleccionado en la configuración (es decir, en /var/crash/ por predeterminado).


Linux
  1. Cómo configurar la virtualización en Redhat Linux

  2. Cómo aumentar el número de inodo de disco en Linux

  3. Cómo configurar la replicación multimaestro de MySQL en Oracle Linux

  4. Cómo cambiar el ID de máquina de un sistema en Oracle Enterprise Linux 7

  5. Cómo configurar YUM para conectarse al repositorio público de Oracle en Oracle Enterprise Linux

Cómo instalar y configurar Redis en el sistema Linux

Cómo instalar y configurar AnyDesk en el sistema Linux

Cómo instalar y configurar Django en un sistema Linux

Cómo instalar y configurar PrestaShop en el sistema Linux

Cómo configurar la dirección IP estática en el sistema Linux

Cómo instalar y configurar Elasticsearch en el sistema Linux