Man page - core(5)

Packages contains this manual

Available languages:

en fr pl ja ru

Manual

core

NOM
DESCRIPTION
Nommage des fichiers image de la mémoire
Tuber les vidages mémoire vers un programme
/proc/sys/kernel/core_pipe_limit
ContrÎler quelles projections seront écrites dans le vidage mémoire
Vidages mémoire et systemd
NOTES
EXEMPLES
Source du programme
VOIR AUSSI
TRADUCTION

NOM

core — Fichier image de la mĂ©moire

DESCRIPTION

L’action par dĂ©faut de certains signaux consiste Ă  faire se terminer un processus et Ă  produire un fichier image de la mĂ©moire (« core dump file »). C’est un fichier qui contient l’image mĂ©moire du processus au moment oĂč il s’est terminĂ©. Cette image peut ĂȘtre utilisĂ©e dans un dĂ©bogueur (par exemple, gdb (1)) pour Ă©tudier l’état du programme 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 souple RLIMIT_CORE afin de dĂ©finir une limite supĂ©rieure Ă  la taille du fichier image de la mĂ©moire qui sera créé s’il reçoit un signal « core dump » ; consultez getrlimit (2) pour davantage d’informations.

Il y a diverses circonstances dans lesquelles un fichier image de la 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 ou core.pid , oĂč pid est l’identifiant du processus qui a gĂ©nĂ©rĂ© une image de la mĂ©moire. 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 si un fichier avec le mĂȘme nom existe et n’est pas accessible en Ă©criture ou n’est pas un fichier ordinaire (par exemple, si c’est un rĂ©pertoire ou un lien symbolique).

-

Un fichier (ordinaire et accessible en Ă©criture) avec le mĂȘme nom que celui qui serait utilisĂ© pour l’image de la mĂ©moire existe dĂ©jĂ , mais il y a plusieurs liens physiques vers ce fichier.

-

Le systĂšme de fichiers dans lequel serait Ă©crit le fichier image de la mĂ©moire est plein, il n’a plus d’inƓud, il est montĂ© en lecture seule ou l’utilisateur a atteint son quota pour le systĂšme de fichiers.

-

Le rĂ©pertoire dans lequel le fichier image de la mĂ©moire doit ĂȘtre créé n’existe pas.

-

Les limites de ressources RLIMIT_CORE (taille des fichiers « core ») ou RLIMIT_FSIZE (taille des fichiers) pour un processus sont dĂ©finies Ă  zĂ©ro ; consultez getrlimit (2) et la documentation de la commande ulimit de l’interprĂ©teur de commande ( limit dans csh (1)). RLIMIT_CORE sera cependant ignorĂ©e si le systĂšme est configurĂ© pour tuber les vidages mĂ©moire vers un programme.

-

Le binaire actuellement exĂ©cutĂ© par le processus n’est pas accessible en lecture. Il s’agit d’une mesure de sĂ©curitĂ© pour s’assurer qu’un exĂ©cutable dont le contenu n’est pas accessible en lecture ne produira pas de vidage mĂ©moire — éventuellement lisible — contenant une image de l’exĂ©cutable.

-

Le processus exĂ©cute un programme set-user-ID (ou set-group-ID) dont le propriĂ©taire (ou le groupe) est diffĂ©rent de l’identifiant d’utilisateur (ou de groupe) rĂ©el du processus, ou le processus exĂ©cute un programme qui possĂšde des capacitĂ©s de fichier (voir capabilities (7)). Consultez cependant la description de l’opĂ©ration PR_SET_DUMPABLE de prctl (2), et la description du fichier /proc/sys/fs/suid_dumpable dans proc (5).

-

/proc/sys/kernel/core_pattern est vide et /proc/sys/kernel/core_uses_pid contient la valeur 0 (ces fichiers sont dĂ©crits plus loin). Notez que si /proc/sys/kernel/core_pattern est vide et si /proc/sys/kernel/core_uses_pid contient la valeur 1 , les fichiers image de la mĂ©moire possĂ©deront des noms de la forme .pid , et que ces fichiers sont cachĂ©s, Ă  moins d’utiliser l’option -a de ls (1).

-

(Depuis Linux 3.7) Le noyau a Ă©tĂ© compilĂ© sans l’option CONFIG_COREDUMP .

