2010-01-17 13 views
59

En Mac OS X, si envío SIGQUIT a mi programa C, termina, pero no hay un archivo de volcado de núcleo.¿Dónde se almacenan los volcados centrales en Mac?

¿Tiene que habilitar manualmente los volcados del núcleo en Mac OS X (¿cómo?), ¿O están escritos en otro lugar en lugar del directorio de trabajo?

+1

En lugar de quejarse, podría reformularlo; de hecho, su título ni siquiera tiene un verbo. Me encantaría poder votar su pregunta porque estoy interesado en el tema. Aún así, creo que la pregunta no está siguiendo la calidad requerida por SO. Tengo incluso una pregunta relacionada con el núcleo http://stackoverflow.com/questions/2207233/how-to-enable-full-coredumps-on-os-x Por cierto, los núcleos deben ubicarse en '/ núcleos' pero busque en esta carpeta usando la cuenta de terminal y raíz. – sorin

+5

@Sorin Una sugerencia no es un problema, la mezquindad sí lo es. – xyz

+1

@Sorin FYI 'are' es un verbo (linking).No es que realmente importe aquí, pero si estamos criticando la gramática, hagámoslo bien;) http://examples.yourdictionary.com/reference/examples/examples-of-linking-verbs.html –

Respuesta

79

Parece que están suprimidos por defecto. Correr

$ ulimit -c unlimited 

Permitirá a los volcados de memoria, y se coloca en/núcleos/as core.PID

10

por defecto, los directorios específicos en Mac OS X están ocultos. es posible que desee habilitar esta característica en el terminal y luego el volcado del núcleo debe ser visible dentro del directorio/núcleos.

defaults write AppleShowAllFiles com.apple.finder TRUE

+1

Gracias. Estaba navegando con Terminal (ls -lah), pero de todos modos es un consejo útil. – xyz

12

La respuesta anterior,

ulimit -c ilimitadas

obras - pero asegúrese de que ejecute en la misma terminal desde la que ejecutará el programa que descarga el núcleo. Necesita ejecutar el comando ulimit primero.

8

Además, el directorio/cores debe existir y el usuario que ejecuta el programa debe tener permisos de escritura en él.

+3

¡Acabo de limpiarlo, ocupando 186GB de mi espacio! – Dragonborn

19

En macOS, sus volcados de emergencia se manejan automáticamente por Crash Reporter.

puede encontrar traza archivos mediante la ejecución de Console e ir a usuario Informes de diagnóstico sección (debajo grupo de información de diagnóstico y uso ') o puede localizarlos en ~/Library/Logs/DiagnosticReports.

También puede verificar dónde se generan los volcados supervisando el archivo system.log, p. Ej.

tail -f /var/log/system.log | grep crash 

Los archivos de volcado de núcleo reales se pueden encontrar en /cores.

Consulte también:

Cuestiones relacionadas