GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo podemos rastrear problemas de bloqueo de programas en Linux?

¿Hay, por ejemplo, ¿algún registro central o algo similar?

El lugar normal para los registros del sistema es /var/log/ . Lo que se coloca en cada registro depende de la configuración de syslog, pero normalmente todo, excepto los inicios de sesión, va a /var/log/syslog .

Esto no es garantía de que las aplicaciones individuales hayan dejado alguna pista allí en caso de que surja un problema. Pero ellos, o el shell, probablemente arrojarán algo a los flujos de error estándar/salida estándar, y si ejecuta una aplicación problemática en primer plano desde una terminal, podrá ver esas cosas.


En Ubuntu, las fallas de segmento se escriben en /var/log/kern.log . Lo probé creando un programa que falla en el segmento:

void main() {
    int *a=0;
    *a=0;
}

Después de la falla de segmento, había esta línea en /var/log/kern.log :

a.out[534]: segfault at 0 ip 08048432 sp bfaec8c0 error 6 in a.out[8048000+1000]

Linux
  1. Cómo depurar programas C en Linux usando gdb

  2. Cómo administrar archivos de registro usando Logrotate en Linux

  3. Linux:¿cómo rastrear un programa Java?

  4. Cómo vaciar un archivo de registro en Linux

  5. Cómo rotar archivos de registro de Apache en Linux

Cómo compilar y ejecutar programas C, C++ en Linux

Cómo cambiar el archivo de registro de Sudo predeterminado en Linux

Cómo rastrear y rastrear un proceso de Linux

¿Cómo puedo perfilar el código C++ que se ejecuta en Linux?

¿Cómo puede un kernel de Linux ser tan pequeño?

¿Cómo desmontar un sistema Linux?