¿Dónde ubuntu 14.04 suelta los archivos principales?

20

He habilitado un tamaño de archivo central ilimitado usando ulimit:

ulimit -a
core file size          (blocks, -c) unlimited
...

Creo que he desencadenado un volcado del núcleo, pero no puedo localizar el archivo del núcleo en mi casa, var / ... etc ...

¿Sabes dónde Ubuntu configura la ubicación de volcado del núcleo?

jcalfee314
fuente
@djf el OP no especificó qué programa estaba causando volcados del núcleo. Puede que no sea código de programador. Puede ser Unidad por todo lo que sabemos.
Rich Homolka
1
¿Cómo es esta una pregunta de Superusuario? Se trata de ejecutar un depurador que solo usan los programadores. Esto debería migrarse de nuevo a SO.
Homer6

Respuestas:

7

Creo que esto es más una cosa del kernel de Linux que una cosa específica de Ubuntu. Revisa

cat /proc/sys/kernel/core_pattern

Echa un vistazo a la página del manual del archivo principal

Rich Homolka
fuente
13
Eso no te dice dónde coloca el archivo. La pregunta llamada Ubuntu 14.04. No está claro en absoluto siguiendo el comando en /proc/sys/kernel/core_patterndonde uno encontraría el archivo.
jcalfee314
1
Para mí, ese pseudofile de kernel core_pattern hace referencia a un programa llamado 'apport' ... que no tiene página de manual ni mucha salida útil. Así que sigo buscando mis núcleos arrojados. :(
gojomo
1
apport es el controlador estándar de núcleo de escritorio de Linux que generalmente informa a su distribución.
kkron
¿Cómo abrir esta carpeta? cd /usr/share/apport/apportno trabajes
mrgloom
32

Por defecto, el kernel de Ubuntu está configurado para usar apport para registrar coredumps. Puede anular esto sobrescribiendo /proc/sys/kernel/core_pattern, consulte la sección "Nombramiento de archivos de volcado de núcleo" man corepara obtener más detalles. Por ejemplo:

echo '/tmp/core.%e.%p.%t' | sudo tee /proc/sys/kernel/core_pattern

Apport escribe volcados de núcleo /var/crash/_path_to_program.userid.crash, PERO solo lo hará para aplicaciones instaladas desde los principales repositorios de Ubuntu.

Más información sobre apport: https://wiki.ubuntu.com/Apport

maccam94
fuente
Para escribir volcados de núcleo también para programas que no sean paquetes, cree un archivo llamado ~ / .config / apport / settings con el siguiente contenido: [main] unpackaged = true
greuze
La modificación de / proc / sys / kernel / core_pattern no me funciona en Ubuntu 18.04
greuze
1

En Ubuntu 16.04.3 LTS, mi volcado de núcleo se encontraba en:

/var/lib/systemd/coredump/core.application-name.0.24d47e89526c4c7e90953998d2c33d1e.19672.1516049424000000000000

Entonces, para ejecutarlo gdb, puede ejecutar:

apt install gdb gdb /path/to/your/binary/application-name /var/lib/systemd/coredump/core.application-name.0.24d47e89526c4c7e90953998d2c33d1e.19672.1516049424000000000000

Homero6
fuente