Voici les instructions pas à pas qui vous guideront dans ce processus :

En supposant que vous obtenez quelque chose de ce genre:

$ clamscan --some-options some_file
Segmentation fault

La première chose à faire est de faire produire par le kernel un core dump. Pour un shell bourne-like (par ex. bash):

$ ulimit -c unlimited

Pour une shell C-like (par ex. tcsh):

> limit coredumpsize unlimited

Maintenant vous devriez apercevoir le message core dumped :

$ clamscan --some-options some_file
Segmentation fault (core dumped)

En regardant dans votre répertoire courant, vous devriez voir un fichier nommé core.

L'étape suivante est de charger le fichier core dans gdb:

$ gdb -core=core --args clamscan --some-options some_file
(gdb)

Vous devez maintenant voir le prompt gdb. Utilisez juste la commande bt au prompt pour obtenir de gdb l'affichage d'un backtrace complet.
Faites un Copier/Coller dans le rapport de bug. Vous pouvez utiliser la commande q pour quitter gdb.

    * Backtrace de clamd:

Utilisez ps pour obtenir le PID de clamd (premier nombre à partir de la gauche):

$ ps -aux (or ps -elf on SysV)
clamav 24897 0.0 1.9 38032 10068 ? S Jan13 0:00 clamd

Attachez gdb au processus en fonctionnement:

$ gdb /usr/sbin/clamd 24897

Remplacez 24897 avec le pid de clamd et ajustez le chemin de clamd. Vous devez maintenant obtenir le prompt gdb, comme:

(gdb)

Si vous voulez que clamd continue de fonctionner, tant que la faute de segmentation n'arrive par exemple, tapez la commande gdb continue , et attendez l'erreur, qui à ce moment la retournera au prompt gdb.
bt fournira un backtrace de la thread courante.
The command info threads will tell you how many threads there are.
The command thread n will change to the specified thread, after which you can use the bt command again to get it's backtrace.
So, you basically want to do:

info threads pour obtenir le nombre de threads et leur numéro d'id

Pour chaque thread, entrez:

thread id_number
bt

Quittez gdb avec la commande quit. Répondez y (ou o selon la langue) à la question sur le programme encore en cours de fonctionnement.

    * Strace: en option, si vous pensez que cela peut aider, la sortie de strace (pas expliquée ici).