En Ubuntu reciente (12.04 en mi caso), es posible que se imprima "Error de segmentación (núcleo objeto de dumping)", pero no se generó ningún archivo central donde podría esperar uno (por ejemplo, para un programa compilado localmente).
Esto puede suceder si tiene un tamaño de archivo central ulimit de 0 (no lo ha hecho ulimit -c unlimited
); este es el valor predeterminado en Ubuntu. Normalmente eso suprimiría el "(núcleo objeto de dumping)", lo percibe en su error, pero en Ubuntu, los archivos core son canalizados a Apport (sistema de informes de fallas de Ubuntu) a través del /proc/sys/kernel/core_pattern
, y esto parece causar el mensaje engañoso.
Si Apport descubre que el programa en cuestión no es uno por el que debería informar bloqueos (que se puede ver en /var/log/apport.log
), se vuelve a simular el comportamiento predeterminado del kernel de poner un archivo core en el cwd (se hace en el script /usr/share/apport/apport
). Esto incluye honrar a ulimit, en cuyo caso no hace nada. Pero (supongo) en lo que se refiere al kernel, se generó un archivo core (y se canalizó para su incorporación), de ahí el mensaje "Fallo de segmentación (núcleo volcado)".
En última instancia, PEBKAC por olvidarme de establecer ulimit, pero el mensaje engañoso me hizo pensar que me estaba volviendo loco por un tiempo, preguntándome qué se estaba comiendo mis archivos principales.
(También, en general, el núcleo (5) en el manual - man 5 core
- es una buena referencia para su archivo en el núcleo y termina por razones que no se podría escribir.)
¿El programa invocan chdir en algún momento ? Si es así, mira allí. –
¿El programa cambia su directorio de trabajo? Mira allí. –
Buscaría todo el disco duro para un archivo reciente;) –