J'ai récemment effectué une installation intensive de programmes/packages, donc je ne peux pas dire avec certitude lequel des programmes nouvellement installés (ou des anciens programmes) a provoqué l'apparition d'un fichier core
dans mon dossier de départ. C'est un serveur, alors il vaut mieux que je trouve toutes les sources possibles d'instabilité sur la machine.
Vous pouvez simplement utiliser le programme file
pour les identifier:
Par exemple
# file /var/core/core
/var/core/core: ELF 64-bit MSB core file SPARCV9 Version 1, from 'crs_stat.bin'
Utiliser souvent le programme de fichiers sur le fichier principal montrera l'exécutable erroné, comme expliqué par @Benj dans la réponse acceptée (code de la réponse de Benj):
# file /var/core/core
/var/core/core: ELF 64-bit MSB core file SPARCV9 Version 1, from 'crs_stat.bin'
Cependant, vous pouvez parfois recevoir une plainte concernant "trop de sections d'en-tête de programme":
core.some-lib.nnnn.nnnn: ELF 64-bit LSB core file x86-64, version 1 (SYSV), too many program header sections (1850)
Dans ce cas, vous pouvez essayer quelques alternatives:
strings core.some-lib.nnnn.nnnn | tail -50
gdb -c core.some-lib.nnnn.nnnn
Cela vous dira souvent quelque chose comme ceci: Core was generated by '/usr/local/bin/some-executable'
vous pouvez naviguer dans le répertoire où se trouve le fichier core.pid et exécuter gdb core core.pid