De plus, le vidage mĂ©moire peut exclure des portions de l’espace d’adressage du processus si l’attribut MADV_DONTDUMP de madvise (2) est utilisĂ©.

Sur les systĂšmes qui utilisent systemd (1) comme cadriciel pour init , les vidages mĂ©moire peuvent ĂȘtre Ă©crits Ă  un emplacement dĂ©terminĂ© par systemd (1). Voir plus loin pour plus de dĂ©tails.

Nommage des fichiers image de la 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.6 et 2.4.21) 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 remplacĂ©s par les valeurs suivantes lorsqu’une image de la mĂ©moire est créée :

%%

CaractĂšre % unique

%c

Limite de ressource souple de la taille du fichier image de la mĂ©moire créé lors du plantage d’un processus (depuis Linux 2.6.24).

%d

Mode vidage (« dump mode ») — identique Ă  la valeur renvoyĂ©e par PR_GET_DUMPABLE de prctl (2) (depuis Linux 3.7).

%e

La valeur de comm du processus ou du thread, qui correspond en gĂ©nĂ©ral au nom de l’exĂ©cutable (sans le chemin et tronquĂ© Ă  un maximum de 15 caractĂšres), mais qui peut avoir Ă©tĂ© modifiĂ©e en quelque chose de diffĂ©rent ; voir les explications Ă  propos de /proc/ pid /comm et /proc/ pid /task/ tid /comm dans proc (5).

%E

Chemin d’accĂšs de l’exĂ©cutable, oĂč les barres obliques « / » sont remplacĂ©es par des points d’exclamation « ! » (depuis Linux 3.0).

%g

GID numĂ©rique rĂ©el du processus dont l’image mĂ©moire a Ă©tĂ© vidĂ©e.

%h

Nom d’hĂŽte (identique Ă  nodename renvoyĂ© par uname (2)).

%i

TID du thread qui a dĂ©clenchĂ© le vidage mĂ©moire, tel qu’il est vu dans l’espace de noms du PID dans lequel le thread se trouve (depuis Linux 3.18).

%I

TID du thread qui a dĂ©clenchĂ© le vidage mĂ©moire, tel qu’il est vu dans l’espace de noms du PID initial (depuis Linux 3.18).

%p

PID du processus dont l’image mĂ©moire a Ă©tĂ© vidĂ©e, tel qu’il est vu dans l’espace de noms du PID dans lequel le processus se trouve.

%P

PID du processus dont l’image mĂ©moire a Ă©tĂ© vidĂ©e, tel qu’il est vu dans l’espace des noms du PID initial (depuis Linux 3.12).

%s

Numéro du signal ayant provoqué le vidage mémoire

%t

Heure du vidage mĂ©moire exprimĂ©e en secondes depuis l’Époque, 1er janvier 1970 Ă  00:00:00 +0000 (UTC).

%u

UID numérique réel du processus « vidé ».

Un % isolĂ© Ă  la fin du motif est Ă©liminĂ© du nom de fichier de l’image mĂ©moire, et il en sera de mĂȘme pour 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Ăšres « / », ils sont interprĂ©tĂ©s comme des dĂ©limiteurs pour les noms de rĂ©pertoire. La taille maximale du nom de fichier de l’image mĂ©moire rĂ©sultant est de 128 octets (64 octets avant Linux 2.6.19). La valeur par dĂ©faut de ce nom de fichier est « core ». Afin d’assurer une rĂ©trocompatibilitĂ©, si /proc/sys/kernel/core_pattern ne contient pas « %p » et si /proc/sys/kernel/core_uses_pid (voir ci-dessous) est diffĂ©rent de zĂ©ro, « .PID » est ajoutĂ© au nom de fichier de l’image mĂ©moire.

Les chemins sont interprĂ©tĂ©s en tenant compte des paramĂštres actifs pour le processus qui a plantĂ©. Ces paramĂštres comprennent l’espace de noms montage du processus qui a plantĂ© (voir mount_namespaces (7)), son rĂ©pertoire de travail actuel (dĂ©terminĂ© Ă  l’aide de getcwd (2)) et son rĂ©pertoire racine (voir chroot (2)).

