Provided by:
manpages-fr_3.27fr1.4-1_all 
NOM
proc - Pseudo-systeme de fichiers d'informations sur les processus
DESCRIPTION
Le systeme de fichiers proc est un pseudo-systeme de fichiers qui est
utilise comme interface avec les structures de donnees du noyau. Il est
generalement monte sur /proc. La plupart des fichiers sont en lecture
seule, mais quelques uns permettent la modification de variables du
noyau.
La description suivante fournit un apercu de la hierarchie de /proc.
/proc/[pid]
Il existe un sous-repertoire pour chaque processus actif. Le
sous-repertoire prend comme nom le PID du processus. Chaque
sous-repertoire contient les pseudo-fichiers et
pseudo-repertoires suivants.
/proc/[pid]/auxv (depuis le noyau 2.6.0-test7)
Il comporte le contenu des informations passees par
l'interpreteur ELF au processus lors de son execution. Le format
est constitue, pour chacune des entrees, d'un identifiant
unsigned long suivi d'une valeur unsigned long. La derniere
entree comporte deux zeros.
/proc/[pid]/cmdline
Ce fichier contient la ligne de commande complete du processus,
sauf s'il s'agit d'un zombie. Dans ce dernier cas, il n'y a rien
dans ce fichier : c'est-a-dire qu'une lecture de ce fichier ne
retournera aucun caractere. Les parametres de la ligne de
commande apparaissent dans ce fichier comme un ensemble de
chaines separees par des octets nuls (<< \0 >>), avec un octet
nul supplementaire apres la derniere chaine.
/proc/[pid]/coredump_filter (depuis le noyau 2.6.23)
Consultez core(5).
/proc/[pid]/cpuset (depuis le noyau 2.6.12)
Consultez cpuset(7).
/proc/[pid]/cwd
Lien symbolique vers le repertoire de travail actuel du
processus. Pour obtenir le repertoire de travail du processus 20
par exemple, vous pouvez faire ceci :
$ cd /proc/20/cwd; /bin/pwd
Notez que la commande directe pwd est souvent une commande
interne de l'interpreteur de commandes, et qu'elle risque de ne
pas fonctionner correctement. Avec bash(1), vous pouvez utiliser
pwd -P.
Dans un traitement multiprocessus (multithreaded), le contenu de
ce lien symbolique n'est pas disponible si le processus
principal est deja termine (typiquement par un appel a
pthread_exit(3).
/proc/[pid]/environ
Ce fichier contient l'environnement du processus. Les entrees
sont separees par des caracteres nuls (<< \0 >>), et il devrait
y en avoir un a la fin du fichier. Ainsi, pour afficher
l'environnement du processus numero 1, vous pouvez utiliser :
$ (cat /proc/1/environ; echo) | tr '\000' '\n'
/proc/[pid]/exe
Sous Linux 2.2 et ulterieur, ce fichier est un lien symbolique
representant le chemin reel de la commande en cours d'execution.
Ce lien symbolique peut etre dereference normalement ; tenter de
l'ouvrir ouvrira le fichier executable. Vous pouvez meme entrer
/proc/[pid]/exe pour lancer une autre instance du meme processus
[pid] indique. Pour les multiprocessus, le contenu de ce lien
symbolique n'est pas disponible si le processus principal s'est
deja termine (typiquement par l'appel de pthread_exit(3)).
Sous Linux 2.0 et precedents, /proc/[pid]/exe etait un pointeur
sur le fichier binaire execute, qui apparaissait sous forme de
lien symbolique. Un appel systeme readlink(2) sur ce fichier
renvoyait une chaine de la forme :
[peripherique]:inode
Par exemple, [0301]:1502 correspond a l'inode 1502 du
peripherique ayant le numero majeur 03 (disque IDE, MFM, etc.)
et mineur 01 (premiere partition du premier disque).
On peut utiliser find(1) avec l'option -inum pour retrouver le
fichier executable a partir du numero d'inode.
/proc/[pid]/fd
Il s'agit d'un sous-repertoire contenant une entree pour chaque
fichier ouvert par le processus. Chaque entree a le descripteur
du fichier pour nom, et est representee par un lien symbolique
vers le vrai fichier. Ainsi, 0 correspond a l'entree standard, 1
a la sortie standard, 2 a la sortie d'erreur, etc.
Dans un traitement multiprocessus (multithreaded), le contenu de
ce repertoire n'est pas disponible si le processus principal est
deja termine (typiquement par l'appel de pthread_exit(3).
Les programmes qui prennent un nom de fichier comme parametre de
la ligne de commande mais qui ne lisent pas l'entree standard si
aucun parametre n'est fourni, ou qui ecrivent dans un fichier
indique par un parametre de la ligne de commande sans ecrire sur
la sortie standard si aucun parametre n'est fourni, peuvent
neanmoins utiliser l'entree standard et la sortie standard par
l'intermediaire de /proc/[pid]/fd. Par exemple, en supposant que
l'option -i indique le nom du fichier d'entree et l'option -o le
nom du fichier de sortie :
$ tototiti -i /proc/self/fd/0 -o /proc/self/fd/1 ...
et vous avez alors realise un filtre.
/proc/self/fd/N est approximativement identique a /dev/fd/N sur
certains systemes Unix et pseudo-Unix. D'ailleurs la plupart des
scripts MAKEDEV de Linux lient symboliquement en fait /dev/fd a
/proc/self/fd.
La plupart des systemes fournissent les liens symboliques
/dev/stdin, /dev/stdout et /dev/stderr, qui sont respectivement
lies aux fichiers 0, 1 et 2 de /proc/self/fd. Par consequent,
l'exemple precedent peut etre ecrit de la facon suivante :
$ foobar -i /dev/stdin -o /dev/stdout ...
/proc/[pid]/fdinfo/ (depuis le noyau 2.6.22)
Il s'agit d'un sous-repertoire contenant une entree pour chaque
fichier ouvert par le processus, nomme par son descripteur de
fichier. Le contenu de chaque fichier peut etre lu afin
d'obtenir des informations sur le descripteur de fichier
correspondant, par exemple :
$ cat /proc/12015/fdinfo/4
pos: 1000
flags: 01002002
Le champ pos est un nombre decimal indiquant la position de la
tete de lecture. Le champ flags est un nombre octal indiquant
les modes d'acces au fichier ainsi que ses attributs d'etat
(consultez open(2)).
Les fichiers de ce repertoire ne sont accessibles en lecture que
par le proprietaire du processus.
/proc/[pid]/limits (depuis le noyau 2.6.24)
Ce fichier indique les limites souples et strictes ainsi que les
unites de mesure de chaque limite de ressources du processus
(consultez getrlimit(2)). Le fichier est protege de telle sorte
que seul l'UID reel du processus puisse le lire.
/proc/[pid]/maps
Fichier contenant les regions de la memoire actuellement
projetees et leurs autorisations d'acces.
Le format est :
address perms offset dev inode pathname
08048000-08056000 r-xp 00000000 03:0c 64593 /usr/sbin/gpm
08056000-08058000 rw-p 0000d000 03:0c 64593 /usr/sbin/gpm
08058000-0805b000 rwxp 00000000 00:00 0
40000000-40013000 r-xp 00000000 03:0c 4165 /lib/ld-2.2.4.so
40013000-40015000 rw-p 00012000 03:0c 4165 /lib/ld-2.2.4.so
4001f000-40135000 r-xp 00000000 03:0c 45494 /lib/libc-2.2.4.so
40135000-4013e000 rw-p 00115000 03:0c 45494 /lib/libc-2.2.4.so
4013e000-40142000 rw-p 00000000 00:00 0
bffff000-c0000000 rwxp 00000000 00:00 0
Ou << adresses >> correspond a l'espace d'adressage du processus
qui l'occupe, << perm >> est un ensemble d'autorisations :
r = lecture
w = ecriture
x = execution
s = partage
p = prive (copie lors de l'ecriture)
Le << decalage >> est le decalage dans le fichier ou autre,
<< periph >> correspond a la paire (majeur:mineur), et
l'<< inode >> est l'inode sur ce peripherique. 0 signifie
qu'aucun inode n'est associe avec cette zone memoire, comme
c'est le cas avec BSS (donnees non initialisees).
Sous Linux 2.0, il n'y a pas de champ indiquant le chemin
d'acces.
/proc/[pid]/mem
Ce fichier peut etre utilise pour acceder a la memoire d'un
processus au travers de open(2), read(2), et lseek(2).
/proc/[pid]/mountinfo (depuis Linux 2.6.26)
Ce fichier contient des informations relatives aux points de
montage. Il contient des lignes de la forme :
36 35 98:0 /mnt1 /mnt2 rw,noatime master:1 - ext3 /dev/root rw,errors=continue
(1)(2)(3) (4) (5) (6) (7) (8) (9) (10) (11)
Les nombres entre parantheses sont des etiquettes pour les
descriptions suivantes :
(1) mount ID : identifiant unique du montage (peut etre
reutilise apres un umount(2)).
(2) parent ID : identifiant du montage parent (ou de lui-meme
pour le sommet de la hierarchie).
(3) major:minor : valeur de st_dev pour les fichiers sur le
systeme de fichiers (consultez stat(2)).
(4) root : racine du montage dans le systeme de fichiers.
(5) mount point : point de montage relatif a la racine du
processus.
(6) mount options : options par montage.
(7) optional fields : zero ou plusieurs champs de la forme
<< tag[:value] >>.
(8) separator : indique la fin des champs optionnels.
(9) file system type : nom du systeme de fichiers de la forme
<< type[.subtype] >>.
(10) mount source : informations specifiques au systeme de
fichiers ou << none >>.
(11) super options : options par superbloc.
Les outils d'analyse devraient ignorer les champs optionnels non
reconnus. Les champs optionnels actuellement disponibles sont :
shared:X le montage est partage par le groupe pair
X
master:X le montage est esclave pour le groupe
pair X
propagate_from:X le montage est esclave et recoit des
propagations provenant du groupe pair X
(*)
unbindable le point de montage ne peut pas etre lie
(*) X est le group pair dominant le plus proche sous la racine
du processus. Si X est le maitre immediat du montage ou s'il n'y
a pas de group pair dominant sous la meme racine, alors seul le
champ << master:X >> est present et pas le champ
<< propagate_from:X >>.
Pour plus d'informations sur les propagations de montage, voir
Documentation/filesystems/sharedsubtree.txt dans l'arborescence
des sources du noyau.
/proc/[pid]/mounts (depuis Linux 2.6.17)
C'est une liste de tous les systemes de fichiers montes dans
l'espace de noms de montage du processus. Le format de ce
fichier est documente dans fstab(5). Depuis la version 2.6.15 du
noyau, ce fichier peut etre pollue : apres avoir ouvert le
fichier en lecture, une modification de ce fichier (par exemple,
le montage ou le demontage d'un systeme de fichiers) provoque le
marquage par select(2) du descripteur de fichier comme etant
lisible, et poll(2) et epoll_wait(2) marquent le fichier comme
etant en erreur.
/proc/[pid]/mountstats (depuis Linux 2.6.17)
Ce fichier exporte des informations (statistiques,
configuration) relatives aux points de montage dans l'espace de
noms du processus. Les lignes de ce fichier sont de la forme :
device /dev/sda7 mounted on /home with fstype ext3 [statistics]
( 1 ) ( 2 ) (3 ) (4)
Les champs de chaque ligne sont :
(1) Le nom du peripherique monte (ou << nodevice >> s'il n'y a
pas de peripherique correspondant).
(2) Le point de montage dans l'arborescence du systeme de
fichiers.
(3) Le type du systeme de fichiers.
(4) Statistiques optionnelles et informations de configuration.
Actuellement (Linux 2.6.26), seuls les systemes de fichiers
NFS exportent des informations a travers ce champ.
Ce fichier n'est accessible en lecture que par le proprietaire
du processus.
/proc/[pid]/numa_maps (depuis Linux 2.6.14)
Consultez numa(7).
/proc/[pid]/oom_adj (depuis Linux 2.6.11)
Ce fichier est utilise pour ajuster la notation utilisee pour
selectionner le processus qui sera tue dans une situation de
memoire saturee. Le noyau utilise cette valeur pour une
operation de decalage sur la valeur oom_score du processus : les
valeurs valables sont dans l'intervalle de -16 a +15 plus la
valeur speciale -17, qui desactive completement la mise a mort
sur memoire saturee du processus. Une notation negative diminue
la probabilite. La valeur par defaut de ce fichier est 0 ; un
nouveau processus herite de la valeur oom_adj de son pere. Un
processus doit etre privilegie (CAP_SYS_RESOURCE) pour mettre a
jour ce fichier.
/proc/[pid]/oom_score (depuis Linux 2.6.11)
Ce fichier indique la notation actuelle donnee par le noyau pour
selectionner un processus pour une mise a mort sur memoire
saturee. Une notation elevee signifie que le processus a plus de
chance d'etre selectionne pour une mise a mort sur memoire
saturee. La base de cette notation est la quantite de memoire
utilisee par le processus. Cette notation peut augmenter (+) ou
diminuer (-) en fonction des facteurs suivants :
* le processus cree beaucoup d'enfants avec fork(2) (+) ;
* le processus s'execute depuis longtemps ou a consomme beaucoup
de temps processeur (-) ;
* le processeur a une faible valeur de courtoisie (c'est-a-dire
positive) (+) ;
* le processus est privilegie (-) ; et
* le processus effectue des acces materiels directs (-).
oom_score reflete egalement l'ajustement de decalage de bit du
processus indique dans oom_adj.
/proc/[pid]/root
Unix et Linux gerent une notion de racine du systeme de fichiers
par processus, configuree avec l'appel systeme chroot(2). Ce
fichier est un lien symbolique qui pointe vers le repertoire
racine du processus, et se comporte comme le font exe, fd/*,
etc.
Dans un traitement multiprocessus (multithreaded), le contenu de
ce lien symbolique n'est pas disponible si le processus
principal est deja termine (typiquement par un appel a
pthread_exit(3).
/proc/[pid]/smaps (depuis Linux 2.6.14)
Ce fichier affiche la memoire utilisee par les cartes de chacun
des processus. Pour chacune des cartes, il y a une serie de
lignes comme les suivantes :
08048000-080bc000 r-xp 00000000 03:02 13130 /bin/bash
Size: 464 kB
Rss: 424 kB
Shared_Clean: 424 kB
Shared_Dirty: 0 kB
Private_Clean: 0 kB
Private_Dirty: 0 kB
La premiere de ces lignes montre les memes informations que
celles qui sont affichees pour la cartographie memoire dans
/proc/[pid]/maps. Les lignes qui suivent montrent la taille des
cartes, la taille memoire actuellement residente en memoire
vive, le nombre de pages partagees de la carte << propres >> ou
<< sales >>, et le nombre de cartes privees propres ou sales.
Ce fichier n'est present que si l'option de configuration du
noyau CONFIG_MMU a ete validee.
/proc/[pid]/stat
Informations sur l'etat du processus. Ceci est utilise par
ps(1). La definition se trouve dans
/usr/src/linux/fs/proc/array.c.
Les champs sont, dans l'ordre, et avec leur propre specificateur
de format de type scanf(3) :
pid %d Identifiant du processus.
comm %s Nom du fichier executable entre parentheses. Il est
visible que l'executable ait ete decharge sur
l'espace d'echange (<< swappe >>) ou pas.
state %c Un caractere parmi << RSDZTW >> ou R signifie que le
processus est en cours d'execution, S endormi dans
un etat non interruptible, D en attente de disque de
maniere non interruptible, Z zombie, T qu'il est
suivi pour une trace ou arrete par un signal et W
qu'il effectue une pagination vers l'espace
d'echange.
ppid %d PID du processus parent.
pgrp %d Identifiant de groupe de processus du processus.
session %d Identifiant de session du processus.
tty_nr %d Le terminal de controle du processus. (Le numero
mineur de peripherique dans la combinaison des bits
31 a 20 et 7 a 0 ; le numero majeur est dans les
bits 15 a 8.)
tpgid %d L'identifiant du groupe de processus d'arriere-plan
du terminal de controle du processus.
flags %u (etait %lu avant Linux 2.6.22)
Mot contenant les indicateur du noyau pour le
processus. Pour en savoir plus sur la signification
des bits, voir les definitions de PF_* dans
<linux/sched.h>. Les details dependent de la version
du noyau.
minflt %lu Nombre de fautes mineures que le processus a
declenchees et qui n'ont pas necessite le chargement
d'une page memoire depuis le disque.
cminflt %lu Nombre de fautes mineures que les enfants en attente
du processus ont declenchees.
majflt %lu Nombre de fautes majeures que le processus a
declenchees et qui ont necessite un chargement de
page memoire depuis le disque.
cmajflt %lu Nombre de fautes majeures que les enfants en attente
du processus ont declenchees.
utime %ld Le temps passe en mode utilisateur par le processus,
mesure en tops d'horloge (divise par
sysconf(_SC_CLK_TCK). Cela inclut le temps d'invite,
guest_time (temps passe a executer un processeur
virtuel, voir plus loin), de sorte que les
applications qui ne sont pas au courant du champ
<< temps d'invite >> ne perdent pas ce temps dans
leurs calculs.
stime %ld Le temps passe en mode noyau par le processus,
mesure en tops d'horloge (divise par
sysconf(_SC_CLK_TCK).
cutime %ld Le temps passe en mode utilisateur par le processus
et ses descendants, mesure en tops d'horloge (divise
par sysconf(_SC_CLK_TCK). Consultez aussi times(2).)
Cela inclut le temps d'invite, cguest_time (temps
passe a executer un processeur virtuel, voir plus
loin).
cstime %ld Le temps passe en mode noyau par le processus et ses
descendants, mesure en tops d'horloge (divise par
sysconf(_SC_CLK_TCK).
priority %ld
(Explications pour Linux 2.6) Pour les processus
s'executant sous une politique d'ordonnancement
temps reel (policy plus loin ; voir
sched_setscheduler(2)), il s'agit de la valeur
negative de la politique d'ordonnancement, moins
un ; c'est-a-dire un nombre dans l'intervalle -2 a
-100, correspondant aux priorites temps reel 1 a 99.
Pour les processus s'executant sous une politique
d'ordonnancement qui ne soit pas temps reel, il
s'agit de la valeur brute de courtoisie
(setpriority(2)) comme representee dans le noyau. Le
noyau enregistre les valeurs de courtoisie sous
forme de nombre de l'intervalle 0 (haute) a 39
(faible), correspondant a un intervalle de
courtoisie visible par l'utilisateur de -20 a 19.
Avant Linux 2.6, c'etait une valeur d'echelle basee
sur la ponderation de l'ordonnanceur fournie au
processus.
nice %ld La valeur de courtoisie (consultez setpriority(2)),
une valeur dans l'intervalle 19 (faible priorite) a
-19 (haute priorite).
num_threads %ld
Nombre de threads dans ce processus (depuis Linux
2.6). Avant le noyau 2.6, ce champ etait code en dur
a 0 pour remplacer un champ supprime auparavant.
itrealvalue %lu
Nombre de jiffies avant que le signal SIGALRM
suivant soit envoye au processus par un
temporisateur interne. Depuis le noyau 2.6.17, ce
champ n'est plus maintenu et est code en dur a 0.
starttime %llu (etait %lu avant Linux 2.6)
Instant en jiffies auquel le processus a demarre
apres le demarrage du systeme.
vsize %lu Taille de la memoire virtuelle en octets.
rss %lu Taille de l'ensemble resident (Resident Set Size) :
nombre de pages dont le processus dispose en memoire
reelle. Il ne s'agit que des pages contenant les
espaces de code, donnee et pile. Ceci n'inclut ni
les pages en attente de chargement ni celles qui ont
ete dechargees.
rsslim %lu Limite souple actuelle en octets du RSS du
processus ; voir la description de RLIMIT_RSS dans
getpriority(2).
startcode %lu
Adresse au-dessus de laquelle le code du programme
peut s'executer.
endcode %lu Adresse en-dessous de laquelle le code du programme
peut s'executer.
startstack %lu
Adresse de debut (c'est-a-dire le bas) de la pile.
kstkesp %lu Valeur actuelle du pointeur de pile (ESP), telle
qu'on la trouve dans la page de pile du noyau pour
ce processus.
kstkeip %lu EIP actuel (Pointeur d'instructions).
signal %ld Masque des signaux en attente, affiche sous forme
d'un nombre decimal. Obsolete car il ne fournit pas
d'informations sur les signaux temps reel ; utilisez
plutot /proc/[pid]/status.
blocked %ld Masque des signaux bloques, affiche sous forme d'un
nombre decimal. Obsolete car il ne fournit pas
d'information sur les signaux temps reel ; utilisez
plutot /proc/[pid]/status.
sigignore %ld
Masque des signaux ignores, affiche sous forme d'un
nombre decimal. Obsolete car il ne fournit pas
d'informations sur les signaux temps reel ; utilisez
plutot /proc/[pid]/status.
sigcatch %ld
Masque des signaux interceptes, affiche sous forme
d'un nombre decimal. Obsolete car il ne fournit pas
d'informations sur les signaux temps reel ; utilisez
plutot /proc/[pid]/status.
wchan %lu Il s'agit du << canal >> sur lequel le processus est
en attente. C'est l'adresse d'un appel systeme, dont
on peut retrouver le nom dans une table si besoin.
(Si vous avez le fichier /etc/psdatabase a jour, et
essaye ps -l pour voir le champs WCHAN en action).
nswap %lu Nombre de pages deplacees sur l'espace d'echange
(non maintenu).
cnswap %lu Champ nswap cumule pour les processus enfants (non
maintenu).
exit_signal %d (depuis Linux 2.1.22)
Signal a envoyer au parent lors de la mort du
processus.
processor %d (depuis Linux 2.2.8)
Numero du processeur utilise lors de la derniere
execution.
rt_priority %u (depuis Linux 2.5.19 ; etait %lu avant Linux
2.6.22)
Priorite d'ordonnancement temps reel, un nombre dans
l'intervalle 1 a 99 pour les processus ordonnances
sous une politique temps reel, ou 0 pour les
processus non temps reel (consultez
sched_setscheduler(2)).
policy %u (depuis Linux 2.5.19 ; etait %lu avant Linux 2.6.22)
Politique d'ordonnancement (consultez
sched_setscheduler(2)). Decoder avec les constantes
SCHED_* de linux/sched.h.
delayacct_blkio_ticks %llu (depuis Linux 2.6.18)
Cumul des delais d'entrees-sorties, mesure en tic
horloge (centiemes de secondes).
guest_time %lu (depuis Linux 2.6.24)
Temps d'invite du processus (temps passe a executer
un processeur virtuel pour un systeme d'exploitation
invite), mesure en tops d'horloge (divise par
sysconf(_SC_CLK_TCK).
cguest_time %ld (depuis Linux 2.6.24)
Temps d'invite des fils du processus, mesure en tops
d'horloge (divise par sysconf(_SC_CLK_TCK).
/proc/[pid]/statm
Donne des informations sur l'utilisation de la memoire, mesuree
en pages. Les colonnes representent :
size taille totale du programme
(comme pour VmSize dans /proc/[pid]/status)
resident taille residant en memoire
(comme pour VmRSS dans /proc/[pid]/status)
share pages partagees (des projections partagees)
text texte (code)
lib bibliotheque (non utilise dans Linux 2.6)
data donnees + pile
dt pages touchees (dirty, non utilise dans Linux 2.6)
/proc/[pid]/status
Fournit l'essentiel des informations de /proc/[pid]/stat et
/proc/[pid]/statm dans un format plus facile a lire pour les
humains. Voici un exemple :
$ cat /proc/$$/status
Name: bash
State: S (sleeping)
Tgid: 3515
Pid: 3515
PPid: 3452
TracerPid: 0
Uid: 1000 1000 1000 1000
Gid: 100 100 100 100
FDSize: 256
Groups: 16 33 100
VmPeak: 9136 kB
VmSize: 7896 kB
VmLck: 0 kB
VmHWM: 7572 kB
VmRSS: 6316 kB
VmData: 5224 kB
VmStk: 88 kB
VmExe: 572 kB
VmLib: 1708 kB
VmPTE: 20 kB
Threads: 1
SigQ: 0/3067
SigPnd: 0000000000000000
ShdPnd: 0000000000000000
SigBlk: 0000000000010000
SigIgn: 0000000000384004
SigCgt: 000000004b813efb
CapInh: 0000000000000000
CapPrm: 0000000000000000
CapEff: 0000000000000000
CapBnd: ffffffffffffffff
Cpus_allowed: 00000001
Cpus_allowed_list: 0
Mems_allowed: 1
Mems_allowed_list: 0
voluntary_ctxt_switches: 150
nonvoluntary_ctxt_switches: 545
Les champs sont les suivants :
* Name : Commande lancee par ce processus.
* State : Etat actuel du processus parmi les valeurs : << R
(running) >>, << S (sleeping) >>, << D (disk sleep) >>, << T
(stopped) >>, << T (tracing stop) >>, << Z (zombie) >> ou << X
(dead) >>.
* Tgid : Identifiant du groupe de threads (c'est-a-dire,
identifiant du processus PID).
* Pid : Identifiant de thread (consultez gettid(2)).
* TracerPid : PID du processus tracant ce processus (0 s'il
n'est pas trace).
* Uid, Gid : UID (et GID) reel, effectif, sauve et de systeme de
fichiers.
* FDSize : Nombre d'entrees de descripteurs de fichier
actuellement alloues.
* Groups : Liste des groupes supplementaires.
* VmPeak : Taille de pointe de memoire virtuelle.
* VmSize : Taille de memoire virtuelle.
* VmLck : Taille de memoire verrouillee.
* VmHWM : Taille de pointe de memoire residente (<< High Water
Mark >>).
* VmRSS : Taille de memoire residente
* VmData, VmStk, VmExe : Taille des segments de donnees, de pile
et de texte.
* VmLib : Taille du code de bibliotheque partagee.
* VmPTE : Taille des entrees de table de page (depuis Linux
2.6.10).
* Threads : Nombre de threads dans le processus contenant ce
thread.
* SigPnd, ShdPnd : Nombre de signaux en attente du thread et du
processus dans son ensemble (consultez pthreads(7) et
signal(7)).
* SigBlk, SigIgn, SigCgt : Masques indiquant les signaux
bloques, ignores et interceptes (consultez signal(7)).
* CapInh, CapPrm, CapEff : Masques des capacites actives dans
les ensembles transmissibles, permis et effectifs (consultez
capabilities(7)).
* CapBnd : Ensemble de limitation de capacites (Capability
Bounding set ; depuis le noyau 2.6.26, consultez
capabilities(7)).
* Cpus_allowed : Masque des processeurs sur lesquels le
processus peut s'executer (depuis Linux 2.6.24, consultez
cpuset(7)).
* Cpus_allowed_list : Pareil que precedemment, mais au format
liste (depuis Linux 2.6.26, consultez cpuset(7)).
* Mems_allowed : Masque des noeuds memoire autorises pour ce
processus (depuis Linux 2.6.24, consultez cpuset(7)).
* Mems_allowed_list : Pareil que precedemment, mais au format
liste (depuis Linux 2.6.26, consultez cpuset(7)).
* voluntary_context_switches, nonvoluntary_context_switches :
Nombre de basculement de contexte, volontaire ou non (depuis
Linux 2.6.23).
/proc/[pid]/task (depuis Linux 2.6.0-test6)
C'est un repertoire qui comporte un sous-repertoire pour chacun
des processus legers (threads) de la tache. Le nom de chacun des
sous-repertoires est l'identifiant ([tid]) du thread (consultez
gettid(2). Dans chacun de ces sous-repertoire se trouvent un
ensemble de fichiers ayant le meme nom et contenu que dans les
repertoires /proc/[pid]. Pour les attributs qui sont partages
par tous les processus, le contenu de chacun des fichiers se
trouvant dans le sous-repertoire task/[tid] sera identique a
celui qui se trouve dans le repertoire parent /proc/[pid] (par
ex., pour une tache multiprocessus, tous les fichiers
task/[tid]/cwd auront le meme contenu que le fichier
/proc/[pid]/cwd dans le repertoire parent, puisque tous les
processus d'une meme tache partage le meme repertoire de
travail. Pour les attributs qui sont distincts pour chacun des
processus, les fichiers correspondants sous task/[tid] peuvent
etre differents (par ex., certains champs de chacun de fichiers
task/[tid]/status peuvent etre differents pour chaque
processus).
Dans un traitement multiprocessus, le contenu du repertoire
/proc/[pid]/task n'est pas disponible si le processus principal
est deja termine (typiquement lors de l'appel pthread_exit(3).
/proc/apm
La version du systeme de gestion de puissance APM et les
informations sur l'etat de la batterie si la constante
CONFIG_APM etait definie a la compilation du noyau.
/proc/bus
Contient des sous-repertoires pour les bus installes.
/proc/bus/pccard
Repertoire pour les peripheriques PCMCIA si la constante
CONFIG_PCMCIA etait definie a la compilation du noyau.
/proc/bus/pccard/drivers
/proc/bus/pci
Contient divers sous-repertoires de bus, et des pseudo-fichiers
recelant des informations sur les bus PCI, les peripheriques
installes et leurs pilotes. Certains de ces fichiers ne sont pas
en ASCII pur.
/proc/bus/pci/devices
Informations sur les peripheriques PCI. Peut-etre consulte grace
a lspci(8) et setpci(8).
/proc/cmdline
Arguments passes au noyau Linux lors du boot. Generalement par
l'intermediaire d'un gestionnaire de boot comme lilo(8) ou
grub(8).
/proc/config.gz (depuis Linux 2.6)
Ce fichier indique les options de configuration qui ont ete
utilisees pour construire le noyau actuel, dans le meme format
que celui utilise pour le fichier .config resultant de la
configuration du noyau (en utilisant make xconfig, make config,
ou autre). Le contenu du fichier est compresse ; parcourez le ou
effectuez vos recherches avec zcat(1), zgrep(1), etc. Tant qu'il
n'y a pas de changement dans les fichiers qui suivent, le
contenu de /proc/config.gz est identique a celui fournit par :
cat /lib/modules/$(uname -r)/build/.config
/proc/config.gz n'est fourni que si le noyau est configure avec
l'option CONFIG_IKCONFIG_PROC.
/proc/cpuinfo
Il s'agit d'informations dependantes de l'architecture et du
processeur utilise. Les deux seules entrees toujours presentes
sont processor qui donne le nombre de processeurs et bogomips,
une constante systeme calculee pendant l'initialisation du
noyau. Les machines SMP ont une ligne d'information pour chaque
processeur.
/proc/devices
Liste litterale des groupes de peripheriques et des numeros
majeurs. Ceci peut servir dans les scripts MAKEDEV pour rester
coherent avec le noyau.
/proc/diskstats (depuis Linux 2.5.69)
Ce fichier contient les statistiques d'entrees-sorties du disque
pour chaque peripherique disque. Consultez le fichier fourni
avec les sources du noyau Documentation/iostats.txt pour plus
d'informations.
/proc/dma
Il s'agit d'une liste des canaux DMA (Direct Memory Acess) ISA
en cours d'utilisation.
/proc/driver
Sous-repertoire vide.
/proc/execdomains
Liste des domaines d'execution (personnalites).
/proc/fb
Information sur la memoire d'ecran Frame Buffer, lorsque la
constante CONFIG_FB a ete definie lors de la compilation du
noyau.
/proc/filesystems
Liste textuelle des systemes de fichiers qui sont pris en compte
par le noyau, c'est-a-dire les systemes de fichiers qui ont ete
compiles dans le noyau ou dont les modules du noyau sont
actuellement charges. (Consultez aussi filesystems(5)). Si un
systeme de fichiers est marque par << nodev >>, ceci signifie
qu'il n'a pas besoin d'un peripherique bloc pour etre monte (par
exemple un systeme de fichiers virtuel, un systeme de fichiers
reseau).
Ce fichier peut eventuellement etre utilise par mount(8)
lorsqu'aucun systeme de fichiers n'est indique et qu'il n'arrive
pas a determiner le type du systeme de fichiers. Alors, les
systemes de fichiers que comportent ce fichier sont essayes (a
l'exception de ceux qui sont marques par << nodev >>).
/proc/fs
Sous-repertoire vide.
/proc/ide
Le repertoire /proc/ide existe sur les systemes ayant un bus
IDE. Il y a des sous-repertoires pour chaque canal IDE et les
peripheriques attaches. Les fichiers contiennent :
cache taille du tampon en ko
capacity nombre de secteurs
driver version du pilote
geometry geometries physique et logique
identify identification en hexadecimal
media type de support
model reference fournisseur
settings configuration du pilote
smart_thresholds seuils en hexadecimal
smart_values parametres in hexadecimal
L'utilitaire hdparm(8) fournit un acces convivial a ces
informations.
/proc/interrupts
Utilise pour enregistrer le nombre d'interruptions par CPU et
par peripherique d'entrees-sorties. Depuis Linux 2.6.24, pour
les architectures i386 et x86_64 au moins, il comprend egalement
les interruptions internes au systeme (c'est a dire pas
directement attachees a un peripherique), comme les NMI
(<< nonmaskable interrupt >>, interruptions non masquable), LOC
(<< local timer interrupt >>, interruption timer local), et pour
les systemes SMP, TLB (<< TLB flush interrupt >>), RES
(<< rescheduling interrupt >>), CAL (<< remote function call
interrupt >>), et peut-etre d'autres. Le format est tres facile
a lire, en ASCII.
/proc/iomem
Projection des entrees-sorties en memoire, depuis Linux 2.4.
/proc/ioports
Il s'agit d'une liste des regions d'entrees-sorties en cours
d'utilisation.
/proc/kallsyms (depuis Linux 2.5.71)
Ce fichier contient les symboles exportes par le noyau et
utilises par les outils des modules(X) pour assurer l'edition
dynamique des liens des modules chargeables. Dans Linux 2.5.47
et precedents, un fichier similaire avec une syntaxe legerement
differente s'appelait ksyms.
/proc/kcore
Ce fichier represente la memoire physique du systeme sous forme
de fichier ELF core. A l'aide de ce pseudo-fichier et d'un
binaire du noyau non stripe (/usr/src/linux/vmlinux), gdb peut
servir a inspecter l'etat de n'importe quelle structure de
donnees du noyau.
La longueur totale de ce fichier est la taille de la memoire RAM
physique plus 4 Ko.
/proc/kmsg
Ce fichier peut etre utilise a la place de l'appel systeme
syslog(2) pour journaliser les messages du noyau. Un processus
doit avoir les privileges superutilisateur pour lire ce fichier,
et un seul processus a la fois peut le lire. On NE DOIT PAS lire
ce fichier si un processus syslogd tourne et utilise l'appel
systeme syslog(2) pour journaliser les messages du noyau.
Les informations de ce fichier sont consultees par le programme
dmesg(1).
/proc/ksyms (Linux 1.1.23-2.5.47)
Consultez /proc/kallsyms.
/proc/loadavg
Les trois premiers champs de ce fichier sont des valeurs de
charge moyenne donnant le nombre de travaux dans la file
d'execution (etat R) ou en attente d'E/S disque (etat D)
moyennes sur 1, 5 ou 15 minutes. Ils sont identiques aux valeurs
de charge moyenne donnees par uptime(1) et d'autres programmes.
Le quatrieme champ consiste ne deux nombres separes par un slash
(/). Le premier d'entre-eux est le nombre d'entites
d'ordonnancement du noyau (taches, processus) en cous
d'execution ; il sera inferieur ou egal au nombre de
processeurs. La valeur qui suit le slash est le nombre d'entites
d'ordonnancement du noyau qui existent actuellement sur le
systeme. Le cinquieme champ est le PID du processus le plus
recemment cree sur le systeme.
/proc/locks
Ce fichier montre les verrouillages actuels des fichiers
(flock(2) et fcntl(2)) et les baux (fcntl(2)).
/proc/malloc (seulement jusqu'a Linux 2.2 inclus)
Ce fichier n'est present que si CONFIG_DEBUG_MALLOC a ete defini
lors de la compilation du noyau.
/proc/meminfo
Ce fichier fourni des statistiques sur l'utilisation memoire du
systeme. Il sert au programme free(1) pour indiquer les
quantites de memoires (physique et swap) libres et utilisees,
ainsi que la memoire partagee et les tampons utilises par le
noyau.
/proc/modules
Liste litterale des modules qui ont ete charges par le systeme.
Consultez lsmod(8).
/proc/mounts
Avant le noyau 2.4.19, ce fichier etait une liste de tous les
systemes de fichiers actuellement monte sur le systeme. Avec
l'introduction des espaces de noms de montage par processus dans
Linux 2.4.19, ce fichier est devenu un lien vers
/proc/self/mounts, qui liste les points de montage de l'espace
de noms de montage du processus. Le format de ce fichier est
documente dans fstab(5).
/proc/mtrr
Memory Type Range Registers. Consultez Documentation/mtrr.txt
dans les sources du noyau pour plus d'informations.
/proc/net
Ce repertoire regroupe divers pseudo-fichiers relatifs aux
fonctionnalites reseau. Chaque fichier fournit des informations
concernant une couche particuliere. Ces fichiers sont en ASCII
et sont donc lisible grace a cat(1), mais le programme standard
netstat(8) fournit un acces plus propre a ces donnees.
/proc/net/arp
Ce fichier contient un affichage ASCII lisible des tables ARP du
noyau servant a la resolution d'adresse. Il indique a la fois
les entrees apprises dynamiquement et celles preprogrammees. Le
format est le suivant :
Adresse IP Materiel Attribut Adresse materielle Masque Periph.
192.168.0.50 0x1 0x2 00:50:BF:25:68:F3 * eth0
192.168.0.250 0x1 0xc 00:00:00:00:00:00 * eth0
Ou << adresse IP >> est l'adresse IPv4 de la machine, le type de
materiel est issu de la RFC 826. L'attribut correspond aux
attributs de la structure ARP (definie dans
/usr/include/linux/if_arp.h) et l'adresse materielle est celle
de la couche physique de l'adaptateur correspondant a l'adresse
IP (si elle est connue).
/proc/net/dev
Ce pseudo-fichier contient des informations d'etat sur les
peripheriques reseau. On y trouve les nombres de paquets emis et
recus, le nombre d'erreurs et de collisions, ainsi que d'autres
donnees statistiques. Ce fichier est utilise par le programme
ifconfig(8). Le format est le suivant :
Inter-| Receive | Transmit
face |bytes packets errs drop fifo frame compressed multicast|bytes packets errs drop fifo colls carrier compressed
lo: 2776770 11307 0 0 0 0 0 0 2776770 11307 0 0 0 0 0 0
eth0: 1215645 2751 0 0 0 0 0 0 1782404 4324 0 0 0 427 0 0
ppp0: 1622270 5552 1 0 0 0 0 0 354130 5669 0 0 0 0 0 0
tap0: 7714 81 0 0 0 0 0 0 7714 81 0 0 0 0 0 0
/proc/net/dev_mcast
Definie dans /usr/src/linux/net/core/dev_mcast.c :
indx interface_name dmi_u dmi_g dmi_address
2 eth0 1 0 01005e000001
3 eth1 1 0 01005e000001
4 eth2 1 0 01005e000001
/proc/net/igmp
Protocole Internet Group Management Protocol. Defini dans
/usr/src/linux/net/core/igmp.c.
/proc/net/rarp
Ce fichier emploie le meme format que le fichier arp, et
contient la projection inverse de la base de donnees utilisee
pour fournir les services de recherche inversee de rarp(8). Si
RARP n'est pas configure dans le noyau, ce fichier est absent.
/proc/net/raw
Fournit le contenu de la table des sockets RAW (brutes). La
plupart des informations ne sert que pour le debogage. La valeur
<< sl >> est l'emplacement de la socket dans la table de hachage
du noyau. Le champ << local_address >> contient l'adresse locale
ainsi que la paire de numeros associee au protocole. << St >>
est l'etat interne de la socket. << tx_queue >> et
<< rx_queue >> representent les files d'attente en emission et
en reception en ce qui concerne l'utilisation de la memoire par
le noyau. Les champs << tr >>, << tm->when >> et << rexmits >>
ne sont pas utilises par << RAW >>. Le champ uid contient
l'identifiant d'utilisateur (UID) effectif du createur de la
socket.
/proc/net/snmp
Ce fichier contient les donnees ASCII necessaires pour les bases
d'information d'IP, ICMP, TCP et UDP pour un agent SNMP.
/proc/net/tcp
Fournit le contenu de la table des sockets TCP. La plupart des
informations ne sert que pour le debogage. La valeur << sl >>
est l'emplacement de la socket dans la table de hachage du
noyau. Le champ << local_address >> contient l'adresse locale
ainsi que la pair de numeros de port. Le champ << rem_address >>
contient l'adresse distante et la paire de numeros de port (si
la socket est connectee). << St >> est l'etat interne de la
socket. << tx_queue >> et << rx_queue >> representent les files
d'attente en emission et en reception en ce qui concerne
l'utilisation de la memoire par le noyau. Les champs << tr >>,
<< tm->when >> et << rexmits >> contiennent des donnees internes
au noyau ne servant qu'au debogage. Le champ uid contient
l'identifiant d'utilisateur (UID) effectif du createur de la
socket.
/proc/net/udp
Fournit le contenu de la table des sockets UDP. La plupart des
informations ne sert que pour le debogage. La valeur << sl >>
est l'emplacement de la socket dans la table de hachage du
noyau. Le champ << local_address >> contient l'adresse locale
ainsi que la paire de numeros de port. Le champ
<< rem_address >> contient l'adresse distante et la paire de
numeros de port (si la socket est connectee). << St >> est
l'etat interne de la socket. << tx_queue >> et << rx_queue >>
representent les files d'attente en emission et en reception en
ce qui concerne l'utilisation de la memoire par le noyau. Les
champs << tr >>, << tm->when >> et << rexmits >> ne sont pas
utilises par UDP. Le champ uid contient l'identifiant
d'utilisateur (UID) effectif du createur de la socket. Le format
est :
sl local_address rem_address st tx_queue rx_queue tr rexmits tm->when uid
1: 01642C89:0201 0C642C89:03FF 01 00000000:00000001 01:000071BA 00000000 0
1: 00000000:0801 00000000:0000 0A 00000000:00000000 00:00000000 6F000100 0
1: 00000000:0201 00000000:0000 0A 00000000:00000000 00:00000000 00000000 0
/proc/net/unix
Liste des sockets dans le domaine Unix presentes sur le systeme,
et leurs etats. Le format est :
Num RefCount Protocol Flags Type St Path
0: 00000002 00000000 00000000 0001 03
1: 00000001 00000000 00010000 0001 01 /dev/printer
Ou << Num >> est l'emplacement dans la table du noyau.
<< Refcount >> est le nombre d'utilisateurs de la socket.
<< Protocol >> est toujours 0 pour le moment. << Flags >>
represente un attribut interne du noyau correspondant a l'etat
de la socket. Le type est toujours 1 pour le moment (Les sockets
de datagrammes dans le domaine Unix ne sont pas encore supportes
par le noyau). << St >> est un etat interne de la socket, et
Path correspond a l'eventuel chemin d'acces de la socket.
/proc/partitions
Contient les numeros majeur et mineur de chaque partition, ainsi
que le nombre de blocs et le nom de la partition.
/proc/pci
Il s'agit d'une liste de tous les peripheriques PCI detectes
pendant l'initialisation ainsi que leur configuration.
Ce fichiers a ete deprecie au profit d'une nouvelle interface
/proc pour le PCI (/proc/bus/pci). Il est devenu optionnel dans
Linux 2.2 (disponible par l'intermediaire de
CONFIG_PCI_OLD_PROC, defini a la compilation du noyau). Il est
devenu non optionnel une fois de plus dans Linux 2.4. Ensuite,
il a ete deprecie dans Linux 2.6 (il reste disponible par
l'intermediaire du positionnement de CONFIG_PCI_LEGACY_PROC), et
il a finalement ete entierement supprime depuis Linux 2.6.17.
/proc/scsi
Repertoire regroupant les pseudo-fichiers du niveau scsi
intermediaire et divers sous-repertoires pour les pilotes SCSI
de bas-niveau. Ils contiennent un fichier pour chaque hote SCSI
du systeme, chacun d'entre-eux donnant l'etat d'une partie du
sous-systeme d'E/S SCSI. Les fichiers contiennent des structures
sous forme ASCII, et sont donc lisibles avec cat(1).
On peut egalement ecrire dans certains fichiers pour
reconfigurer le sous-systeme SCSI, ou activer/desactiver
certaines fonctionnalites.
/proc/scsi/scsi
Il s'agit d'une liste de tous les peripheriques SCSI reconnus
par le noyau. Cette liste est la meme que celle affichee durant
le demarrage. Le sous-systeme SCSI n'accepte pour le moment que
la commande add-single-device qui permet au superutilisateur
d'ajouter un peripherique branche a chaud a la liste des
peripheriques connus.
La commande
echo 'scsi add-single-device 1 0 5 0' > /proc/scsi/scsi
fera examiner le canal SCSI 0 par l'hote scsi1, a la recherche
d'un peripherique identifie ID 5 LUN 0. S'il y a deja un
peripherique a cette adresse ou si l'adresse est inconnue, une
erreur sera renvoyee.
/proc/scsi/[nom_de_pilote]
Le [nom_de_pilote] peut etre actuellement : NCR53c7xx, aha152x,
aha1542, aha1740, aic7xxx, buslogic, eata_dma, eata_pio,
fdomain, in2000, pas16, qlogic, scsi_debug, seagate, t128,
u15-24f, ultrastore ou wd7000. Ces repertoires correspondent a
chaque pilote qui pilote au moins un HBA SCSI. Chaque repertoire
contient un fichier par hote enregistre. Chaque fichier hote est
baptise avec le numero assigne a l'hote durant l'initialisation.
La lecture de ces fichiers montrera en general la configuration
de l'hote et du pilote, des statistiques, etc.
L'ecriture dans ces fichiers permettra differentes choses
suivant les hotes. Par exemple, avec les commandes latency et
nolatency, le superutilisateur peut activer ou inhiber le code
de mesure de latence des commandes dans le pilote eata_dma. Avec
les commandes lockup et unlock, il peut controler les
verrouillages de bus simules par le pilote scsi_debug.
/proc/self
Ce repertoire se rapporte au processus accedant au systeme de
fichiers /proc, et est identique au sous-repertoire de /proc
ayant pour nom le PID du processus appelant.
/proc/slabinfo
Information concernant les caches du noyau. Depuis Linux 2.6.16,
ce fichier n'est present que si l'option de configuration du
noyau CONFIG_SLAB est validee. Les colonnes de /proc/slabinfo
sont :
nom-du-cache
nombre-d'objets-actifs
nombre-total-d'objets
taille-d-'objet
nombre-de-tampons-actifs
nombre-total-de-tampons
nombre-de-pages-par-tampon
Consultez slabinfo(5) pour des details.
/proc/stat
Statistiques du noyau, et du systeme. Varie avec l'architecture,
les entrees communes sont :
cpu 3357 0 4313 1362393
Temps, mesure en unites de USER_HZ (centiemes de seconde
sur la plupart des architectures, utilisez
sysconf(_SC_CLK_TCK) pour connaitre la valeur correcte),
que le systeme a passe en mode utilisateur, en mode
utilisateur avec une basse priorite (<< courtoisie
elevee >> : nice), en mode systeme, et le temps
d'inactivite. La derniere valeur devrait correspondre a
100 fois la deuxieme entree du pseudo-fichier uptime.
Avec Linux 2.6, cette ligne comporte trois colonnes
supplementaires : iowait - temps a attendre pour que
l'E/S se termine (depuis 2.5.41) ; irq - delai pour
prendre en compte l'interruption (depuis 2.6.0-test4) ;
softirq - delai pour prendre en compte les interruptions
logicielles (depuis 2.6.0-test4).
Depuis Linux 2.6.11, il y a une huitieme colonne, vol'ee -
le temps vole, qui est le temps passe dans d'autres
systemes d'exploitation lorsqu'un environnement
virtualise est actif
Depuis Linux 2.6.14, il y a une neuvieme colonne, guest,
qui est le temps passe a executer un processeur virtuel
pour des systemes d'exploitation invites sous le controle
du noyau Linux.
page 5741 1808
Le nombre de pages que le systeme a pagine en entree et
en sortie.
swap 1 0
Le nombre de pages de swap que le systeme a echange en
entree et en sortie.
intr 1462898
Cette ligne contient le nombre d'interruptions qui ont
ete prises en compte depuis le demarrage du systeme, pour
chacune des interruptions possibles. La premiere colonne
est le total de toutes les interruptions ayant ete prises
en compte ; chacune des colonnes suivantes represente le
total pour une interruption particuliere.
disk_io: (2,0):(31,30,5764,1,2) (3,0):...
(major,disk_idx):(noinfo, read_io_ops, blks_read,
write_io_ops, blks_written)
(Linux 2.4 seulement)
ctxt 115315
Le nombre de changements de contexte effectues par le
systeme.
btime 769041601
La date de demarrage du systeme en secondes ecoulees
depuis l'epoque, 1er janvier 1970 a 00:00:00 (UTC).
processes 86031
Le nombre de processus executes sur le systeme depuis le
demarrage.
procs_running 6
Nombre de processus dans un etat executable. (a partir de
Linux 2.5.45).
procs_blocked 2
Nombre de processus bloques en attente de fin d'E/S. (A
partir de Linux 2.5.45).
/proc/swaps
Les zones de swap utilisees. Consultez aussi swapon(8).
/proc/sys
Ce repertoire (present depuis le noyau 1.3.57) contient un
ensemble de fichiers et de sous-repertoires correspondant a des
variables internes du noyau. Celles-ci peuvent etre lues et
parfois modifiees en utilisant le pseudo-systeme de fichiers
/proc, et en utilisant l'appel systeme (obsolete) sysctl(2).
/proc/sys/abi (depuis Linux 2.4.10)
Ce repertoire peut contenir des fichiers d'informations sur
l'executable de l'application. Consultez le fichier fourni avec
les sources du noyau Documentation/sysctl/abi.txt pour plus
d'informations.
/proc/sys/debug
Ce repertoire peut etre vide.
/proc/sys/dev
Ce repertoire contient des informations specifiques sur les
peripheriques (par exemple dev/cdrom/info). Sur certains
systemes, il peut etre vide.
/proc/sys/fs
Ce repertoire contient les fichiers et repertoires pour les
variables du noyau relatives aux systemes de fichiers.
/proc/sys/fs/binfmt_misc
La documentation concernant les fichiers de ce repertoire se
trouve dans les sources du noyau, dans
Documentation/binfmt_misc.txt.
/proc/sys/fs/dentry-state (depuis Linux 2.2)
Ce fichier contient des informations sur l'etat du cache de
repertoire (dcache). Ce fichier contient six nombres nr_dentry,
nr_unused, age_limit (age en secondes), want_pages (pages
reclamees par le systeme) et deux valeurs inutiles.
* nr_dentry est le nombre d'entrees dcache allouees. Ce champ
n'est pas utilise dans Linux 2.2.
* nr_unused est le nombre d'entrees de repertoire libres.
* age_limit est l'age en seconde apres lequel les entrees de
cache peuvent etre reclamees quand la memoire libre diminue.
* want_pages n'est pas nul quand le noyau a appele
shrink_dcache_pages() et que le cache de repertoire n'a pas
encore ete elague.
/proc/sys/fs/dir-notify-enable
ce fichier peut etre utilise pour activer ou inhiber l'interface
dnotify decrite dans fcntl(2) au niveau systeme Une valeur nulle
inhibe cette interface, et la valeur 1 l'active.
/proc/sys/fs/dquot-max
Ce fichier montre le nombre maximal d'entrees de quota de disque
en cache. Sur certains systemes (2.4), il est absent. Si le
nombre de quotas de disque libres est tres bas, et si vous avez
un nombre important d'utilisateurs simultanes, vous pouvez
augmenter cette valeur.
/proc/sys/fs/dquot-nr
Ce fichier montre le nombre d'entrees de quota de disque
allouees et le nombre d'entrees libres.
/proc/sys/fs/epoll (depuis Linux 2.6.28)
Ce repertoire contient le fichier max_user_watches, qui peut
etre utilise pour limiter la quantite de memoire du noyau
utilisee par l'interface epoll. Consultez epoll(7) pour
davantage d'informations.
/proc/sys/fs/file-max
Ce fichier est la limite systeme du nombre de fichiers ouverts
par un processus. (Consultez aussi setrlimit(2) qui peut servir
a fixer la limite par processus, RLIMIT_NOFILE). Si vous avez
beaucoup de messages d'erreurs indiquant un manque de
descripteurs de fichiers, essayez d'augmenter cette valeur.
echo 100000 > /proc/sys/fs/file-max
La constante NR_OPEN du noyau impose une limite superieure a la
valeur que l'on peut placer dans file-max.
Si vous augmentez /proc/sys/fs/file-max, assurez-vous
d'augmenter /proc/sys/fs/inode-max jusqu'a 3 a 4 fois la
nouvelle valeur de /proc/sys/fs/file-max, ou vous serez a court
d'inodes.
/proc/sys/fs/file-nr
Ce fichier (en lecture seule) donne le nombre de fichiers
actuellement ouverts. Il contient trois nombres : les
descripteurs de fichiers allouees, les descripteurs de fichiers
libres, et le maximum de descripteurs de fichiers. Le noyau
alloue les descripteurs dynamiquement, mais il ne les libere
pas. Si le nombre de descripteurs alloues est proche du maximum,
vous pouvez envisager d'augmenter le maximum. Quand le nombre de
descripteurs libres est tres grand, vous avez rencontre dans le
passe un pic d'utilisation et n'avez probablement pas besoin
d'augmenter le maximum.
/proc/sys/fs/inode-max
Ce fichier contient le nombre maximal d'inodes en memoire. Sur
certains systemes (2.4) il peut etre absent. Cette valeur
devrait etre 3 a 4 fois plus grande que le nombre file-max, car
les descripteurs stdin, stdout, et les socket reseau necessitent
aussi un inode. Lorsque vous manquez regulierement d'inode,
augmentez cette valeur.
/proc/sys/fs/inode-nr
Ce fichier contient les deux premieres valeurs d'inode-state.
/proc/sys/fs/inode-state
Ce fichier contient sept nombres : nr_inodes, nr_free_inodes,
preshrink et quatre valeurs non significatives. nr_inodes est le
nombre d'inodes alloues par le systeme. Il peut etre legerement
plus grand que inode-max, car Linux les alloue par page
complete. nr_free_inodes represente le nombre d'inodes libres.
preshrink est non-nul lorsque nr_inodes > inode-max et que le
systeme doit purger la liste d'inodes plutot qu'en allouer
davantage.
/proc/sys/fs/inotify (depuis Linux 2.6.13)
Ce repertoire contient les fichiers max_queued_events,
max_user_instances, et max_user_watches, qui peuvent etre
utilises pour limiter la quantite de memoire du noyau utilisee
par l'interface inotify. Consultez inotify(7) pour davantage
d'informations.
/proc/sys/fs/lease-break-time
Ce fichier indique le delai de grace que le noyau accorde a un
processus detenant un blocage de fichier (file lease, consultez
fcntl(2)) apres qu'il lui a envoye un signal indiquant qu'un
autre processus attend pour ouvrir le fichier. Si, durant le
delai de grace, le detenteur du blocage ne le supprime pas, en
n'en diminue pas la portee, le noyau eliminera de force le
blocage.
/proc/sys/fs/leases-enable
Ce fichier permet d'activer ou d'inhiber les blocages de
fichiers (file lease, consultez fcntl(2)) pour tout le systeme.
Si ce fichier contient la valeur 0, les blocages sont
desactives, une valeur non-nulle les active.
/proc/sys/fs/mqueue (depuis Linux 2.6.6)
Ce repertoire contient les fichiers msg_max, msgsize_max, et
queues_max, qui controlent les ressources utilisees par les
files de messages POSIX. Consultez mq_overview(7) pour davantage
d'informations.
/proc/sys/fs/overflowgid et /proc/sys/fs/overflowuid
Ces fichiers contiennent des valeurs de GID et UID de
debordement, par defaut 65534. Certains systemes de fichiers ne
supportent que des UID et GID sur 16 bits, bien que le noyau
Linux les gere sur 32 bits. Lorsque l'un de ces systemes de
fichiers est monte en lecture/ecriture, tout UID ou GID
depassant 65535 est remplace par la valeur de debordement avant
l'ecriture sur le disque.
/proc/sys/fs/pipe-max-size (depuis Linux 2.6.35)
La valeur de ce fichier definit une limite superieure pour
augmenter la capacite d'un tube en utilisant l'operation
fcntl(2) F_SETPIPE_SZ. Cette limite ne s'applique qu'aux
processus ordinaires (sans privileges). La valeur par defaut de
ce fichier est 1048576. La valeur employee par ce fichier peut
etre arrondie superieurement, pour refleter la valeur reellement
employee pour une implementation adaptee. Pour connaitre la
valeur arrondie, il suffit d'afficher le contenu de ce fichier
apres en avoir change la valeur. La valeur minimale qui peut
etre assignee a ce fichier est la taille de la page.
/proc/sys/fs/suid_dumpable (depuis Linux 2.6.13)
La valeur de ce fichier determine si des fichiers d'images
memoire ont ete produits pour << set-user-ID >> ou d'autre
binaires proteges ou corrompus. Trois differentes valeurs
entieres peuvent etre indiquees :
0 (d'efaut) Ceci donne le comportement traditionnel (anterieur a
Linux 2.6.13). Une image memoire ne sera pas produite pour un
processus qui a modifie ses droits (en appelant seteuid(2),
setgid(2), ou autre, ou en executant un programme set-user-ID ou
set-group-ID) ou dont le binaire n'a pas le droit de lecture
actif.
1 (<< debug >>) Des images memoire de tous les processus seront
faites si possible. L'image memoire appartient a l'identifiant
d'utilisateur du systeme de fichiers du processus dont l'image a
ete creee et aucune mesure de securite n'est prise. Ceci n'est
prevu que dans des situations ou l'on souhaite deboguer le
systeme. Ptrace n'est pas verifie.
2 (<< suidsafe >>) L'image memoire d'un binaire qui n'aurait
normalement pas ete effectuee (voir << 0 >> ci-dessus) est prise
lisible par le superutilisateur (root) seulement. Ceci permet a
l'utilisateur de pourvoir supprimer l'image memoire mais pas de
la lire. Pour des raisons de securite, les images memoires
prises dans ce mode n'en ecraseront pas une autre ou d'autres
fichiers. Ce mode est adequat lorsque l'administrateur essaie de
deboguer des problemes dans un environnement normal.
/proc/sys/fs/super-max
Ce fichier indique le nombre maximal de superblocs, et donc le
nombre maximal de systemes de fichiers que le noyau peut monter.
Vous n'avez besoin d'augmenter super-max que si vous desirez
monter plus de systemes de fichiers que ce que la valeur
actuelle de super-max vous permet.
/proc/sys/fs/super-nr
contient le nombre de systemes de fichiers montes actuellement.
/proc/sys/kernel
Ce repertoire contient des fichiers controlant tout une serie de
parametres, decrits ci-dessous.
/proc/sys/kernel/acct
Ce fichier contient trois nombres : un seuil haut, un seuil bas
et une p'eriode. Si la comptabilite des processus a la maniere
BSD est activee, ses valeurs determinent son comportement. Si
l'espace disque sur le systeme de fichiers accueillant les
statistiques descend sous le seuil bas, (en pourcentage), la
comptabilite est suspendue. Si l'espace remonte au-dessus du
seuil haut, elle reprend. La p'eriode (en seconde) est celle avec
laquelle le noyau verifie l'espace disque disponible. Les
valeurs par defaut sont 4, 2 et 30. Cela signifie que la
comptabilite est suspendue en-dessous de 2% d'espace libre, elle
reprend a partir de 4% et la verification a lieu toutes les 30
secondes.
/proc/sys/kernel/cap-bound (de Linux 2.2 a 2.6.24)
Ce fichier conserve la valeur de limitation de capacit'es du
noyau (exprimee comme un nombre decimal signe). Cet ensemble est
filtre par un ET binaire avec les capacites du processus lors
d'un execve(2). A partir de Linux 2.6.25, la limitation de
capacites a l'echelle du systeme a disparu pour etre remplace
par une limitation au niveau des threads ; voir capabilities(7).
/proc/sys/kernel/core_pattern
Consultez core(5).
/proc/sys/kernel/core_uses_pid
Consultez core(5).
/proc/sys/kernel/ctrl-alt-del
Ce fichier controle la gestion de la sequence Ctrl-Alt-Suppr du
clavier. S'il contient la valeur zero, Ctrl-Alt-Suppr est
capture et envoye au programme init(8) pour relancer le systeme
correctement. Si la valeur est superieure a zero, la reaction de
Linux a ce Coup-de-pied Au C.. est un redemarrage immediat, sans
meme ecrire le contenu des tampons en attente. Note : lorsqu'un
programme (comme dosemu) utilise le clavier en mode << raw >>
(brut), la sequence ctl-alt-suppr est interceptee par le
programme avant meme d'atteindre le gestionnaire de console du
noyau, et c'est a ce programme de decider qu'en faire.
/proc/sys/kernel/hotplug
Ce fichier contient le chemin de l'agent du mecanisme de
branchement a chaud. La valeur par defaut est /sbin/hotplug.
/proc/sys/kernel/domainname et /proc/sys/kernel/hostname
Ces fichiers servent a indiquer les noms NIS/YP de domaine et
d'hote, exactement de la meme maniere que les commandes
domainname(1) et hostname(1). C'est-a-dire :
# echo 'darkstar' > /proc/sys/kernel/hostname
# echo 'mydomain' > /proc/sys/kernel/domainname
a exactement le meme effet que
# hostname 'darkstar'
# domainname 'mydomain'
Notez toutefois, que le classique darkstar.frop.org a le nom
d'hote darkstar et le nom de domaine DNS (Internet Domain Name
Server) "frop.org", a ne pas confondre avec le nom de domaine
NIS (Network Information Service) ou YP (Yellow Pages). Ces noms
de domaines sont generalement differents. Pour plus de detail,
voyez la page hostname(1).
/proc/sys/kernel/htab-reclaim
(PowerPC seulement) Si ce fichier contient une valeur non-nulle,
la htab du PowerPC (voir le fichier
Documentation/powerpc/ppc_htab.txt du noyau) est parcourue
chaque fois que le systeme atteint la boucle d'inactivite.
/proc/sys/kernel/l2cr
(Sur PowerPC seulement). Ce fichier contient un indicateur
commandant le cache L2 des cartes a processeur G3. Le cache est
desactive si la valeur est nulle, active sinon.
/proc/sys/kernel/modprobe
Ce fichier comporte le chemin du chargeur de modules du noyau.
Sa valeur par defaut est /sbin/modprobe. Ce fichier n'est
present que si le noyau est construit avec l'option CONFIG_KMOD
activee. Ceci est decrit dans le fichier du noyau
Documentation/kmod.txt (il n'est present que dans les version de
noyau 2.4 et anterieures).
/proc/sys/kernel/msgmax
Ce fichier est une limite pour l'ensemble du systeme precisant
le nombre maximal d'octets par message ecrit dans une file de
message System V.
/proc/sys/kernel/msgmni
Ce fichier definit la limite pour le systeme du nombre
d'identifiants de files de messages. (Ce fichier n'existe que
depuis Linux 2.4).
/proc/sys/kernel/msgmnb
Ce fichier definit un parametre valable pour l'ensemble du
systeme utilise pour initialiser la valeur msg_qbytes pour la
creation ulterieure de files de messages. La valeur msg_qbytes
indique le nombre maximal d'octets qui pourront etre ecrits dans
une file de messages.
/proc/sys/kernel/ostype et /proc/sys/kernel/osrelease
Ces fichiers donnent des sous-chaines de /proc/version.
/proc/sys/kernel/overflowgid et /proc/sys/kernel/overflowuid
Ces fichiers remplissent le meme role que
/proc/sys/fs/overflowgid et /proc/sys/fs/overflowuid.
/proc/sys/kernel/panic
Ce fichier donne un acces en lecture et ecriture a la variable
panic_timeout du noyau. Si elle vaut zero, le noyau se mettra en
boucle en cas de panique ; sinon elle indique que le noyau devra
redemarrer de lui-meme apres le nombre de secondes qu'elle
contient. Si vous utilisez le pilote logiciel de surveillance
watchdog, la valeur recommandee est de 60.
/proc/sys/kernel/panic_on_oops (depuis Linux 2.5.68)
Ce fichier controle le comportement du noyau lorsqu'un Oops
(defaut) ou un bogue est rencontre. Si ce fichier contient 0,
alors le systeme tente de continuer a travailler. S'il contient
1, alors le systeme attend quelques secondes (pour laisser a
klogd le temps d'enregistrer la sortie du Oops) puis declenche
une panique. Si le fichier /proc/sys/kernel/panic est egalement
non nul alors la machine redemarrera.
/proc/sys/kernel/pid_max (depuis Linux 2.5.34)
Ce fichier indique la valeur a partir de laquelle la
numerotation des PID reprendra a sa valeur initiale (ce qui
signifie que la valeur dans ce fichier est celle du PID maximum
plus un). La valeur par defaut est 32768, ce qui correspond a la
meme plage de PID que sur les noyaux anterieurs. Pour les
plates-formes 32 bits, la valeur maximum de pid_max est de
32768. Pour les systemes 64 bits, pid_max peut avoir n'importe
quelle valeur jusqu'a 2^22 (PID_MAX_LIMIT, approximativement 4
millions).
/proc/sys/kernel/powersave-nap (PowerPC seulement)
Ce fichier contient un indicateur. S'il est non-nul, Linux-PPC
utilisera le mode << nap >> d'economie d'energie, sinon il
utilisera le mode << doze >>.
/proc/sys/kernel/printk
Les quatre valeurs dans ce fichier sont nommees
console_loglevel, default_message_loglevel,
minimum_console_level et default_console_loglevel. Ces valeurs
influencent le comportement de printk() lors de l'affichage ou
de la journalisation de message d'erreurs. Consultez syslog(2)
pour plus d'information sur les differents niveaux. Les messages
avec une priorite plus elevee que console_loglevel seront
affiches sur la console. Les messages sans priorite explicite
utiliseront la priorite default_message_level.
minimum_console_loglevel est la valeur maximale a laquelle
console_loglevel puisse etre eleve. default_console_loglevel est
la valeur par defaut pour console_loglevel.
/proc/sys/kernel/pty (depuis Linux 2.6.4)
Ce repertoire contient deux fichiers relatifs au nombre de
pseudo-terminaux Unix 98 (consultez pts(4)) sur le systeme.
/proc/sys/kernel/pty/max
Ce fichier definit le nombre maximal de pseudo-terminaux.
/proc/sys/kernel/pty/nr
Ce fichier, en lecture seule, indique le nombre de
pseudoterminaux en cours d'utilisation.
/proc/sys/kernel/random
Ce repertoire contient divers parametres controlant le
fonctionnement du fichier /dev/random. Consultez random(4) pour
davantage d'informations.
/proc/sys/kernel/real-root-dev
Ce fichier est documente dans le fichier
Documentation/initrd.txt des sources du noyau.
/proc/sys/kernel/reboot-cmd (Sparc seulement)
permet apparemment de fournir un argument au chargeur de boot
ROM/Flash Sparc. Peut-etre indique-t-il que faire apres
redemarrage ?
/proc/sys/kernel/rtsig-max
(Uniquement pour les noyaux jusqu'a 2.6.7 inclus ; consultez
setrlimit(2)).Ce fichier peut etre utilise pour ajuster le
nombre maximal de signaux POSIX temps-reel (en file d'attente)
pouvant se trouver en attente sur le systeme.
/proc/sys/kernel/rtsig-nr
(Uniquement pour les noyaux de Linux jusqu'a 2.6.7 inclus). Ce
fichier indique le nombre de signaux POSIX temps-reel
actuellement en file attente.
/proc/sys/kernel/sem (disponible depuis Linux 2.4)
contient 4 limites pour les semaphores System V. Ces valeurs
sont respectivement :
SEMMSL Le nombre maximal de semaphores par ensemble.
SEMMNS Une limite generale au systeme pour le nombre de
semaphores dans tous les ensembles.
SEMOPM Le nombre maximal d'operations que l'on peut indiquer
dans un appel semop(2).
SEMNI Une limite generale sur le nombre maximal d'identifiants
de semaphores.
/proc/sys/kernel/sg-big-buff
Ce fichier montre la taille du tampon pour le pilote SCSI
generique (sg). Vous ne pourrez pas y ecrire pour le moment,
mais vous pouvez changer sa valeur a la compilation en editant
include/scsi/sg.h et en modifiant SG_BIG_BUFF. Toutefois, il ne
devrait y avoir aucune raison de le modifier.
/proc/sys/kernel/shmall
Ce fichier contient le nombre maximal de pages de memoire
partagee (IPC System V) au niveau du systeme.
/proc/sys/kernel/shmmax
Ce fichier permet de lire ou modifier la taille maximale des
segments de memoire partagee (IPC System V) que l'on peut creer.
Les segments de memoire jusqu'a 1Go sont a present autorises par
le noyau. La valeur par defaut est SHMMAX.
/proc/sys/kernel/shmmni
(disponible depuis Linux 2.4) Ce fichier indique le nombre
maximal de segments de memoire partagee System V que l'on peut
creer.
/proc/sys/kernel/sysrq
Ce fichier controle les fonctions qui peuvent etre appelees par
les combinaisons SysRq. Par defaut, le fichier contient un
<< 1 >>, ce qui signifie que toute demande SysRq est autorisee
(dans les anciennes versions du noyau, SysRq etait desactive par
defaut, et il fallait l'activer explicitement lors de
l'execution, mais ce n'est plus le cas). Les valeurs possibles
dans ce fichier sont :
0 - desactiver sysrq completement
1 - activer toutes les fonctions de sysrq
>1 - masque de bits des sysrq autorisees, defini comme ceci :
2 - active le controle du niveau de journalisation de
la console
4 - active le controle du clavier (SAK, unraw
8 - active la production d'images de debogue des
processus, etc.
16 - active la commande sync
32 - active le remontage en lecture seule
64 - active l'envoi de signaux aux processus (term,
kill, oom-kill)
128 - autorise reboot/poweroff
256 - autorise la definition de la politesse de toutes
les taches temps reel
Ce fichier n'est present que si l'option de configuration du
noyau CONFIG_MAGIC_SYSRQ a ete validee. Pour plus
d'informations, consultez Documentation/sysrq.txt dans les
sources du noyau.
/proc/sys/kernel/version
Ce fichier contient une chaine du type :
#5 Wed Feb 25 21:49:24 MET 1998
Le champ << #5 >> indique que c'est la cinquieme compilation du
noyau depuis ces sources, et la date correspond a celle de la
compilation.
/proc/sys/kernel/threads-max (disponible depuis Linux 2.3.11)
Ce fichier contient le nombre maximal de threads (taches) qui
peuvent etre crees sur le systeme.
/proc/sys/kernel/zero-paged (PowerPC seulement)
Ce fichier contient un drapeau. S'il est active (non-nul),
Linux-PPC effacera les pages dans sa boucle d'inactivite,
accelerant eventuellement get_free_pages.
/proc/sys/net
Ce repertoire contient des elements relatif au reseau. Des
explications pour certains des fichiers de ce repertoire peuvent
etre trouvees dans tcp(7) et ip(7).
/proc/sys/net/core/somaxconn
Ce fichier defini une valeur plafond pour le parametre backlog
de listen(2) ; consultez la page de manuel listen(2) pour des
details.
/proc/sys/proc
Ce repertoire peut etre vide.
/proc/sys/sunrpc
Ce repertoire correspond aux appels de procedures a distance
(RPC) sur un systeme de fichiers NFS. Sur certains systemes, il
est absent.
/proc/sys/vm
Ce repertoire contient des fichiers de parametrage de la gestion
de memoire, des tampons, et du cache.
/proc/sys/vm/drop_caches (depuis Linux 2.6.16)
Ecrire dans ce fichier fait liberer de la memoire par le noyau,
les caches, dentries et inodes propres, en liberant ainsi cette
memoire libre.
Pour liberer les pagecache, utilisez echo 1 >
/proc/sys/vm/drop_caches ; to liberer les dentries et les
inodes, utilisez echo 2 > /proc/sys/vm/drop_caches ; pour
liberer les pagecache, dentries et inodes, utilisez echo 3 >
/proc/sys/vm/drop_caches.
Parce que cette operation est non-destructive, et que les objets
sales ne sont pas liberables, l'utilisateur doit utiliser la
commande sync(8) au prealable.
/proc/sys/vm/legacy_va_layout (depuis Linux 2.6.9)
S'il est non nul, ceci desactive la nouvelle disposition de
carte memoire 32 bit ; le noyau utilisera alors la disposition
habituelle (legacy) (2.4) pour tous les processus.
/proc/sys/vm/memory_failure_early_kill (depuis Linux 2.6.32)
Controle comment tuer les processus lorsqu'une erreur memoire
non corrigee (typiquement une erreur sur 2 bits sur un module de
memoire) qui ne peut pas etre geree par le noyau est detectee en
tache de fond par le materiel. Dans certains cas (par exemple
s'il existe une copie valide de la page sur disque), le noyau
est capable de recuperer cette erreur de maniere transparente
sans qu'aucune application ne soit touchee. Mais si le noyau n'a
pas de copie a jour des donnees, il va tuer des processus afin
d'empecher la propagation de la corruption des donnees.
Ce fichier peut contenir l'une des valeurs suivantes :
1: Tuer des que la corruption est detectee tous les processus
qui ont une projection de la page corrompue et
non-rechargeable. Notez que ceci n'est pas possible avec
quelques types de pages, comme les donnees allouees en
interne par le noyau ou le cache d'echange (swap cache),
mais cela fonctionne avec la majorite des pages utilisateur.
0: Ne supprimer que la projection de la page corrompue dans
tous les processus, et ne tuer que les processus qui
essaient d'y acceder.
L'action de tuer le processus est effectuee en envoyant un
signal SIGBUS avec si_code mis a BUS_MCEERR_AO. Les processus
peuvent gerer cette situation s'ils le souhaitent ; voyez
sigaction(2) pour plus de details.
Cette fonctionnalite n'est disponible que sur les
architectures/plateformes avec une gestion avancee de
verification de la machine et depend des possibilites du
materiel.
Les applications peuvent modifier individuellement le parametre
memory_failure_early_kill avec l'operation prctl(2)
PR_MCE_KILL.
N'est disponible que si le noyau est configure avec l'option
CONFIG_MEMORY_FAILURE.
/proc/sys/vm/memory_failure_recovery (depuis Linux 2.6.32)
Activer la recuperation sur une erreur memoire (si la plateforme
le supporte)
1: Tenter une recuperation.
0: Toujours sortir en mode panique sur une erreur memoire.
N'est disponible que si le noyau est configure avec l'option
CONFIG_MEMORY_FAILURE.
/proc/sys/vm/oom_dump_tasks (depuis Linux 2.6.25)
Active la production d'une image des taches du systeme (a
l'exception des threads du noyau) lors des mises a mort sur
memoire saturee. L'image comprend les informations suivantes
pour chaque tache (thread ou processus) : identifiant de thread,
identifiant d'utilisateur reel, identifiant du groupe de thread
(identifiant du processus) taille de la memoire virtuelle, taile
de la memoire residante, CPU sur lequel la tache etait
ordonnancee, valeur de oom_adj (voir la description de
/proc/[pid]/oom_adj) et le nom de la commande. C'est utile pour
trouver la raison de la mise a mort sur memoire saturee et pour
identifier la tache defectueuse qui en est la cause.
Avec la valeur zero, l'information est supprimee. Sur les tres
gros systeme avec des milliers de taches, il peut ne pas etre
faisable de creer l'image avec les informations sur chacune. Ces
systemes ne devraient pas etre obliges de penaliser leurs
performances dans ces cas de penurie de memoire si ces
informations ne sont pas desirees.
Pour toute valeur non nulle, les informations sont presentees a
chaque mise a mort sur memoire saturee.
La valeur par defaut est 0.
/proc/sys/vm/oom_kill_allocating_task (depuis Linux 2.6.24)
Ceci active ou desactive la mise a mort de la tache qui produit
l'erreur dans les situations de memoire saturee.
Avec une valeur de zero, la liste des taches sera parcourue et
la tache a tuer sera selectionnee en fonction d'heuristiques.
Ceci selectionne normalement une tache consommant une grosse
quantite de memoire qui liberera beaucoup de memoire lorsqu'elle
sera tuee.
Avec une valeur non nulle, la tache tuee sera celle qui echouera
lors d'une allocation de memoire. Ceci evite un parcours de la
liste des taches qui peut etre couteux.
Si /proc/sys/vm/panic_on_oom est non nul, il est prioritaire sur
toute valeur utilisee dans
/proc/sys/vm/oom_kill_allocating_task.
La valeur par defaut est 0.
/proc/sys/vm/overcommit_memory
Ce fichier contient le mode pour les statistiques de la memoire
virtuelle du noyau. Les valeurs sont :
0: gestion heuristique du depassement de l'allocation
memoire (c'est la valeur par defaut)
1: pas de gestion du depassement, ne jamais verifier
2: toujours verifier, gestion stricte du depassement
Dans le mode 0, les appels a mmap(2) utilisant MAP_NORESERVE ne
sont pas verifies et le niveau de verification par defaut est
tres faible, laissant le risque d'avoir un processus
<< OOM-killed >>. Sous Linux 2.4, toute valeur non nulle
implique le mode 1. Dans le mode 2 (disponible depuis Linux
2.6), l'espace d'adressage virtuel total sur le systeme est
limite a (SS + RAM*(r/100)), ou SS est la taille de l'espace
d'echange (<< swap >>), RAM la taille de la memoire physique, et
r le contenu du fichier /proc/sys/vm/overcommit_ratio.
/proc/sys/vm/overcommit_ratio
Consultez la description de /proc/sys/vm/overcommit_memory.
/proc/sys/vm/panic_on_oom (depuis Linux 2.6.18)
Ceci active ou desactive le declenchement d'une panique dans les
situations de memoire saturee.
Si ce fichier est configure a la valeur 0, le noyau (le
<< OOM-killer >>) tuera un processus perturbateur. D'habitude,
il peut tuer un processus perturbateur et le systeme survivra.
Si ce fichier est configure a la valeur 1, le noyau paniquera
dans une situation de memoire saturee. Cependant, si un
processus limite les allocations que sur certains noeuds en
utilisant des politiques memoire (MPOL_BIND dans mbind(2)) ou
des ensembles de processeurs (cpuset(7)), et si ces noeuds
voient leur memoire saturee, un processus peut etre tue par le
OOM-killer. Aucune panique ne survient dans ce cas. Comme de la
memoire est disponible sur d'autres noeuds, le systeme n'a pas
entierement atteint une situation de memoire saturee.
Si ce fichier est configure a la valeur 2, le noyau panique
toujours dans une situation de memoire saturee.
La valeur par defaut est 0. Les valeurs 1 et 2 sont utilisees
pour la recuperation en cas d'erreur de groupements.
Selectionnez l'un ou l'autre en fonction de votre politique de
recuperation en cas d'erreur.
/proc/sys/vm/swappiness
La valeur dans ce fichier controle le niveau d'agressivite
utilise par le noyau pour deplacer des pages memoire dans
l'espace d'echange. Les valeurs elevees indique une agressivite
plus importante. La valeur par defaut est de 60.
/proc/sysrq-trigger (depuis Linux 2.4.21)
L'ecriture d'un caractere dans ce fichier declenche la meme
fonction SysRq que la combinaison ALT-SysRq-<caractere> (voir la
description de /proc/sys/kernel/sysrq). Ce fichier est
normalement accessible en ecriture que pour root. Pour plus
d'informations, consultez le fichier Documentation/sysrq.txt
dans les sources du noyau.
/proc/sysvipc
Sous-repertoire contenant les pseudo-fichiers msg, sem and shm.
Ces fichiers listent les objets d'IPC System V (soient les files
de messages, les semaphores, et la memoire partagee) existant
actuellement sur le systeme, en donnant les memes informations
que celles disponibles par la commande ipcs(1). Ces fichiers ont
des en-tetes et sont formates (a raison d'un objet IPC par
ligne) de facon a etre lus facilement. La page svipc(7) donne
davantage d'informations concernant les donnees fournies par ces
fichiers.
/proc/tty
Sous-repertoire contenant les pseudo-fichiers et les
sous-repertoires pour les pilotes de tty et la gestion de la
ligne.
/proc/uptime
Ce fichier contient deux valeurs : la duree de fonctionnement
(uptime) en secondes, et le temps ecoule a ne rien faire (idle),
en secondes egalement.
/proc/version
Cette chaine identifie la version du noyau en cours d'execution.
Elle inclue le contenu de /proc/sys/kernel/ostype,
/proc/sys/kernel/osrelease et /proc/sys/kernel/version. Par
exemple :
Linux version 1.0.9 (quinlan@phaze) #1 Sat May 14 01:51:54 EDT 1994
/proc/vmstat (depuis Linux 2.6)
Ce fichier contient diverses statistiques sur la memoire
virtuelle.
/proc/zoneinfo (depuis Linux 2.6.13)
Ce fichier affiche des informations concernant les zones
memoire. C'est utile pour analyser le comportement de la memoire
virtuelle.
NOTES
De nombreuses chaines (par exemple, l'environnement et de la ligne de
commande) sont affichees dans un format interne, ses champs termines
par un caractere nul. Il est parfois plus lisible d'utiliser od -c ou
tr "\000" "\n" pour les lire. En remplacement, la commande echo `cat
<file>` fonctionne bien.
Cette page de manuel est incomplete, incertaine, et devrait etre mise a
jour tres souvent.
VOIR AUSSI
cat(1), dmesg(1), find(1), free(1), ps(1), tr(1), uptime(1), chroot(2),
mmap(2), readlink(2), syslog(2), slabinfo(5), hier(7), time(7), arp(8),
hdparm(8), ifconfig(8), init(8), lsmod(8), lspci(8), mount(8),
netstat(8), procinfo(8), route(8)
Les fichiers source du noyau : Documentation/filesystems/proc.txt,
Documentation/sysctl/vm.txt
COLOPHON
Cette page fait partie de la publication 3.27 du projet man-pages
Linux. Une description du projet et des instructions pour signaler des
anomalies peuvent etre trouvees a l'adresse
<URL:http://www.kernel.org/doc/man-pages/>.
TRADUCTION
Depuis 2010, cette traduction est maintenue a l'aide de l'outil po4a
<URL:http://po4a.alioth.debian.org/> par l'equipe de traduction
francophone au sein du projet perkamon
<URL:http://perkamon.alioth.debian.org/>.
Christophe Blaess <URL:http://www.blaess.fr/christophe/> (1996-2003),
Alain Portal <URL:http://manpagesfr.free.fr/> (2003-2006). Jean-Luc
Coulon et l'equipe francophone de traduction de Debian (2006-2009).
Veuillez signaler toute erreur de traduction en ecrivant a
<debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le
paquet manpages-fr.
Vous pouvez toujours avoir acces a la version anglaise de ce document
en utilisant la commande << man -L C <section> <page_de_man> >>.