Date création : 30-03-2008 14:07:23
 Vous êtes dans : GNU/Linux Astuces / Pages man [Section5 - Formats de fichiers]
CORE
Index
- NOM
- DESCRIPTION
- Nommage des fichiers image mémoire
- NOTES
- VOIR AUSSI
- TRADUCTION
NOM
core - Fichier image de la mémoire
DESCRIPTION
L'action par défaut de certains signaux et de faire se terminer un processus
et de produire un fichier image mémoire (« core dump file »). C'est un
fichier disque qui contient l'image mémoire du processus au moment où il
s'est terminé. Une liste des signaux provoquant la création de cette image
mémoire se trouve dans signal(7).
Un processus peut définir sa propre limite de ressource RLIMIT_CORE afin
de fixer une limite supérieure à la taille du fichier image mémoire qui sera
créé s'il reçoit un signal « core dump » ; voir getrlimit(2) pour
davantage d'informations.
Il y a diverses circonstances pour lesquelles un fichier image mémoire
(« core dump ») n'est pas produit :
- *
-
Le processus ne possède pas les droits pour écrire le fichier image de la
mémoire. (Par défaut, le fichier image de la mémoire s'appelle core, il
est créé dans le répertoire de travail en cours. Voir ci-dessous pour
davantage d'informations sur les règles de nommage). L'écriture du fichier
image de la mémoire échouera si le répertoire dans lequel il devrait être
écrit n'est pas accessible en écriture ou n'est pas un fichier normal (par
exemple, si c'est un répertoire ou un lien symbolique).
- *
-
Le répertoire dans lequel le fichier image de la mémoire doit être créé
n'existe pas.
- *
-
Les limites de ressources RLIMIT_CORE ou RLIMIT_FSIZE pour un
processus ont une valeur nulle (voir getrlimit(2)).
- *
-
Le binaire en cours d'exécution par le processus n'a pas les droits en
écriture activés.
- *
-
Le processus exécute un programme set-user-ID (respectivement, set-group-ID)
qui est détenu par un utilisateur (respectivement, un groupe) autre que
l'identifiant d'utilisateur (respectivement, de groupe) réel du
processus. (Voir cependant la description de l'opération prctl(2)
PR_SET_DUMPABLE, et la description du fichier
/proc/sys/fs/suid_dumpable dans proc(5)).
Nommage des fichiers image mémoire
Par défaut, un fichier image de la mémoire s'appelle core, mais le
fichier /proc/sys/kernel/core_pattern (depuis Linux 2.5) peut être
configuré de manière à définir un motif qui sera utilisé pour le nommage des
fichiers image de la mémoire. Le motif peut contenir des spécificateurs %
qui sont substitués par les valeurs suivantes lorsqu'une image de la mémoire
est créée :
%% Caractère % unique
%p PID du processus
%u UID réel du processus
%g GID réel du processus
%s Numéro du signal provoquant l'image mémoire
%t Heure à laquelle a été prise l'image mémoire
(en secondes depuis le 01/01/1970 à 00:00)
%h Nom d'hôte (identique à « nodename » tel que
le retourne uname(2))
%e Nom du fichier exécutable
Un % isolé à la fin du motif est éliminé du nom de fichier de l'image
mémoire, de même un % suivi d'un caractère autre que ceux de la liste
ci-dessus. Tous les autres caractères du motif conservent leur valeur
littérale dans le nom de fichier de l'image mémoire. Un motif peut contenir
des caractère « / », ils sont interprétés comme des délimiteurs pour les
noms de répertoires. La taille maximum du nom de fichier de l'image mémoire
résultant est de 64 octets. La valeur par défaut de ce nom de fichier est
« core ». Afin d'assurer une compatibilité ascendante, si
/proc/sys/kernel/core_pattern ne contient pas « %p » et si
/proc/sys/kernel/core_uses_pid (voir ci-dessous) est non-nul, alors .PID
est ajouté au nom de fichier de l'image mémoire.
Linux 2.4 ne fournit pas /proc/sys/kernel/core_pattern, mais il procure
une méthode plus primitive pour contrôler le nom du fichier image de la
mémoire. Si le fichier /proc/sys/kernel/core_uses_pid contient la valeur
0, alors le fichier image de la mémoire est tout simplement appelé
core. Si ce fichier contient une valeur non nulle, alors, le fichier
image de la mémoire intégrera dans son nom le numéro d'identification du
processus sous la forme core.PID.
NOTES
La commande gdb(1) gcore peut être utilisée pour obtenir une image
mémoire d'un processus en cours d'exécution.
Si une tâche multiprocessus (« multithreaded ») (ou, plus précisément, un
processus qui partage son espace mémoire avec un autre processus en étant
créé avec l'indicateur CLONE_VM de clone(2)) crée une image mémoire,
alors l'identifiant du processus (PID) est toujours ajouté au nom du fichier
image de la mémoire, à moins que l'identifiant du processus fasse déjà
partie du nom de fichier par l'intermédiaire d'une spécification %p de
/proc/sys/kernel/core_pattern.
VOIR AUSSI
gdb(1), getrlimit(2), prctl(2), sigaction(2), elf(5),
proc(5), signal(7)
TRADUCTION
Cette page de manuel a été traduite par
Jean-Luc Coulon (f5ibh) <jean-luc.coulon AT wanadoo DOT fr>.
La traduction de cette page de manuel est basée sur les traductions
disponibles sur http://manpagesfr.free.fr/,
mais est gérée par l'équipe francophone de traduction de Debian
au travers de la liste de discussion debian-l10n-french.
Veuillez signaler toute erreur de traduction par un rapport de bogue sur
le paquet manpages-fr.
Vous pouvez toujours avoir accès à la version anglaise de ce document en
utilisant la commande
« man -L C <section> <page_de_man> ».
|