Depuis Linux 2.4, Linux procure aussi 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, le fichier image de la mĂ©moire est tout simplement appelĂ© core . Si ce fichier contient une valeur diffĂ©rente de zĂ©ro, le fichier image de la mĂ©moire intĂ©grera dans son nom le numĂ©ro d’identification du processus sous la forme core.PID .

À partir de Linux 3.6, si /proc/sys/fs/suid_dumpable a pour valeur 2 (« suidsafe »), le motif doit ĂȘtre soit un chemin absolu (commençant par le caractĂšre « / », soit un tube, comme indiquĂ© plus bas.

Tuber les vidages mémoire vers un programme

Depuis le noyau 2.6.19, Linux prend en charge une syntaxe alternative pour le fichier /proc/sys/kernel/core_pattern . Si le premier caractĂšre de ce fichier est le symbole du tube ( | ), le reste de la ligne est interprĂ©tĂ© comme une ligne de commande pour un programme de l’espace utilisateur (ou un script) Ă  exĂ©cuter.

Depuis Linux 5.3.0, le modĂšle de tube est divisĂ© en tenant compte des espaces en une liste d’arguments avant l’interprĂ©tation des paramĂštres du modĂšle. Avec les noyaux plus anciens, les paramĂštres du modĂšle sont interprĂ©tĂ©s en premier et la chaĂźne rĂ©sultante est divisĂ©e en tenant compte des espaces en une liste d’arguments. Cela signifie qu’avec les noyaux plus anciens, les noms d’exĂ©cutable ajoutĂ©s par les paramĂštres de modĂšle %e et %E pouvaient ĂȘtre divisĂ©s en plusieurs arguments. Le gestionnaire de vidage mĂ©moire doit donc dĂ©finir le dernier argument avec les noms d’exĂ©cutable et s’assurer de « recoller » toutes les parties du nom de l’exĂ©cutable en tenant compte des espaces. Les noms d’exĂ©cutable qui contiennent plusieurs espaces ne sont pas correctement reprĂ©sentĂ©s dans les noyaux plus anciens, et dans ce cas, le gestionnaire de vidage mĂ©moire devra utiliser des mĂ©canismes permettant de dĂ©terminer le nom de l’exĂ©cutable.

Au lieu d’ĂȘtre Ă©crit dans un fichier, le vidage mĂ©moire est envoyĂ© sur l’entrĂ©e standard du programme. Notez les points suivants :

-

Le programme doit ĂȘtre indiquĂ© avec un chemin d’accĂšs absolu (ou un chemin relatif par rapport au rĂ©pertoire racine, / ) et doit immĂ©diatement suivre le caractĂšre « | ».

-

Les arguments de la ligne de commande peuvent inclure tout spécificateur % indiqué plus haut. Par exemple, pour transmettre le PID du processus vidé, indiquez %p dans un argument.

-

Le processus créé pour exĂ©cuter le programme s’exĂ©cute avec les utilisateur et groupe root .

-

L’exĂ©cution en tant que root ne permet pas de contournement de sĂ©curitĂ© exceptionnel. À ce titre, les LSM (comme SELinux) sont toujours actifs et peuvent empĂȘcher le gestionnaire d’accĂ©der aux dĂ©tails du processus ayant plantĂ© Ă  l’aide de /proc/ pid.

-

Le nom de chemin du programme est interprĂ©tĂ© en respectant l’espace de noms montage initial, car il est toujours exĂ©cutĂ© dans ce contexte. Il n’est pas affectĂ© par les paramĂštres du processus ayant plantĂ© (par exemple le rĂ©pertoire racine, l’espace de noms montage et le rĂ©pertoire de travail actuel).

-

Le processus s’exĂ©cute dans les espaces de noms initiaux (PID, montage, utilisateur, etc.) et non dans les espaces de noms du processus ayant plantĂ©. On peut utiliser des spĂ©cificateurs comme %P pour trouver le rĂ©pertoire /proc/ pid correct et sonder/entrer les espaces de noms du processus ayant plantĂ© si nĂ©cessaire.

-

Le processus dĂ©marre avec son rĂ©pertoire de travail courant comme rĂ©pertoire racine. Il est cependant possible de passer au rĂ©pertoire de travail du processus de vidage en utilisant la valeur fournie par le spĂ©cificateur %P pour passer Ă  l’emplacement du processus de vidage Ă  l’aide de /proc/ pid /cwd .

-

Depuis Linux 2.6.24, il est possible de fournir au programme des arguments sĂ©parĂ©s par des espaces dans la ligne de commande (jusqu’à une longueur de ligne de 128 octets).

-

La limite RLIMIT_CORE ne s’applique pas aux vidages mĂ©moire tubĂ©s vers un programme Ă  l’aide de ce mĂ©canisme.

/proc/sys/kernel/core_pipe_limit

Lorsqu’on collecte des vidages mĂ©moire Ă  l’aide d’un tube vers un programme de l’espace utilisateur, il peut s’avĂ©rer utile pour le programme collecteur d’extraire les donnĂ©es Ă  propos du processus ayant plantĂ© depuis le rĂ©pertoire /proc/ pid de ce dernier. Pour ce faire en toute sĂ©curitĂ©, le noyau doit attendre que le programme collecteur de vidage mĂ©moire se termine, de façon Ă  ne pas supprimer prĂ©maturĂ©ment les fichiers contenus dans le rĂ©pertoire /proc/ pid du processus ayant plantĂ©, ce qui a pour inconvĂ©nient de donner la possibilitĂ© Ă  un programme de collecte dĂ©fectueux de bloquer le vidage d’un processus plantĂ© en ne se terminant jamais.

Depuis Linux 2.6.32, on peut utiliser /proc/sys/kernel/core_pipe_limit pour limiter cette possibilitĂ©. La valeur contenue dans ce fichier dĂ©finit le nombre de processus plantĂ©s simultanĂ©s qui peuvent ĂȘtre tubĂ©s en parallĂšle vers des programmes de l’espace utilisateur. Si cette valeur est dĂ©passĂ©e, les processus plantĂ©s concernĂ©s seront consignĂ©s dans le journal du noyau et leurs vidages mĂ©moires omis.

Une valeur de 0 dans ce fichier a une signification particuliĂšre. Elle indique qu’il n’y a pas de limite au nombre de processus qui peuvent ĂȘtre interceptĂ©s en parallĂšle, mais qu’aucune attente ne sera observĂ©e (autrement dit, le programme collecteur n’a aucune garantie d’accĂ©der Ă  /proc/<crashing-PID> ). Par dĂ©faut, ce fichier contient la valeur 0 .

ContrÎler quelles projections seront écrites dans le vidage mémoire

Depuis Linux 2.6.23, le fichier /proc/ pid /coredump_filter spécifique à Linux permet de contrÎler quels segments de mémoire seront écrits dans le fichier image de la mémoire si un vidage mémoire est effectué pour le processus avec le PID correspondant.

La valeur dans ce fichier est un masque de bits des types de projection mémoire (consultez mmap (2)). Si un bit est positionné dans le masque, les projections mémoire du type correspondant sont vidées ; dans le cas contraire, elles ne le sont pas. Les bits dans ce fichier ont la signification suivante :

bit 0

Vider les projections privées anonymes.

bit 1

Vider les projections partagées anonymes.

bit 2

Vider les projections privées sauvegardées sur fichier.

bit 3

Vider les projections partagées sauvegardées sur fichier.

bit 4 (depuis Linux 2.6.24)

Vider les en-tĂȘtes ELF.

bit 5 (depuis Linux 2.6.28)

Vider les pages privées volumineuses.

bit 6 (depuis Linux 2.6.28)

Vider les pages partagées volumineuses.

bit 7 (depuis Linux 4.4)

Vider les pages DAX privées.

bit 8 (depuis Linux 4.4)

Vider les pages DAX partagées.

Par dĂ©faut, les bits suivants sont positionnĂ©s : 0, 1, 4 (si l’option de configuration du noyau CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS est activĂ©e) et 5. L’option d’amorçage coredump_filter permet de modifier ce rĂ©glage par dĂ©faut.

La valeur dans ce fichier est enregistrée en hexadécimal (la valeur par défaut est donc 33 ).

Les pages d’entrĂ©es-sorties projetĂ©es en mĂ©moire telles que les tampons de trame ne sont jamais vidĂ©es, et les pages DSO virtuelles ( vdso (7)) le sont toujours, quelle que soit la valeur de coredump_filter .

Un processus enfant créé avec fork (2) hĂ©rite de la valeur de coredump_filter de son parent ; la valeur de coredump_filter est prĂ©servĂ©e au travers d’un execve (2).

Il peut ĂȘtre utile de dĂ©finir coredump_filter dans l’interprĂ©teur de commande parent avant d’exĂ©cuter le programme ; par exemple :

$ echo 0x7 > /proc/self/coredump_filter
$ ./un_programme

Ce fichier n’existe que si le noyau a Ă©tĂ© compilĂ© avec l’option de configuration CONFIG_ELF_CORE .

Vidages mémoire et systemd

Sur les systĂšmes qui utilisent systemd (1) comme cadriciel pour init , les vidages mĂ©moire peuvent ĂȘtre Ă©crits Ă  un emplacement dĂ©terminĂ© par systemd (1). À cet effet, systemd (1) utilise la fonctionnalitĂ© core_pattern qui permet de tuber les vidages mĂ©moire vers un programme. Cela peut ĂȘtre vĂ©rifiĂ© en regardant si les vidages mĂ©moires sont tubĂ©s vers le programme systemd-coredump (8) :

$ cat /proc/sys/kernel/core_pattern
|/usr/lib/systemd/systemd-coredump %P %u %g %s %t %c %e

Dans ce cas, les vidages mĂ©moire seront enregistrĂ©s Ă  l’emplacement configurĂ© pour systemd-coredump (8), en gĂ©nĂ©ral sous la forme de fichiers compressĂ©s lz4 (1) dans le rĂ©pertoire /var/lib/systemd/coredump/ . Pour lister les vidages mĂ©moires qui ont Ă©tĂ© enregistrĂ©s par systemd-coredump (8), on peut utiliser coredumpctl (1) :

$ coredumpctl list | tail -5
Wed 2017-10-11 22:25:30 CEST 2748 1000 1000 3 present /usr/bin/sleep
Thu 2017-10-12 06:29:10 CEST 2716 1000 1000 3 present /usr/bin/sleep
Thu 2017-10-12 06:30:50 CEST 2767 1000 1000 3 present /usr/bin/sleep
Thu 2017-10-12 06:37:40 CEST 2918 1000 1000 3 present /usr/bin/cat
Thu 2017-10-12 08:13:07 CEST 2955 1000 1000 3 present /usr/bin/cat

Les informations contenues dans tout vidage mĂ©moire comprennent la date et l’heure du vidage, les PID, UID et GID du processus de vidage, le numĂ©ro du signal qui a dĂ©clenchĂ© le vidage et le chemin de l’exĂ©cutable qui Ă©tait exĂ©cutĂ© par le processus vidĂ©. Plusieurs options de coredumpctl (1) permettent de dĂ©placer le fichier image de la mĂ©moire donnĂ© depuis l’emplacement de systemd (1) vers le fichier spĂ©cifiĂ©. Par exemple, pour extraire le vidage mĂ©moire du PID 2955 montrĂ© plus haut dans un fichier nommĂ© core dans le rĂ©pertoire actuel, on peut utiliser :

$ coredumpctl dump 2955 -o core

Pour des détails plus exhaustifs, voir la page de manuel de coredumpctl (1).

Pour désactiver de maniÚre permanente le mécanisme de systemd (1) qui archive les vidages mémoire et rétablir un fonctionnement plus proche du comportement traditionnel de Linux, on peut définir un contournement du mécanisme de systemd (1) en utilisant quelque chose du genre :

# echo "kernel.core_pattern=core.%p" > \
/etc/sysctl.d/50-coredump.conf

# /lib/systemd/systemd-sysctl

On peut aussi modifier le core_pattern temporairement (jusqu’au prochain redĂ©marrage) en utilisant par exemple la commande suivante (qui inclut dans le nom des fichiers image de la mĂ©moire le nom de l’exĂ©cutable et le numĂ©ro du signal qui a dĂ©clenchĂ© le vidage mĂ©moire) :

# sysctl -w kernel.core_pattern="%e-%s.core"

NOTES

La commande gdb (1) gcore permet d’obtenir une image mĂ©moire d’un processus en cours d’exĂ©cution.

Jusqu’à Linux 2.6.27 inclus, si un processus multithreadĂ© (ou plus prĂ©cisĂ©ment, un processus qui partage son espace mĂ©moire avec un autre processus parce que créé avec l’indicateur CLONE_VM de clone (2)) crĂ©e une image mĂ©moire, l’identifiant du processus (PID) est toujours ajoutĂ© au nom du fichier image de la mĂ©moire, Ă  moins que l’identifiant du processus ne fasse dĂ©jĂ  partie du nom de fichier de par la prĂ©sence d’une spĂ©cification %p dans /proc/sys/kernel/core_pattern (cela s’avĂšre principalement utile lors de l’utilisation de l’implĂ©mentation obsolĂšte LinuxThreads pour laquelle chaque thread d’un processus a son propre PID).

EXEMPLES

Le programme ci-dessous montre l’utilisation de la syntaxe de tubage dans le fichier /proc/sys/kernel/core_pattern . La session de l’interprĂ©teur de commande suivante montre l’utilisation de ce programme (compilĂ© pour crĂ©er un exĂ©cutable nommĂ© core_pattern_pipe_test ) :

$ cc -o core_pattern_pipe_test core_pattern_pipe_test.c
$ su
Password:
# echo "|$PWD/core_pattern_pipe_test %p UID=%u GID=%g sig=%s" > \
/proc/sys/kernel/core_pattern

# exit
$ sleep 100
^\
# taper control-backslash
Quit (core dumped)
$ cat core.info
argc=5
argc[0]=</home/mtk/core_pattern_pipe_test>
argc[1]=<20575>
argc[2]=<UID=1000>
argc[3]=<GID=100>
argc[4]=<sig=3>
Total bytes in core dump: 282624

Source du programme

/* core_pattern_pipe_test.c */
#define _GNU_SOURCE
#include <sys/stat.h>
#include <fcntl.h>
#include <limits.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#define BUF_SIZE 1024
int
main(int argc, char *argv[])
{
ssize_t nread, tot;
char buf[BUF_SIZE];
FILE *fp;
char cwd[PATH_MAX];
/* Changer le répertoire de travail actuel pour celui du
processus qui a planté. */
snprintf(cwd, PATH_MAX, "/proc/%s/cwd", argv[1]);
chdir(cwd);
/* Écrire la sortie dans le fichier "core.info" dans ce rĂ©pertoire. */
fp = fopen("core.info", "w+");
if (fp == NULL)
exit(EXIT_FAILURE);
/* Afficher les arguments de ligne de commande passés au programme
cible du tube configuré dans core_pattern. */
fprintf(fp, "argc=%d\n", argc);
for (size_t j = 0; j < argc; j++)
fprintf(fp, "argc[%zu]=<%s>\n", j, argv[j]);
/* Compter les octets sur l’entrĂ©e standard (le vidage mĂ©moire). */
tot = 0;
while ((nread = read(STDIN_FILENO, buf, BUF_SIZE)) > 0)
tot += nread;
fprintf(fp, "Taille en octets du vidage mémoire : %zd\n", tot);
fclose(fp);
exit(EXIT_SUCCESS);
}

VOIR AUSSI

bash (1), coredumpctl (1), gdb (1), getrlimit (2), mmap (2), prctl (2), sigaction (2), elf (5), proc (5), pthreads (7), signal (7), systemd-coredump (8)

TRADUCTION

La traduction française de cette page de manuel a été créée par Christophe Blaess <https://www.blaess.fr/christophe/>, Stéphan Rafin <stephan.rafin@laposte.net>, Thierry Vignaud <tvignaud@mandriva.com>, François Micaux, Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe Guérard <fevrier@tigreraye.org>, Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>, Julien Cristau <jcristau@debian.org>, Thomas Huriaux <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin Duneau <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, Denis Barbier <barbier@debian.org>, David Prévot <david@tilapin.org>, Cédric Boutillier <cedric.boutillier@gmail.com>, Frédéric Hantrais <fhantrais@gmail.com> et Lucien Gentis <lucien.gentis@waika9.com>

Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n’y a aucune RESPONSABILITÉ LÉGALE.

Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à debian-l10n-french@lists.debian.org .