Buscar

10.4. Creación y acceso a un volcado del núcleo con coredumpctl

download PDF

La herramienta coredumpctl de systemd puede agilizar significativamente el trabajo con los volcados de núcleo en la máquina donde se produjo el fallo. Este procedimiento describe cómo capturar un volcado de núcleo de un proceso que no responde.

Requisitos previos

  • El sistema debe estar configurado para utilizar systemd-coredump para el manejo de los volcados del núcleo. Para verificar que esto es cierto:

    $ sysctl kernel.core_pattern

    La configuración es correcta si la salida comienza con lo siguiente:

    kernel.core_pattern = |/usr/lib/systemd/systemd-coredump

Procedimiento

  1. Encuentra el PID del proceso colgado, basado en una parte conocida del nombre del archivo ejecutable:

    $ pgrep -a executable-name-fragment

    Este comando mostrará una línea de la forma

    PID command-line

    Utilice el valor de command-line para verificar que el PID pertenece al proceso previsto.

    Por ejemplo:

    $ pgrep -a bc
    5459 bc
  2. Envía una señal de aborto al proceso:

    # kill -ABRT PID
  3. Verifique que el núcleo ha sido capturado por coredumpctl:

    $ coredumpctl list PID

    Por ejemplo:

    $ coredumpctl list 5459
    TIME                            PID   UID   GID SIG COREFILE  EXE
    Thu 2019-11-07 15:14:46 CET    5459  1000  1000   6 present   /usr/bin/bc
  4. Examine más a fondo o utilice el archivo del núcleo según sea necesario.

    Puede especificar el volcado del núcleo por PID y otros valores. Consulte la página del manual coredumpctl(1) para obtener más detalles.

    • Para mostrar los detalles del archivo del núcleo:

      $ coredumpctl info PID
    • Para cargar el archivo del núcleo en el depurador GDB:

      $ coredumpctl debug PID

      Dependiendo de la disponibilidad de la información de depuración, GDB sugerirá comandos a ejecutar, como por ejemplo

      Faltan los debuginfos por separado, utilice: dnf debuginfo-install bc-1.07.1-5.el8.x86_64

      Para más detalles sobre este proceso, consulte Sección 7.4, “Obtención de paquetes debuginfo para una aplicación o librería usando GDB”.

    • Para exportar el archivo de núcleo para su posterior procesamiento en otro lugar:

      $ coredumpctl dump PID > /path/to/file_for_export

      Sustituya /path/to/file_for_export por el archivo en el que desea colocar el volcado del núcleo.

Red Hat logoGithubRedditYoutubeTwitter

Aprender

Pruebe, compre y venda

Comunidades

Acerca de la documentación de Red Hat

Ayudamos a los usuarios de Red Hat a innovar y alcanzar sus objetivos con nuestros productos y servicios con contenido en el que pueden confiar.

Hacer que el código abierto sea más inclusivo

Red Hat se compromete a reemplazar el lenguaje problemático en nuestro código, documentación y propiedades web. Para más detalles, consulte el Blog de Red Hat.

Acerca de Red Hat

Ofrecemos soluciones reforzadas que facilitan a las empresas trabajar en plataformas y entornos, desde el centro de datos central hasta el perímetro de la red.

© 2024 Red Hat, Inc.