logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Prochaine révision Les deux révisions suivantes
doc:systeme:fhs-proc [14/11/2012 14:59]
127.0.0.1 modification externe
doc:systeme:fhs-proc [03/07/2014 00:06]
127.0.0.1 modification externe
Ligne 1: Ligne 1:
 ====== /proc ====== ====== /proc ======
  
-C'est le répertoire contenant toutes ​les informations ​sur le fonctionnement du processeur en direct live !+  * Objet : /proc 
 +  * Niveau requis : {{tag>​débutant}} 
 +  * Commentaires : //Le repertoire ​''/​proc''​. // 
 +  * Débutant, à savoir : [[:​doc:​systeme:​commandes:​le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-) 
 +  * Suivi : {{tag>​en-chantier à-placer}} Pour choisir, voir les autres Tags possibles dans [[:​atelier:#​tags|l'​Atelier]]. 
 +    * Création par [[user>​smolski]] le 13/​06/​2010 
 +    * Testé par <...> le <...> FIXME 
 +  * Commentaires ​sur le forum : [[http://​debian-facile.org/​viewtopic.php?​id=7533 | Lien vers le forum concernant ce tuto]]((N'​hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs ​!))
  
 +**Nota :**
 +
 +Contributeurs,​ les FIXME sont là pour vous aider, supprimez-les une fois le problème corrigé ou le champ rempli !
 +
 +===== Introduction =====
 +
 +C'est le répertoire contenant toutes les informations sur le fonctionnement du processeur //en direct live// ! \\
 Ces informations créent des fichiers virtuels qui vont disparaître au prochain arrêt du pc. Ces informations créent des fichiers virtuels qui vont disparaître au prochain arrêt du pc.
  
-===== Le système de fichiers ​/proc =====+Le répertoire ​/proc ne représente pas de vrais fichiers, mais est simplement une interface entre le noyau et l'​utilisateur. \\ 
 +Il permet d'​obtenir facilement des informations sur le paramétrage du noyau et permet également de le changer.
  
-Le répertoire /proc ne représente pas de vrais fichiers, mais est simplement une interface entre le noyau et l'​utilisateur. Il permet d'​obtenir facilement des informations sur le paramétrage du noyau et permet également de le changer. ​Cet article va vous faire découvrir les subtilités de ce système de fichiers et va également tenter de remédier au manque de documentation en français sur le sujet.+Cet article va vous faire découvrir les subtilités de ce système de fichiers et va également tenter de remédier au manque de documentation en français sur le sujet.
  
-Le répertoire /proc étant relativement peuplé, nous allons examiner ici les divers fichiers et répertoires qui l'​habitent. Il est vivement conseillé au lecteur d'​examiner les fichiers correspondants sur son système en cours de lecture.+Le répertoire ​**/proc** étant relativement peuplé, nous allons examiner ici les divers fichiers et répertoires qui l'​habitent. ​\\ 
 +//Il est vivement conseillé au lecteur// d'​examiner les fichiers correspondants sur son système en cours de lecture. ​;-)
  
-Ceci étant dit, entrons maintenant dans le vif du sujet. Le répertoire /proc contient un grand nombre de fichiers et de sous-répertoires. Examinons tout d'​abord les fichiers contenus dans le premier niveau de l'​arborescence. ​Ces fichiers décrivent la configuration matérielle et l'​état du système.+Ceci étant dit, entrons maintenant dans le vif du sujet. ​\\ 
 +Le répertoire ​''​/proc'' ​contient un grand nombre de fichiers et de sous-répertoires. ​\\ 
 +Examinons tout d'​abord les fichiers contenus dans le premier niveau de l'​arborescence. ​\\
  
-apm : Informations sur l'​Advanced Power Management.  +===== Arborescence =====
-bus : Informations sur les bus.  +
-cmdline : Ligne de commande utilisée pour lancer le noyau (c'​est-à-dire les paramètres passés par l'​intermédiaire de LILO).  +
-cpuinfo : Informations sur le(s) processeur(s).  +
-devices : Périphériques (bloc et caractères) disponibles.  +
-dma : Liste des canaux DMA utilisés.  +
-filesystems : Liste des systèmes de fichiers reconnus par le noyau.  +
-interrupts : Liste des interruptions utilisées avec les périphériques correspondants.  +
-ioports : Liste des ports d'​entrée/​sortie utilisés avec les périphériques correspondants.  +
-kcore : Image virtuelle de la mémoire; utilisée principalement à des fins de débogage.  +
-kmsg : Messages du noyau.  +
-ksyms : Table des symboles du noyau; utilisée pour le débogage et par l'​utilitaire insmod pour changer à la volée les adresses dans le code des modules lors de leur installation.  +
-loadavg : Charge moyenne de la machine. Comparez les sorties des commandes cat /​proc/​loadavg et uptime.  +
-locks : Liste des verrous actifs (voir la page de manuel de la fonction flock() pour plus de détails sur le sujet).  +
-meminfo : Ce fichier donne des informations sur l'​utilisation globale de la mémoire. Ces informations sont notamment reprises par la commande free. Comparez les sorties des commandes cat /​proc/​meminfo et free.  +
-misc : Informations diverses.  +
-modules : Liste des modules noyau en cours d'​utilisation. Cette liste est notamment utilisée par la commande lsmod.  +
-mounts : Liste des systèmes de fichiers en cours d'​utilisation. Encore une fois, cette liste est très proche de la sortie de la commande mount lorsqu'​elle est appelée sans paramètre. Bien que la commande mount utilise en fait le fichier /etc/mtab, il est possible de créer un lien symbolique de /etc/mtab vers /​proc/​mounts pour les systèmes qui tournent avec le système de fichiers racine monté en lecture seule.  +
-partitions : Liste des partitions connues par le système.  +
-rtc : Informations sur l'​horloge temps réel (Real Time Clock).  +
-slabinfo : Informations sur le système d'​allocation mémoire du noyau.  +
-stat : Statistiques globales cumulées depuis le dernier démarrage sur l'​utilisation du système : temps CPU total utilisé, nombre d'​interruptions,​ nombre de défaut de pages, nombre total de processus lancés, etc.  +
-swaps : Liste des partitions disque utilisées par le système de mémoire virtuelle (swap).  +
-uptime : Temps en secondes depuis le démarrage du système.  +
-version : Chaîne de caractères identifiant le noyau en cours d'​utilisation (date de compilation,​ compilateur utilisé, version du noyau, etc.).+
  
 +Ces fichiers décrivent la configuration matérielle et l'​état du système.
 +  * apm : Informations sur l'​Advanced Power Management. ​
 +  * bus : Informations sur les bus. 
 +  * cmdline : Ligne de commande utilisée pour lancer le noyau (c'​est-à-dire les paramètres passés par l'​intermédiaire de LILO). ​
 +  * cpuinfo : Informations sur le(s) processeur(s). ​
 +  * devices : Périphériques (bloc et caractères) disponibles. ​
 +  * dma : Liste des canaux DMA utilisés. ​
 +  * filesystems : Liste des systèmes de fichiers reconnus par le noyau. ​
 +  * interrupts : Liste des interruptions utilisées avec les périphériques correspondants. ​
 +  * ioports : Liste des ports d'​entrée/​sortie utilisés avec les périphériques correspondants. ​
 +  * kcore : Image virtuelle de la mémoire; utilisée principalement à des fins de débogage. ​
 +  * kmsg : Messages du noyau. ​
 +  * ksyms : Table des symboles du noyau; utilisée pour le débogage et par l'​utilitaire insmod pour changer à la volée les adresses dans le code des modules lors de leur installation. ​
 +  * loadavg : Charge moyenne de la machine. Comparez les sorties des commandes cat /​proc/​loadavg et uptime. ​
 +  * locks : Liste des verrous actifs (voir la page de manuel de la fonction flock() pour plus de détails sur le sujet). ​
 +  * meminfo : Ce fichier donne des informations sur l'​utilisation globale de la mémoire. Ces informations sont notamment reprises par la commande //free//. \\ Comparez les sorties des commandes <code user>cat /​proc/​meminfo</​code>​ et <code user>​free</​code> ​
 +  * misc : Informations diverses. ​
 +  * modules : Liste des modules noyau en cours d'​utilisation. Cette liste est notamment utilisée par [[:​doc:​systeme:​lsmod |la commande lsmod]]. ​
 +  * mounts : Liste des systèmes de fichiers en cours d'​utilisation. Encore une fois, cette liste est très proche de la sortie [[:​doc:​systeme:​mount |de la commande mount]] lorsqu'​elle est appelée sans paramètre. Bien que la commande //mount// utilise en fait le fichier// /​etc/​mtab//,​ il est possible de créer un lien symbolique((Voir : [[:​doc:​systeme:​ln | la commande ln]])) de ///​etc/​mtab//​ vers ///​proc/​mounts//​ pour les systèmes qui tournent avec le système de fichiers racine monté en lecture seule. ​
 +  * partitions : Liste des partitions connues par le système. ​
 +  * rtc : Informations sur l'​horloge temps réel (Real Time Clock). ​
 +  * slabinfo : Informations sur le système d'​allocation mémoire du noyau. ​
 +  * stat : Statistiques globales cumulées depuis le dernier démarrage sur l'​utilisation du système :
 +     * temps CPU total utilisé,
 +     * nombre d'​interruptions,​
 +     * nombre de défaut de pages,
 +     * nombre total de processus lancés,
 +     * etc. 
 +  * swaps : Liste des partitions disque utilisées par le système de mémoire virtuelle (swap). ​
 +  * uptime : Temps en secondes depuis le démarrage du système. ​
 +  * version : Chaîne de caractères identifiant le noyau en cours d'​utilisation (date de compilation,​ compilateur utilisé, version du noyau, etc.).
  
-/proc+**/proc** contient également un certain nombre de répertoires dont le nom est un nombre. \\ 
 +Il y en a un par processus en cours d'​exécution sur le système et chacun d'​entre eux contient des fichiers et répertoires qui donnent un certain nombre d'​informations sur le processus en question.
  
-Contient également un certain nombre de répertoires dont le nom est un nombre. Il y en a un par processus en cours d'​exécution sur le système et chacun d'​entre eux contient des fichiers et répertoires qui donnent un certain nombre d'​informations sur le processus en question. ​Notons au passage qu'un lien nommé self pointe automatiquement vers le répertoire contenant les informations sur le processus courant; ainsils -al /​proc/​self ​listera le contenu du répertoire contenant les informations sur le processus ls en cours.+Notons au passage qu'un lien nommé ​**self** pointe automatiquement vers le répertoire contenant les informations sur le processus courant; ainsi 
 +<code user>ls -al /proc/self</​code>​
  
-ls -l /proc/2441+listera le contenu du répertoire contenant les informations sur le processus [[:​doc:​systeme:​ls]] en cours. 
 +<code user>ls -l /proc/2441</​code>​ 
 + 
 +<​code>​
 total 0 total 0
 -r--r--r-- ​   1 root     ​root ​           0 sep 29 16:34 cmdline -r--r--r-- ​   1 root     ​root ​           0 sep 29 16:34 cmdline
Ligne 56: Ligne 86:
 -r--r--r-- ​   1 root     ​root ​           0 sep 29 16:34 stat -r--r--r-- ​   1 root     ​root ​           0 sep 29 16:34 stat
 -r--r--r-- ​   1 root     ​root ​           0 sep 29 16:34 statm -r--r--r-- ​   1 root     ​root ​           0 sep 29 16:34 statm
--r--r--r-- ​   1 root     ​root ​           0 sep 29 16:34 status+-r--r--r-- ​   1 root     ​root ​           0 sep 29 16:34 status</​code>​ 
 Examinons les lignes une par une : Examinons les lignes une par une :
  
-cmdline : La ligne de commande qui a été utilisée pour lancer le processus.  +  * cmdline : La ligne de commande qui a été utilisée pour lancer le processus.  
-cwd : Lien vers le répertoire courant du processus.  +  ​* ​cwd : Lien vers le répertoire courant du processus.  
-environ Liste des variables d'​environnement du processus.  +  ​* ​environ Liste des variables d'​environnement du processus.  
-exe : Lien vers le fichier contenant le code exécutable du processus.  +  ​* ​exe : Lien vers le fichier contenant le code exécutable du processus.  
-fd : Répertoire contenant une entrée par fichiers et sockets ouverts par le processus. Cette liste se présente sous la forme suivante : +  ​* ​fd : Répertoire contenant une entrée par fichiers et sockets ouverts par le processus. ​\\ Cette liste se présente sous la forme suivante :<code bash>ls -l /​proc/​2441/​fd</​code><​code>​total 0
- +
-ls -l /​proc/​2441/​fd +
-total 0+
 lrwx------ ​   1 root     ​root ​          64 sep 29 16:46 0 -> /dev/pts/1 lrwx------ ​   1 root     ​root ​          64 sep 29 16:46 0 -> /dev/pts/1
 lrwx------ ​   1 root     ​root ​          64 sep 29 16:46 1 -> /dev/pts/1 lrwx------ ​   1 root     ​root ​          64 sep 29 16:46 1 -> /dev/pts/1
 lrwx------ ​   1 root     ​root ​          64 sep 29 16:46 2 -> /dev/pts/1 lrwx------ ​   1 root     ​root ​          64 sep 29 16:46 2 -> /dev/pts/1
 lrwx------ ​   1 root     ​root ​          64 sep 29 16:46 255 -> /dev/pts/1 lrwx------ ​   1 root     ​root ​          64 sep 29 16:46 255 -> /dev/pts/1
-lrwx------ ​   1 root     ​root ​          64 sep 29 16:46 4 -> socket:​[177] +lrwx------ ​   1 root     ​root ​          64 sep 29 16:46 4 -> socket:​[177]</​code>​Les trois premiers descripteurs de fichiers (0, 1, 2) correspondent aux flux standards et seront présents pour quasiment tous les processus : 
-Les trois premiers descripteurs de fichiers (0, 1, 2) correspondent aux flux d'​entrée (stdin), de sortie (stdout) et d'​erreur (stderr) ​standards et seront présents pour quasiment tous les processus. +       ​- ​d'​entrée (stdin), 
- +       ​- ​de sortie (stdout) 
-maps : Cartographie mémoire du processus.+       ​- ​et d'​erreur (stderr).
  
 +  * maps : Cartographie mémoire du processus.<​code>​
 08048000-080c0000 r-xp 00000000 03:08 29952      /bin/bash 08048000-080c0000 r-xp 00000000 03:08 29952      /bin/bash
 [...] [...]
Ligne 88: Ligne 117:
 [...] [...]
 40186000-40187000 rw-p 00000000 00:00 0 40186000-40187000 rw-p 00000000 00:00 0
-bfffb000-c0000000 rwxp ffffc000 00:00 0 +bfffb000-c0000000 rwxp ffffc000 00:00 0</​code>​Examinons de plus près la signification de chaque ligne : 
-Examinons de plus près la signification de chaque ligne :  +     - Les deux premiers nombres hexadécimaux correspondent à l'​adresse virtuelle de la zone mémoire. 
-Les deux premiers nombres hexadécimaux correspondent à l'​adresse virtuelle de la zone mémoire. Le troisième champ correspond aux permissions d'​accès de la zone : lecture (r), écriture (w) et exécution (x)+     ​- ​Le troisième champ correspond aux permissions d'​accès de la zone : 
- +       ​- ​lecture (r), 
-mem : Mémoire utilisée par le processus.  +       ​- ​écriture (w) et 
-root : Lien vers le répertoire racine du processus. Cela permet notamment de déterminer si le processus a été lancé avec la commande chroot.  +       ​- ​exécution (x).
-stat : Etat du processus.  +
-status : Etat du processus dans un format plus lisible.  +
-statm Informations sur l'​état de la mémoire utilisée.  +
-status : Ce fichier donne un grand nombre d'​informations sur l'​état actuel du processus. Ces informations sont notamment utilisées par des programmes comme top et ps pour déterminer l'​état du processus.+
  
-cat /​proc/​2441/​status+  * mem : Mémoire utilisée par le processus.  
 +  * root : Lien vers le répertoire racine du processus. Cela permet notamment de déterminer si le processus a été lancé avec la commande chroot.  
 +  * stat : Etat du processus.  
 +  * status : Etat du processus dans un format plus lisible.  
 +  * statm Informations sur l'​état de la mémoire utilisée.  
 +  * status : Ce fichier donne un grand nombre d'​informations sur l'​état actuel du processus. Ces informations sont notamment utilisées par des programmes comme [[:​doc:​systeme:​top]] et [[:​doc:​systeme:​ps]] pour déterminer l'​état du processus. 
 +<code user>cat /​proc/​2441/​status</​code>​ 
 +<​code>​
 Name:   bash Name:   bash
 State: ​ S (sleeping) State: ​ S (sleeping)
Ligne 120: Ligne 152:
 CapInh: 0000000000000000 CapInh: 0000000000000000
 CapPrm: 00000000fffffeff CapPrm: 00000000fffffeff
-CapEff: 00000000fffffeff+CapEff: 00000000fffffeff</​code>​ 
 Examinons une par une la signification de chaque ligne : Examinons une par une la signification de chaque ligne :
 +  * Name : Le nom du processus, tel qu'il apparaîtra lorsqu'​il sera listé par [[:​doc:​systeme:​ps |la commande ps]] (par exemple). ​
 +  * State : Etat actuel du processus : 
 +     * [S] en attente interruptible,​
 +     * [D] en attente non-interruptible (généralement une requête d'​entrée/​sortie),​
 +     * [R] en cours d'​exécution,​
 +     * [Z] Zombie,
 +     * [T] Stoppé ou tracé. ​
  
-Name : Le nom du processus, tel qu'il apparaîtra lorsqu'​il sera listé par la commande ps (par exemple).  +  * Pid, PPid : Numéro du processus et de celui de son père.  
-State : Etat actuel du processus : en attente interruptible [S], en attente non-interruptible (généralement une requête d'​entrée/​sortie) [D], en cours d'​exécution [R], Zombie [Z], Stoppé ou tracé [T].  +  ​* ​Uid, Gid : Numéro d'​utilisateur réel et effectif du processus.  
-Pid, PPid : Numéro du processus et de celui de son père.  +  ​* ​Groups : Numéro du groupe de processus auquel appartient éventuellement le processus.
-Uid, Gid : Numéro d'​utilisateur réel et effectif du processus.  +
-Groups : Numéro du groupe de processus auquel appartient éventuellement le processus.+
  
 Les sept lignes suivantes concernent l'​utilisation mémoire : Les sept lignes suivantes concernent l'​utilisation mémoire :
 +  * VmSize : Quantité de mémoire totale utilisée. ​
 +  * VmLck : Quantité de mémoire virtuelle verrouillée en RAM. Cela est obtenu en appelant la fonction mlock() et est souvent utilisé par les processus qui veulent garantir un très bon temps de réponse en évitant d'​être swappé. \\ Le daemon **NTP** est un des programmes utilisant cette technique. ​
  
-VmSize : Quantité de mémoire totale utilisée.  +  * VmRSS : (Virtual Memory Resident Stack Size) Taille de la pile en mémoire.  
-VmLck : Quantité de mémoire virtuelle verrouillée en RAM. Cela est obtenu en appelant la fonction mlock() et est souvent utilisé par les processus qui veulent garantir un très bon temps de réponse en évitant d'​être swappé. Le daemon NTP est un des programmes utilisant cette technique.  +  ​* ​VmData : Taille du segment de données.  
-VmRSS : (Virtual Memory Resident Stack Size) Taille de la pile en mémoire.  +  ​* ​VmExe : Taille utilisée par le code exécutable du processus.  
-VmData : Taille du segment de données.  +  ​* ​VmLib : Taille des bibliothèques dynamiques utilisées par le processus.
-VmExe : Taille utilisée par le code exécutable du processus.  +
-VmLib : Taille des bibliothèques dynamiques utilisées par le processus.+
  
 Les lignes restantes se réfèrent aux signaux et capacités du processus; nous ne décrirons ici que les caractéristiques principales. Les lignes restantes se réfèrent aux signaux et capacités du processus; nous ne décrirons ici que les caractéristiques principales.
  
-SigPnd : (Signals Pending) Signaux en attente qui doivent être délivrés au processus.  +  * SigPnd : (Signals Pending) Signaux en attente qui doivent être délivrés au processus. 
-SigIgn : (Signals Ignored) Signaux ignorés qui ne seront pas transmis au processus. +  ​* ​SigIgn : (Signals Ignored) Signaux ignorés qui ne seront pas transmis au processus.
- +
-Les sous-répertoires de /proc+
  
 Examinons maintenant chacun des sous-répertoires plus en détail : Examinons maintenant chacun des sous-répertoires plus en détail :
  
 +===== /proc/ide =====
  
-/proc/ide+Ce répertoire contient des informations à propos de tous les périphériques IDE connus par le noyau. Il contient : 
 +  * un sous-répertoire par contrôleur IDE, 
 +  * un fichier nommé drivers et 
 +  * un lien par périphérique pointant vers les informations spécifiques à ce périphérique.
  
-Ce répertoire contient des informations à propos de tous les périphériques IDE connus par le noyau. Il contient un sous-répertoire par contrôleur IDE, un fichier nommé ​drivers ​et un lien par périphérique pointant vers les informations spécifiques à ce périphérique :+==== drivers ​====
  
-cat /​proc/​ide/​drivers ​+<code user> 
 +cat /​proc/​ide/​drivers</​code>​ 
 +<​code>​
 ide-cdrom version 4.58 ide-cdrom version 4.58
-ide-disk version 1.10 +ide-disk version 1.10</​code>​
-Les informations plus détaillées sont disponibles dans les sous-répertoires spécifiques à chaque contrôleur. Ceux-ci sont nommés ide0, ide1, etc. Parmi les fichiers contenus dans ces sous-répertoires,​ on note en particulier :+
  
-capacity : taille du disque en secteurs de 512 octets.+Les informations plus détaillées sont disponibles dans les sous-répertoires spécifiques à chaque contrôleur. \\ 
 +Ceux-ci sont nommés ide0, ide1, etc.
  
-cat /​proc/​ide/​ide0/​hda/​capacity  +Parmi les fichiers contenus dans ces sous-répertoires,​ on note en particulier : 
-12692736 +<​code>​ 
-bc -ql                  +capacity : taille du disque en secteurs de 512 octets.</​code>​ 
 + 
 +==== capacity ==== 
 + 
 +<code user> 
 +cat /​proc/​ide/​ide0/​hda/​capacity</​code>​ 
 +<​code>​ 
 +12692736</​code>​ 
 +Et : 
 + 
 +<code user> 
 +bc -ql</​code>​ 
 + 
 +<​code>​
 12692736*512/​1024 12692736*512/​1024
-6346368+6346368</​code>​
 On a donc affaire à un disque de 6.3 Go. On a donc affaire à un disque de 6.3 Go.
  
-geometry ​: Géométries physique et logique des disques.+==== geometry ​====
  
-cat /​proc/​ide/​ide0/​hda/​geometry ​+Géométries physique et logique des disques. 
 +<code user> 
 +cat /​proc/​ide/​ide0/​hda/​geometry</​code>​ 
 + 
 +<​code>​
 physical ​    ​12592/​16/​63 physical ​    ​12592/​16/​63
-logical ​     12592/16/63 +logical ​     12592/16/63</​code>​
-media : Contient `disk' ou `cdrom'​ selon le cas.  +
-model : Contient le modèle et la marque du périphérique.+
  
-# cat /​proc/​ide/​ide0/​hda/​model ​    +==== media ====
-IBM-DHEA-36481 +
-settings : Informations complètes sur la configuration du périphérique+
  
 +Contient //disk// ou //cdrom// selon le cas. 
  
-/proc/net+==== model ====
  
-Le sous-répertoire net contient des informations sur la configuration réseau et son usage. En particulier,​ le contenu du fichier dev pourra être utilisé pour déterminer quels sont les périphériques réseaux disponibles sur la machine ainsi que le nombre de paquets reçus et envoyés par chaque interface.+Contient le modèle et la marque du périphérique.</​code>​ 
 +<code user> 
 +cat /​proc/​ide/​ide0/​hda/​model</​code>​ 
 +<​code>​ 
 +IBM-DHEA-36481</​code>​ 
 + 
 +==== settings ==== 
 + 
 +Informations complètes sur la configuration du périphérique 
 + 
 +===== /proc/net ===== 
 + 
 +Le sous-répertoire ​**net** contient des informations sur la configuration réseau et son usage. ​\\ 
 +En particulier,​ le contenu du fichier ​//dev// pourra être utilisé pour déterminer quels sont les périphériques réseaux disponibles sur la machine ainsi que le nombre de paquets reçus et envoyés par chaque interface.
  
 Seuls les fichiers les plus importants sont mentionnés dans la liste ci-dessous : Seuls les fichiers les plus importants sont mentionnés dans la liste ci-dessous :
  
-arp : Contenu de la table ARP du noyau.  +  * arp : Contenu de la table ARP du noyau.  
-dev : Interfaces réseaux avec leurs statistiques d'​utilisation.  +  ​* ​dev : Interfaces réseaux avec leurs statistiques d'​utilisation.  
-ip_fwchains : Chaînage des règles de pare-feu.  +  ​* ​ip_fwchains : Chaînage des règles de pare-feu.  
-ip_fwnames : Nom des chaînes de la configuration pare-feu.  +  ​* ​ip_fwnames : Nom des chaînes de la configuration pare-feu.  
-ip_masq : Répertoire contenant les tables de "​masquerading"​.  +  ​* ​ip_masq : Répertoire contenant les tables de "​masquerading"​.  
-netstat : Statistiques d'​utilisation du réseau.  +  ​* ​netstat : Statistiques d'​utilisation du réseau.  
-route : Table de routage du noyau.  +  ​* ​route : Table de routage du noyau.  
-rpc : Répertoire contenant les informations sur la configuration RPC (Remote Procedure Calls).  +  ​* ​rpc : Répertoire contenant les informations sur la configuration RPC (Remote Procedure Calls).  
-rt_cache : Cache des informations de routage.  +  ​* ​rt_cache : Cache des informations de routage.  
-snmp : Données SNMP.  +  ​* ​snmp : Données SNMP.  
-sockstat : Statistiques sur le nombre de sockets en cours d'​utilisation.  +  ​* ​sockstat : Statistiques sur le nombre de sockets en cours d'​utilisation.  
-tcp : Liste des sockets TCP en cours d'​utilisation.  +  ​* ​tcp : Liste des sockets TCP en cours d'​utilisation.  
-udp : Liste des sockets UDP en cours d'​utilisation.  +  ​* ​udp : Liste des sockets UDP en cours d'​utilisation.  
-igmp : Liste des adresses multicast auxquelles appartient la machine.+  ​* ​igmp : Liste des adresses multicast auxquelles appartient la machine.
  
-N.B. : Dans le cas où le support pour IPv6 est compilé dans le noyau, un certain nombre de fichiers supplémentaires avec un nom terminé par le chiffre 6 apparaîtront dans le répertoire. Ils remplissent le même rôle, mais décrivent la configuration IPv6 et non plus IPv4 comme ceux que nous venons de décrire.+== N.B. : ==
  
 +Dans le cas où le support pour IPv6 est compilé dans le noyau, un certain nombre de fichiers supplémentaires avec un nom terminé par le chiffre 6 apparaîtront dans le répertoire. Ils remplissent le même rôle, mais décrivent la configuration IPv6 et non plus IPv4 comme ceux que nous venons de décrire.
  
-/proc/scsi 
  
-Si vous avez une carte SCSI, le répertoire ​/​proc/​scsi ​contiendra un répertoire dont le nom correspond au type de carte. Celui-ci contient un sous-répertoire par périphérique de ce type présent sur votre machine.+===== /​proc/​scsi ​=====
  
-ls -l /proc/scsi/+Si vous avez une carte SCSI, le répertoire ''/​proc/​scsi''​ contiendra un répertoire dont le nom correspond au type de carte. \\ 
 +Celui-ci contient un sous-répertoire par périphérique de ce type présent sur votre machine. 
 +<code user> 
 +ls -l /proc/scsi/</​code>​ 
 + 
 +<​code>​
 dr-xr-xr-x ​   2 root    root        0 Apr 28 17:47 ncr53c7xx dr-xr-xr-x ​   2 root    root        0 Apr 28 17:47 ncr53c7xx
--rw-r-r- ​     1 root    root        0 Apr 28 17:47 scsi +-rw-r-r- ​     1 root    root        0 Apr 28 17:47 scsi</code>
-Le fichier ​/proc/​scsi/​scsi contient quant à lui la liste complète de tous les périphériques SCSI pris en charge par le système.+
  
-cat /​proc/​scsi/​scsi+==== /​proc/​scsi/​scsi ==== 
 + 
 +Le fichier ''/​proc/​scsi/​scsi''​ contient quant à lui la liste complète de tous les périphériques SCSI pris en charge par le système. 
 +<code bash> 
 +cat /​proc/​scsi/​scsi</​code>​ 
 + 
 +<​code>​
 Attached devices: Attached devices:
 Host: scsi0 Channel: 00 Id: 00 Lun: 00 Host: scsi0 Channel: 00 Id: 00 Lun: 00
   Vendor: RICOH    Model: MP6200S ​         Rev: 1.20   Vendor: RICOH    Model: MP6200S ​         Rev: 1.20
   Type:   ​CD-ROM ​                          ANSI SCSI   Type:   ​CD-ROM ​                          ANSI SCSI
-revision: 02+revision: 02</​code>​ 
 Ici, le seul périphérique SCSI reconnu est un lecteur de CD-Rom. Ici, le seul périphérique SCSI reconnu est un lecteur de CD-Rom.
  
 +===== /​proc/​parports =====
  
-/​proc/​parports+Ce répertoire contient les informations sur les ports parallèles du système.
  
-Ce répertoire contient les informations sur les ports parallèles du système. ​Il contient un sous-répertoire,​ dont le nom est le numéro du port (la numérotation débutant à zéro). Chacun de ces répertoire contient quatre fichiers :+Il contient un sous-répertoire,​ dont le nom est le numéro du port (la numérotation débutant à zéro). ​\\ 
 +Chacun de ces répertoire contient quatre fichiers :
  
-autoprobe : Toutes les informations IEEE-1284 obtenues sur le port.  +  - autoprobe : Toutes les informations IEEE-1284 obtenues sur le port.  
-devices : Liste des pilotes de périphériques utilisant ce port. Un signe + apparaîtra en face des pilotes qui utilisent actuellement ce port.  +  ​- ​devices : Liste des pilotes de périphériques utilisant ce port. Un signe + apparaîtra en face des pilotes qui utilisent actuellement ce port.  
-hardware : Adresse, IRQ et canal DMA utilisés par ce port.  +  ​- ​hardware : Adresse, IRQ et canal DMA utilisés par ce port.  
-irq : IRQ utilisée par ce port. Une nouvelle valeur peut être écrite dans ce fichier pour reconfigurer dynamiquement le port.+  ​- ​irq : IRQ utilisée par ce port. Une nouvelle valeur peut être écrite dans ce fichier pour reconfigurer dynamiquement le port.
  
  
-/proc/tty+===== /​proc/​tty ​=====
  
 Les informations à propos des terminaux virtuels disponibles et en cours d'​utilisation sont disponibles dans ce répertoire et ses sous-répertoires. Les informations à propos des terminaux virtuels disponibles et en cours d'​utilisation sont disponibles dans ce répertoire et ses sous-répertoires.
  
-drivers : Liste des pilotes et leur utilisation.  +  * drivers : Liste des pilotes et leur utilisation.  
-ldiscs : Disciplines de lignes declarées.  +  ​* ​ldiscs : Disciplines de lignes declarées.  
-driver/​serial : Etat des lignes séries et statistiques d'​utilisation. +  ​* ​driver/​serial : Etat des lignes séries et statistiques d'​utilisation.<code bash>cat /​proc/​tty/​driver/​serial</​code><​code>​
- +
-cat /​proc/​tty/​driver/​serial ​+
 serinfo:1.0 driver:5.02 revision:​2000-08-09 serinfo:1.0 driver:5.02 revision:​2000-08-09
 0: uart:16550A port:3F8 irq:4 baud:9600 tx:0 rx:0  0: uart:16550A port:3F8 irq:4 baud:9600 tx:0 rx:0 
 1: uart:16550A port:2F8 irq:3 baud:9600 tx:0 rx:4453 RTS|DTR 1: uart:16550A port:2F8 irq:3 baud:9600 tx:0 rx:4453 RTS|DTR
 2: uart:​unknown port:3E8 irq:4 2: uart:​unknown port:3E8 irq:4
-[...] +[...]</​code>​ 
-La première ligne correspond à un port série non utilisé; la seconde à un port série utilisé par une souris; les lignes suivantes aux ports non présents sur la machine.+  ​* ​La première ligne correspond à un port série non utilisé; 
 +  * la seconde à un port série utilisé par une souris; 
 +  * les lignes suivantes aux ports non présents sur la machine.
  
 +===== /proc/sys =====
  
-/proc/sys : Modification dynamique des paramètres du noyau+Modification dynamique des paramètres du noyau
  
-Le répertoire /proc/sys est une source d'​information très importante, mais également un moyen de modifier les paramètres du noyau en cours d'​utilisation. Soyez cependant vigilant car une mauvaise manipulation peut conduire à une réduction des performances du système, voire à un crash. ​Les fichiers contenus dans /proc/sys et ses sous-répertoires peuvent être utilisés pour paramétrer finement un grand nombre de choses. Notons également que l'​utilisation de certains paramètres change subtilement d'une version de noyau à une autre. C'est le noyau 2.2.13 qui a servi de base à cet article; ceux d'​entre vous qui utilisent déjà un noyau 2.3.x ou encore un noyau 2.0.y pourront donc également noter l'​apparition ou la disparition de certains fichiers. En cas de doute, il n'y a en général malheureusement pas beaucoup de documentation sur le sujet; d'​autre part, le système de fichiers proc est une cible très mouvante. La seule ressource reste bien souvent la lecture du code source du noyau, ce qui demande une bonne dose de courage.+Le répertoire ​''​/proc/sys'' ​est une source d'​information très importante, mais également un moyen de modifier les paramètres du noyau en cours d'​utilisation. 
 +<note important>​Soyez cependant vigilant car une mauvaise manipulation peut conduire à une réduction des performances du système, voire à un crash.</note>
  
 +Les fichiers contenus dans ''/​proc/​sys''​ et ses sous-répertoires peuvent être utilisés pour paramétrer finement un grand nombre de choses. \\
 +Notons également que l'​utilisation de certains paramètres change subtilement d'une version de noyau à une autre. \\
 +C'est le **noyau 2.2.13** qui a servi de base à cet article; ceux d'​entre vous qui utilisent déjà un noyau 2.3.x ou encore un noyau 2.0.y pourront donc également noter l'​apparition ou la disparition de certains fichiers.
 +<​note>​En cas de doute, il n'y a en général malheureusement pas beaucoup de documentation sur le sujet; d'​autre part, le système de fichiers proc est une cible très mouvante. La seule ressource reste bien souvent la lecture du code source du noyau, ce qui demande une bonne dose de courage.</​note>​
  
-/​proc/​sys/​fs+===== /​proc/​sys/​fs ​=====
  
-Le fichier ​file-max ​détermine le nombre maximum de fichiers ouvrables simultanément par le système. Dans le cas où cette valeur soit trop faible (sur un serveur assez chargé par exemple), il est possible de la changer dynamiquement en écrivant une nouvelle valeur dans ce fichier.+==== file-max ​====
  
-# cat /​proc/​sys/​fs/​file-max  +Le fichier **file-max** détermine le nombre maximum de fichiers ouvrables simultanément par le système. Dans le cas où cette valeur soit trop faible (sur un serveur assez chargé par exemple), il est possible de la changer dynamiquement en écrivant une nouvelle valeur dans ce fichier. 
-4096 +<code user>cat /​proc/​sys/​fs/​file-max</code>
-# echo 6000 > /​proc/​sys/​fs/​file-max +
-# cat /proc/​sys/​fs/​file-max  +
-6000 +
-Le fichier file-nr quant à lui contient trois nombres qui correspondent respectivement au nombre de descripteurs de fichiers alloués, au nombre de descripteurs de fichiers actuellement utilisés et au nombre maximum de descripteurs utilisables par le système; c'est cette dernière valeur qui peut être changée grâce au fichier file-max.+
  
-Il est important de noter que ces limites sont globales au système. Le nombre maximum de fichiers ouverts simultanément par un seul processus est limité à 1024, et il est sensiblement plus difficile de changer cette limitation. Il faut pour cela modifier la valeur des macros NR_OPEN dans les fichiers fs.h et limits.h, puis augmenter la valeur de la macro NR_FILE dans fs.h (ces fichiers se trouvant dans les sources du noyau), puis recompiler celui-ci.+<​code>​4096</​code>​
  
-Tout comme pour les descripteurs de fichiers, le noyau alloue dynamiquement l'​espace nécessaire pour stocker les i-nodes, mais ne peut pas le désallouer. La valeur contenue dans le fichier inode-max est le nombre maximum de descripteurs de i-nodes. Cette valeur doit être trois à quatre fois supérieure à la valeur de file-max ​dans la mesure où stdin, stdout et les sockets utilisent chacun un descripteur de i-node. Si le système se plaint d'un manque de i-nodes, c'est cette valeur que vous devrez augmenter. Seules les trois premières valeurs de inode-state sont utilisées; elles correspondent à nr_inodes, nr_free_inodes et preshrink.+<code user>​echo 6000 > /​proc/​sys/​fs/​file-max</​code>​
  
-nr_inodes : Nombre de i-nodes actuellement allouées. Le nombre peut être légèrement supérieur à inode-max dans la mesure où les i-nodes sont allouées par page mémoire complète.  +<code user>cat /​proc/​sys/​fs/​file-max </​code>​
-nr_free_inodes : Nombre de i-nodes non utilisées.  +
-preshrink : Cette valeur est non nulle lorsque nr_inodes est supérieur à inode-max; le système essayera de recycler les i-nodes non utilisées au lieu d'en allouer de nouvelles.+
  
-Le fichier inode-nr contient simplement les deux premières valeurs de inode-state. En dehors des fichiers précédemment cités, le répertoire sys/fs contient également le sous-répertoire binfmt_misc qui permet de contrôler les types d'​exécutables reconnus par le noyau. binfmt_misc permet de déclarer de nouveaux types de fichiers exécutables au noyau sans avoir à le recompiler. Le système fonctionne en repérant les exécutables soit par nombre magique ("​magic number"​ en anglais) ou soit par extension du nom de fichier.+<​code>​ 
 +6000</code>
  
-Une fois que le noyau a reconnu un type d'​exécutable,​ l'​interpréteur associé sera invoqué avec le nom du fichier exécutable passé en paramètre. Le répertoire binfmt_misc contient les fichiers register et status, plus un fichier par format déclaré. La syntaxe standard pour déclarer un nouveau type d'​exécutable est la suivante :+==== file-nr ==== 
 + 
 +Le fichier **file-nr** quant à lui contient trois nombres qui correspondent respectivement : 
 +  - au nombre de descripteurs de fichiers alloués, 
 +  - au nombre de descripteurs de fichiers actuellement utilisés et 
 +  - au nombre maximum de descripteurs utilisables par le système; //​c'​est cette dernière valeur qui peut être changée grâce au fichier// **file-max**. 
 + 
 +Il est important de noter que ces limites sont globales au système. \\ 
 +Le nombre maximum de fichiers ouverts simultanément par un seul processus est limité à 1024, et il est sensiblement plus difficile de changer cette limitation. \\ 
 +Il faut pour cela modifier la valeur des macros NR_OPEN dans les fichiers fs.h et limits.h, puis augmenter la valeur de la macro NR_FILE dans fs.h (ces fichiers se trouvant dans les sources du noyau), puis recompiler celui-ci. 
 + 
 +==== inode-max ==== 
 + 
 +Tout comme pour les descripteurs de fichiers, le noyau alloue dynamiquement l'​espace nécessaire pour stocker les i-nodes, mais ne peut pas le désallouer. \\ 
 +La valeur contenue dans le fichier **inode-max** est le nombre maximum de descripteurs de i-nodes. \\ 
 +Cette valeur doit être //trois à quatre fois supérieure//​ à la valeur de **file-max** dans la mesure où stdin, stdout et les sockets utilisent chacun un descripteur de i-node. 
 + 
 +<note tip>Si le système se plaint d'un manque de i-nodes, c'est cette valeur que vous devrez augmenter.</​note>​ 
 + 
 +Seules les trois premières valeurs de inode-state sont utilisées; elles correspondent à : 
 +  - nr_inodes,​ 
 +  - nr_free_inodes et 
 +  - preshrink. 
 + 
 +=== nr_inodes === 
 + 
 +Nombre de i-nodes actuellement allouées. \\ 
 +Le nombre peut être légèrement supérieur à inode-max dans la mesure où les i-nodes sont allouées par page mémoire complète. 
 + 
 +=== nr_free_inodes === 
 + 
 +Nombre de i-nodes non utilisées. 
 + 
 +=== preshrink === 
 + 
 +Cette valeur est non nulle lorsque nr_inodes est supérieur à inode-max; le système essayera de recycler les i-nodes non utilisées au lieu d'en allouer de nouvelles. 
 + 
 +==== inode-nr ==== 
 + 
 +Le fichier **inode-nr** contient simplement les deux premières valeurs de inode-state. \\ 
 + 
 +===== binfmt_misc ===== 
 + 
 +En dehors des fichiers précédemment cités, le répertoire **sys/fs** contient également le sous-répertoire **binfmt_misc** qui permet de contrôler les types d'​exécutables reconnus par le noyau. 
 + 
 +**binfmt_misc** permet de déclarer de nouveaux types de fichiers exécutables au noyau sans avoir à le recompiler. Le système fonctionne en repérant les exécutables soit par nombre magique ("​magic number"​ en anglais) ou soit par extension du nom de fichier. 
 + 
 +Une fois que le noyau a reconnu un type d'​exécutable,​ l'​interpréteur associé sera invoqué avec le nom du fichier exécutable passé en paramètre. ​\\ 
 + 
 +Le répertoire binfmt_misc contient les fichiers register et status, plus un fichier par format déclaré. 
 + 
 +La syntaxe standard pour déclarer un nouveau type d'​exécutable est la suivante : 
 +<code bash> 
 +echo :​nom:​type:​offset:​magic:​mask:​interpréteur > /​proc/​sys/​fs/​binfmt_misc/​register</​code>​ 
 + 
 +==== Exemple ====
  
-echo :​nom:​type:​offset:​magic:​mask:​interpréteur > /​proc/​sys/​fs/​binfmt_misc/​register 
 Un exemple valant mieux qu'un long discours, voyons comment utiliser ce système pour permettre au noyau d'​exécuter directement des applications Windows (grâce à l'​émulateur Wine) et des scripts Python. Un exemple valant mieux qu'un long discours, voyons comment utiliser ce système pour permettre au noyau d'​exécuter directement des applications Windows (grâce à l'​émulateur Wine) et des scripts Python.
 +<code user>​echo ':​DOSWin:​M::​MZ::/​usr/​bin/​wine:'​ > /​proc/​sys/​fs/​binfmt_misc/​register</​code>​
 +
 +<code user>​echo ':​Python:​E::​py::/​usr/​bin/​python:'​ > /​proc/​sys/​fs/​binfmt_misc/​register</​code>​
  
-echo ':​DOSWin:​M::​MZ::/​usr/​bin/​wine:'​ > /​proc/​sys/​fs/​binfmt_misc/​register 
-echo ':​Python:​E::​py::/​usr/​bin/​python:'​ > /​proc/​sys/​fs/​binfmt_misc/​register 
 La lettre `M' ou `E' indique si le repère pour déterminer le type du fichier sera son magic numer ou l'​extension du nom de fichier (les deux premiers caractères d'un exécutable Windows sont toujours MZ). La lettre `M' ou `E' indique si le repère pour déterminer le type du fichier sera son magic numer ou l'​extension du nom de fichier (les deux premiers caractères d'un exécutable Windows sont toujours MZ).
  
-ls -al /​proc/​sys/​fs/​binfmt_misc/​+<code user>ls -al /​proc/​sys/​fs/​binfmt_misc/​</​code>​ 
 + 
 +<​code>​
 dr-xr-xr-x ​    2 root     ​root ​    0 May  1 16:55 . dr-xr-xr-x ​    2 root     ​root ​    0 May  1 16:55 .
 dr-xr-xr-x ​    3 root     ​root ​    0 May  1 16:55 .. dr-xr-xr-x ​    3 root     ​root ​    0 May  1 16:55 ..
Ligne 289: Ligne 429:
 -rw-r--r-- ​    1 root     ​root ​    0 May  1 16:55 Python -rw-r--r-- ​    1 root     ​root ​    0 May  1 16:55 Python
 -w-------- ​    1 root     ​root ​    0 May  1 16:55 register -w-------- ​    1 root     ​root ​    0 May  1 16:55 register
--rw-r--r-- ​    1 root     ​root ​    0 May  1 16:55 status+-rw-r--r-- ​    1 root     ​root ​    0 May  1 16:55 status</​code>​
  
-cat /​proc/​sys/​fs/​binfmt_misc/​Python+<code user> 
 +cat /​proc/​sys/​fs/​binfmt_misc/​Python</​code>​ 
 + 
 +<​code>​
 enabled enabled
 interpreter /​usr/​bin/​python interpreter /​usr/​bin/​python
-extension .py+extension .py</​code>​ 
 Essayons maintenant d'​exécuter directement un script Python. Essayons maintenant d'​exécuter directement un script Python.
  
-cat > test.py +<code user> 
-print '​hello'​ +cat > test.py 
-^D +print '​hello'​</​code>​ 
-chmod +x test.py + 
-./test.py+   ​^D 
 + 
 +<code user> 
 +chmod +x test.py</​code>​ 
 + 
 +<code user> 
 +./test.py</​code>​ 
 +<​code>​
 hello hello
-Ca marche !  +Ca marche !</​code> ​
-Le fichier status quant à lui permet de déterminer si la fonctionnalité binfmt_misc est activée ou non.+
  
-cat /​proc/​sys/​fs/​binfmt_misc/​status +==== statuts ==== 
-enabled + 
-Vous pouvez de même changer cette valeur en écrivant 0 (désactiver) ou 1 (activer) dans ce fichier. Chaque format enregistré crée un fichier dans le répertoire binfmt_misc. Ceux-ci ont la même fonction que le fichier status, à la différence qu'ils ne s'​appliquent par à la fonctionnalité,​ mais seulement au format en question.+Le fichier **status** quant à lui permet de déterminer si la fonctionnalité binfmt_misc est activée ou non. 
 + 
 +<code user> 
 +cat /​proc/​sys/​fs/​binfmt_misc/​status</​code>​ 
 +<​code>​ 
 +enabled</​code>​ 
 + 
 +Vous pouvez de même changer cette valeur en écrivant 0 (désactiver) ou 1 (activer) dans ce fichier. 
 + 
 +Chaque format enregistré crée un fichier dans le répertoire binfmt_misc. ​\\ 
 +Ceux-ci ont la même fonction que le fichier status, à la différence qu'ils ne s'​appliquent par à la fonctionnalité,​ mais seulement au format en question.
  
  
-/​proc/​sys/​kernel+===== /​proc/​sys/​kernel ​=====
  
 Ce répertoire contient les paramètres qui régissent le fonctionnement général du noyau. Ce répertoire contient les paramètres qui régissent le fonctionnement général du noyau.
  
-acct : Ce fichier (présent si et seulement si l'​accounting BSD est activé) contient trois valeurs : low, high et frequency. Elles permettent d'​éviter l'​engorgement du système de fichiers par le fichier d'​historique. Si le système de fichiers où se situe l'​historique contient moins de `low' pourcents de place libre, l'​accounting sera suspendu jusqu'​à ce que la valeur repasse au-dessus de la barre des `high' pourcents. Le paramètre `frequency'​ correspond à l'​intervalle de temps (en secondes) entre chaque vérification de l'​espace libre disponible. Les valeurs par défaut sont 2, 4 et 30.  +==== acct ====
-ctrl-alt-del : Si la valeur contenue dans ce fichier est 0, la pression simultanée des touches <​Ctrl>,​ <Alt> et <Del> est transmise au processus init; si cette valeur est supérieure à zéro, le noyau lancera un reboot immédiatement,​ sans démonter les systèmes de fichiers.+
  
-N.B. : Lorsqu'​un programme ​(comme dosemu) utilise le clavier en mode "​raw",​ alors c'​est ​lui qui intercepte la combinaison Ctrl-Alt-Del et qui décide ce qui doit être fait.+Ce fichier ​(présent si et seulement si l'accounting BSD est activé) contient trois valeurs : 
 +  ​low, 
 +  ​high et 
 +  - frequency.
  
-domainname et hostname : Ces fichiers contrôlent les domaines NIS et nom d'hôte de votre machineVous pouvez donc changer directement ​le nom de votre machine grâce ​à la commande :+Elles permettent ​d'éviter l'​engorgement du système ​de fichiers par le fichier d'​historique\\ 
 +Si le système ​de fichiers où se situe l'​historique contient moins de `low' pourcents de place libre, l'​accounting sera suspendu jusqu'à ce que la valeur repasse au-dessus de la barre des `high' pourcents.
  
-# echo vince > /​proc/​sys/​kernel/​hostname +=== frequency ===
-osrelease, ostype, version : Comme leur nom l'​indique,​ ces fichiers contiennent respectivement le numéro de version, le nom du système et la version exacte du noyau :+
  
-# cat /​proc/​sys/​kernel/​osrelease +Le paramètre `frequency'​ correspond à l'​intervalle de temps (en secondes) entre chaque vérification de l'​espace libre disponibleLes valeurs par défaut sont 2, 4 et 30.
-2.2.13 +
-# cat /​proc/​sys/​kernel/​ostype +
-Linux +
-# cat /​proc/​sys/​kernel/​version +
-#6 Sun Apr 16 23:20:59 CEST 2000 +
-Si les deux premiers fichiers n'​appellent pas de commentairesattardons-nous sur le dernier : #6 signifie que le noyau a été recompilé six fois à partir du même code source. La date qui suit est tout simplement la date à laquelle a été compilé le noyau.+
  
-panic : La valeur contenue dans ce fichier ​représente le nombre de secondes que le noyau attend pour rebooter après un "​kernel panic"​. Si vous utilisez un watchdog logiciel, la valeur recommandée ​est 60La valeur ​par défaut ​est 0ce qui désactive ​le reboot. ​ +Si la valeur contenue dans ce fichier ​est 0, la pression simultanée des touches : 
-printk : Les quatre valeurs contenues dans ce fichier correspondent respectivement à :+   <​Ctrl>,​ <Alt> et <​Del>​ 
 +est transmise au processus //init//\\ 
 +Si cette valeur est supérieure à zéro, le noyau //lancera un reboot// immédiatement,​ sans démonter les systèmes de fichiers.
  
-(console_loglevel) : Les messages avec une priorité supérieure à cette valeur seront affichés sur la console +== N.B==
-(defaut_message_level) : Les messages sans priorité explicite seront affichés avec cette priorité.  +
-(minimum_console_loglevel) : Valeur minimum que peut avoir console_loglevel.  +
-(default_console_loglevel) : Valeur par défaut de console_loglevel.+
  
-sg-big-buff : Ce fichier montre la taille du tampon du pilote SCSI. Pour le moment, la seule manière de changer sa valeur consiste à changer la valeur de SG_BIG_BUFF dans le fichier include/scsi/sg.h puis à recompiler le noyau. Si vous utilisez un scanner, il peut être intéressant d'​augmenter cette valeur. Consultez la documentation de SANE qui vous en dira plus sur le sujet.  +Lorsqu'​un programme (comme dosemu) utilise ​le clavier en mode "​raw"​alors c'est lui qui intercepte ​la combinaison ​//Ctrl-Alt-Del//​ et qui décide ​ce qui doit être fait.
-modprobe : L'​emplacement où l'​exécutable modprobe est situé. Le noyau utilise ​ce paramètre pour charger les modules à la demande.+
  
 +==== domainname et hostname ====
  
-/​proc/​sys/​vm+Ces fichiers contrôlent les domaines NIS et nom d'​hôte de votre machine.
  
-Les fichiers de ce répertoire permettent de paramétrer le fonctionnement de la gestion de la mémoire virtuelle du noyau. Certains de ces fichierscomme bdflushont également une influence sur l'​utilisation du disque. bdflush est le système qui met à jour les fichiers sur les disques en fonction des modifications effectuées sur leur copie dans le cache disque du noyau. En effet, lorsqu'​un fichier est ouvert en lecture ou en écriture, Linux en charge une copie en mémoire ce qui permet d'​accélérer grandement les opérations d'​écriture,​ car en général les mêmes opérations sont répétées sur un même fichier (par exemple : le fichier contenant une page très demandée d'un serveur Web).+  * osrelease, 
 +  * ostype, 
 +  * version
  
-La modification des paramètres qui vont être décrits n'a en général que peu d'​intérêt sur une machine personnelle,​ mais peut considérablement améliorer les performances sur un serveur à condition d'​utiliser des valeurs judicieuses. A l'inverse, de mauvais paramètres peuvent largement dégrader les performances. A vous d'​expérimenter ​et de trouver les valeurs qui correspondent le mieux à votre machine. Dans le doute, vous pouvez conserver les valeurs par défaut qui donnent généralement d'​assez bons résultats.+Comme leur nom l'indiqueces fichiers contiennent respectivement le numéro ​de version, le nom du système ​et la version exacte du noyau : 
 +<code user>cat /​proc/​sys/​kernel/​osrelease</​code>​
  
-bdflush : Ce fichier contrôle le fonctionnement de la thread kernel bdflush. Il contient actuellement neuf nombres dont seuls six sont actuellement utilisés. ​ +<​code>​ 
-nfract : Pourcentage du tampon cache modifié avant d'​activer bdflush +2.2.13</​code>​
-ndirty : Nombre maximum de blocs modifiés à être écrits par cycle d'​activation.  +
-nrefill : Nombre de tampons libres que l'on doit essayer d'​obtenir à chaque appel.  +
-nref_dirt : Réactivité de bdflush.  +
-dummy : Non utilisé.  +
-age_buffer : Temps à attendre avant de synchroniser les tampons contenant un super-bloc de système de fichiers. Les deux derniers champs ne sont pas utilisés.  +
-buffermem : Les trois valeurs que contient ce fichier contrôlent la quantité de mémoire qui doit être utilisée. Ce sont des pourcentages par rapport à la quantité totale de mémoire.  +
-min_percent : Pourcentage minimum de la mémoire qui sera utilisé pour le cache.  +
-borrow_percent : Lorsque le système tend à manquer de mémoire et que le cache disque en utilise beaucoup, alors le système de gestion de la mémoire réduira d'​autant plus la taille du cache disque pour compenser.  +
-max_percent : Pourcentage maximum de la mémoire qui sera utilisé pour le cache.  +
-freepages : Ce fichier contient trois valeurs.+
  
-min Lorsque le nombre de pages libres descend en dessous de ce nombre, le noyau alloue plus de mémoire. ​ +et 
-low : Lorsque le nombre de pages libres descend en dessous de ce nombre, le noyau commence à swapper sur disque de manière plus agressive pour libérer de la place.  +<code user>cat /​proc/​sys/​kernel/​ostype</​code>​
-high : Le noyau essaye de conserver ce nombre de pages libres. Si le nombre tombe en dessous de cette quantité, le noyau commencera à swapper "en douceur"​ dans l'​espoir de ne pas atteindre la limite "​low"​.+
  
-kswapd : kswapd est le nom du programme de swap, c'​est-à-dire celui qui copie certaines parties de la mémoire virtuelle sur disque lorsque la mémoire physique est pleine. Etant donné que chaque système a des besoins différents,​ vous pourrez avoir à changer les paramètres par défaut dans le cas d'un serveur chargé. Le fichier kswapd contient trois valeurs :+<​code>​ 
 +Linux</​code>​
  
-tries_base ​Le nombre maximum de pages qui seront libérées à chaque appel est déduit de ce nombre. On peut donc augmenter la vitesse du swapping en augmentant ce paramètre aux dépens d'une activité disque plus importante. ​ +et enfin 
-tries_min : Représente le nombre minimum de pages que kswapd essayera de libérer chaque fois qu'il est appelé.  +<code user>cat /​proc/​sys/​kernel/​version</​code>​
-swap_cluster : Ce paramètre a une grande influence sur les performances du système; il correspond au nombre de pages que kswapd écrira simultanément sur le disque. Il ne doit pas être trop petit pour ne pas faire appel au disque dur trop souvent, mais ne doit pas être trop élevé sous peine d'​engorger la file d'​attente du pilote de disque.+
  
-overcommit_memory ​Ce fichier contient une seule valeur qui détermine la conduite à utiliser pour l'​allocation de la mémoire. Si la valeur est positive, alors le système considère qu'il y a toujours assez de mémoire disponible. Cette fonctionnalité est utile dans la mesure où les programmes réservent (grâce à la fonction malloc) de grandes quantités de mémoire qu'ils n'​utilisent pas toujours.+<​code>​ 
 +#6 Sun Apr 16 23:20:59 CEST 2000</​code>​
  
-Si vous laissez cette valeur à zéro, cela risque de conduire à l'échec d'un malloc ​de grande quantité de mémoire alors que le programme aurait eu assez de mémoire pour fonctionnerCependant, si la valeur ​est changée pour 1, vous pouvez provoquer un épuisement de la mémoire du système. Sur les gros serveurs, il est fortement conseillé de laisser cette valeur ​à zéro à moins que vous ne connaissiez très précisément ​le comportement des programmes utilisés.+Si les deux premiers fichiers n'appellent pas de commentaires,​ attardons-nous sur le dernier : 
 +  * **#6** signifie ​que le noyau a été recompilé six fois à partir du même code source. 
 +  * La date qui suit est tout simplement ​la date à laquelle a été compilé ​le noyau.
  
 +==== panic ====
  
-/​proc/​sys/​dev+La valeur contenue dans ce fichier représente le nombre de secondes que le noyau attend pour rebooter après un "​kernel panic"​. \\ 
 +Si vous utilisez un watchdog logiciel, la valeur recommandée est 60. \\ 
 +La valeur par défaut est 0, ce qui désactive le reboot.
  
-Ce répertoire contient les paramètres spécifiques aux périphériques. Actuellement,​ seuls les lecteurs de CD-Rom sont supportés, et les informations sont regroupées dans un seul fichier.+==== printk ====
  
-cat /​proc/​sys/​dev/​cdrom/​info ​+Les quatre valeurs contenues dans ce fichier correspondent respectivement à : 
 + 
 +  - (console_loglevel) : Les messages avec une priorité supérieure à cette valeur seront affichés sur la console.  
 +  - (defaut_message_level) : Les messages sans priorité explicite seront affichés avec cette priorité.  
 +  - (minimum_console_loglevel) : Valeur minimum que peut avoir console_loglevel.  
 +  - (default_console_loglevel) : Valeur par défaut de console_loglevel. 
 + 
 +==== sg-big-buff ==== 
 + 
 +Ce fichier montre la taille du tampon du pilote SCSI. 
 + 
 +Pour le moment, la seule manière de changer sa valeur consiste à changer la valeur de SG_BIG_BUFF dans le fichier : 
 +   ​include/​scsi/​sg.h 
 + 
 +puis à recompiler le noyau. 
 + 
 +<​note>​Si vous utilisez un scanner, il peut être intéressant d'​augmenter cette valeur. \\ 
 +Consultez la documentation de SANE qui vous en dira plus sur le sujet.</​note>​ 
 + 
 +==== modprobe ==== 
 + 
 +L'​emplacement où l'​exécutable **modprobe** est situé. \\ 
 +Le noyau utilise ce paramètre pour charger les modules à la demande. 
 + 
 + 
 +===== /​proc/​sys/​vm ===== 
 + 
 +Les fichiers de ce répertoire permettent de paramétrer le fonctionnement de la gestion de la mémoire virtuelle du noyau. Certains de ces fichiers, comme bdflush, ont également une influence sur l'​utilisation du disque. 
 + 
 +**bdflush** est le système qui met à jour les fichiers sur les disques en fonction des modifications effectuées sur leur copie dans le cache disque du noyau. \\ 
 +En effet, lorsqu'​un fichier est ouvert en lecture ou en écriture, Linux en charge une copie en mémoire ce qui permet d'​accélérer grandement les opérations d'​écriture,​ car en général les mêmes opérations sont répétées sur un même fichier (par exemple : le fichier contenant une page très demandée d'un serveur Web). 
 + 
 +La modification des paramètres qui vont être décrits n'a en général que peu d'​intérêt sur une machine personnelle,​ mais peut considérablement améliorer les performances sur un serveur à condition d'​utiliser des valeurs judicieuses. 
 + 
 +<note important>​A l'​inverse,​ de mauvais paramètres peuvent largement dégrader les performances.</​note>​ 
 + 
 +A vous d'​expérimenter et de trouver les valeurs qui correspondent le mieux à votre machine. \\ 
 +Dans le doute, vous pouvez conserver les valeurs par défaut qui donnent généralement d'​assez bons résultats. 
 + 
 +==== bdflush ==== 
 + 
 +Ce fichier contrôle le fonctionnement de la thread kernel bdflush. Il contient actuellement neuf nombres dont seuls six sont actuellement utilisés.  
 +  - nfract : Pourcentage du tampon cache modifié avant d'​activer bdflush.  
 +  - ndirty : Nombre maximum de blocs modifiés à être écrits par cycle d'​activation.  
 +  - nrefill : Nombre de tampons libres que l'on doit essayer d'​obtenir à chaque appel.  
 +  - nref_dirt : Réactivité de bdflush.  
 +  - dummy : Non utilisé.  
 +  - age_buffer : Temps à attendre avant de synchroniser les tampons contenant un super-bloc de système de fichiers. 
 + 
 +Les deux derniers champs ne sont pas utilisés. 
 + 
 +==== buffermem ==== 
 + 
 +Les trois valeurs que contient ce fichier contrôlent la quantité de mémoire qui doit être utilisée. \\ 
 +Ce sont des pourcentages par rapport à la quantité totale de mémoire. 
 +  - min_percent : Pourcentage minimum de la mémoire qui sera utilisé pour le cache.  
 +  - borrow_percent : Lorsque le système tend à manquer de mémoire et que le cache disque en utilise beaucoup, alors le système de gestion de la mémoire réduira d'​autant plus la taille du cache disque pour compenser.  
 +  - max_percent : Pourcentage maximum de la mémoire qui sera utilisé pour le cache.  
 + 
 +==== freepages ==== 
 + 
 +Ce fichier contient trois valeurs. 
 +  - min : Lorsque le nombre de pages libres descend en dessous de ce nombre, le noyau alloue plus de mémoire.  
 +  - low : Lorsque le nombre de pages libres descend en dessous de ce nombre, le noyau commence à swapper sur disque de manière plus agressive pour libérer de la place.  
 +  - high : Le noyau essaye de conserver ce nombre de pages libres. Si le nombre tombe en dessous de cette quantité, le noyau commencera à swapper "en douceur"​ dans l'​espoir de ne pas atteindre la limite "​low"​. 
 + 
 +==== kswapd ==== 
 + 
 +**kswapd** est le nom du programme de swap, c'​est-à-dire celui qui copie certaines parties de la mémoire virtuelle sur disque lorsque la mémoire physique est pleine. \\ 
 +Etant donné que chaque système a des besoins différents,​ vous pourrez avoir à changer les paramètres par défaut dans le cas d'un serveur chargé. 
 + 
 +Le fichier kswapd contient trois valeurs : 
 + 
 +  - tries_base : Le nombre maximum de pages qui seront libérées à chaque appel est déduit de ce nombre. On peut donc augmenter la vitesse du swapping en augmentant ce paramètre aux dépens d'une activité disque plus importante.  
 +  - tries_min : Représente le nombre minimum de pages que kswapd essayera de libérer chaque fois qu'il est appelé.  
 +  - swap_cluster : Ce paramètre a une grande influence sur les performances du système; il correspond au nombre de pages que kswapd écrira simultanément sur le disque. Il ne doit pas être trop petit pour ne pas faire appel au disque dur trop souvent, mais ne doit pas être trop élevé sous peine d'​engorger la file d'​attente du pilote de disque. 
 + 
 +==== overcommit_memory ==== 
 + 
 +Ce fichier contient une seule valeur qui détermine la conduite à utiliser pour l'​allocation de la mémoire. Si la valeur est positive, alors le système considère qu'il y a toujours assez de mémoire disponible. \\ 
 +Cette fonctionnalité est utile dans la mesure où les programmes réservent (grâce à la fonction malloc) de grandes quantités de mémoire qu'ils n'​utilisent pas toujours. 
 + 
 +Si vous laissez cette valeur à zéro, cela risque de conduire à l'​échec d'un malloc de grande quantité de mémoire alors que le programme aurait eu assez de mémoire pour fonctionner. \\ 
 +Cependant, si la valeur est changée pour 1, vous pouvez provoquer un épuisement de la mémoire du système. 
 +<note tip>Sur les gros serveurs, il est fortement conseillé de laisser cette valeur à zéro à moins que vous ne connaissiez très précisément le comportement des programmes utilisés.</​note>​ 
 + 
 + 
 +===== /​proc/​sys/​dev ===== 
 + 
 +Ce répertoire contient les paramètres spécifiques aux périphériques. 
 + 
 +Actuellement,​ seuls les lecteurs de CD-Rom sont supportés, et les informations sont regroupées dans un seul fichier. 
 +<code user>cat /​proc/​sys/​dev/​cdrom/​info</​code>​ 
 + 
 +<​code>​
 CD-ROM information,​ Id: cdrom.c 2.56 1999/09/09 CD-ROM information,​ Id: cdrom.c 2.56 1999/09/09
  
Ligne 397: Ligne 644:
 Can read MCN:           1 Can read MCN:           1
 Reports media changed: ​ 1 Reports media changed: ​ 1
-Can play audio: ​        1+Can play audio: ​        1</​code>​ 
 Chaque ligne étant suffisamment explicite, nous ne détaillerons pas plus. Chaque ligne étant suffisamment explicite, nous ne détaillerons pas plus.
  
  
-/​proc/​sys/​sunrpc+===== /​proc/​sys/​sunrpc ​=====
  
-Ce répertoire contient quatre fichiers qui activent ou désactivent le débogage pour les principales fonctions RPC : NFS client, NFS serveur, RPC et NLM. La valeur par défaut est zéro (débogage désactivé) et peut être changée pour 1 (activation du débogage). 
  
 +Ce répertoire contient quatre fichiers qui activent ou désactivent le débogage pour les principales fonctions RPC :
 +  - NFS client,
 +  - NFS serveur,
 +  - RPC et
 +  - NLM.
  
-/​proc/​sys/​net+La valeur par défaut est zéro (débogage désactivé) et peut être changée pour 1 (activation du débogage).
  
-L'​interface comprenant les fonctionnalités réseau du noyau est située dans ce répertoire. Celui-ci peut contenir un grand nombre de répertoires. Voici les principaux d'​entre eux (qui peuvent ou non être présents sur votre système en fonction de la configuration de votre noyau). 
  
-core : Paramètre généraux.  +===== /proc/sys/net =====
-unix : Sockets unix.  +
-ethernet : Paramètres ethernet.  +
-ipv4 : TCP/IP  +
-ipv6 : TCP/IP version 6 (encore très peu utilisé).  +
-ipx : IPX  +
-x25 : Protocole X.25+
  
-Nous allons ici nous concentrer uniquement sur l'aspect TCP/​IP, ​les autres types de réseaux étant beaucoup moins courants. Bien qu'il soit également possible de changer la majorité des paramètres,​ il est extrêmement déconseillé de le faire : cela n'​apportera en général pas grand chose et vous risquerez surtout de détériorer les performances,​ voire de rendre le réseau non fonctionnel.+L'interface comprenant ​les fonctionnalités réseau du noyau est située dans ce répertoire.
  
 +Celui-ci peut contenir un grand nombre de répertoires. \\
 +Voici les principaux d'​entre eux.
 +<​note>​Ils peuvent ou non être présents sur votre système en fonction de la configuration de votre noyau.</​note>​
  
-/​proc/​sys/​net/​core+  * core : Paramètre généraux.  
 +  * unix : Sockets unix.  
 +  * ethernet : Paramètres ethernet.  
 +  * ipv4 : TCP/IP  
 +  * ipv6 : TCP/IP version 6 (encore très peu utilisé).  
 +  * ipx : IPX  
 +  * x25 : Protocole X.25 
 + 
 +Nous allons ici nous concentrer uniquement sur l'​aspect TCP/IP, les autres types de réseaux étant beaucoup moins courants. 
 + 
 +Bien qu'il soit également possible de changer la majorité des paramètres,​ il est extrêmement déconseillé de le faire : 
 +  * cela n'​apportera en général pas grand chose et 
 +  * vous risquerez surtout de détériorer les performances,​voire de rendre le réseau non fonctionnel. 
 + 
 +==== /​proc/​sys/​net/​core ​====
  
 Les fichiers de ce répertoire correspondent aux caractéristiques communes à tous les types de réseaux, principalement les tailles des tampons. Les fichiers de ce répertoire correspondent aux caractéristiques communes à tous les types de réseaux, principalement les tailles des tampons.
  
-rmem_default : La taille par défaut (en octets) des tampons utilisés pour recevoir les messages.  +  * rmem_default : La taille par défaut (en octets) des tampons utilisés pour recevoir les messages.  
-rmem_max : Taille maximum des tampons utilisés pour recevoir les messages.  +  ​* ​rmem_max : Taille maximum des tampons utilisés pour recevoir les messages.  
-wmem_default,​ wmem_max : Equivalent des deux fichiers précédents,​ mais cette fois pour l'​envoi des messages.  +  ​* ​wmem_default,​ wmem_max : Equivalent des deux fichiers précédents,​ mais cette fois pour l'​envoi des messages.  
-message_burst,​ message_cost : Ces paramètres contrôlent les messages d'​avertissement écrits dans les logs du noyau par le code réseau. Ils introduisent une limite qui permet d'​éviter les attaques de types DOS (Denial Of Service) : une valeur de message_cost plus élevée entraînera la diminution du nombre de messages générés. Le paramètre message_burst quant à lui limite la fréquence d'​écriture des messages; par défaut, un toutes les cinq secondes.  +  ​* ​message_burst,​ message_cost : Ces paramètres contrôlent les messages d'​avertissement écrits dans les logs du noyau par le code réseau. Ils introduisent une limite qui permet d'​éviter les attaques de types DOS (Denial Of Service) : une valeur de message_cost plus élevée entraînera la diminution du nombre de messages générés. Le paramètre message_burst quant à lui limite la fréquence d'​écriture des messages; par défaut, un toutes les cinq secondes.  
-netdev_max_backlog : Nombre maximum de paquets stockés dans la file d'​attente lorsqu'​ils sont reçus plus vite que le noyau ne peut les traiter.+  ​* ​netdev_max_backlog : Nombre maximum de paquets stockés dans la file d'​attente lorsqu'​ils sont reçus plus vite que le noyau ne peut les traiter.
  
  
-/​proc/​sys/​net/​ipv4+==== /​proc/​sys/​net/​ipv4 ​====
  
-IP version 4 est le protocole réseau le plus utilisé actuellement. Il devrait cependant être remplacé par IP version 6 d'ici quelques années. Du fait de l'​importance et de la relative complexité de ce protocole, sa configuration est étalée sur plusieurs sous-répertoires. Commençons par les fichiers qui sont situés directement dans le répertoire /​proc/​sys/​net/​ipv4.+IP version 4 est le protocole réseau le plus utilisé actuellement. ​\\ 
 +Il devrait cependant être remplacé par IP version 6 d'ici quelques années.
  
-Paramètres ICMP :+Du fait de l'​importance et de la relative complexité de ce protocole, sa configuration est étalée sur plusieurs sous-répertoires. \\ 
 +Commençons par les fichiers qui sont situés directement dans le répertoire /​proc/​sys/​net/​ipv4.
  
-icmp_echo_ignore_all,​ icmp_echo_ignore_broadcast : La valeur contenue dans ces fichiers contrôle si le noyau ignore (0) ou répond (1) à toutes les demandes ​ICMP ECHO (utilisées principalement par la commande ping) ou seulement celles destinées aux adresses de broadcast et de multicast. Il est très important de noter que si vous décidez d'​activer la réponse aux ICMP ECHO pour les adresses broadcast et multicast, votre réseau peut être utilisé comme relai pour certains types d'​attaques DDOS (Distributed Denial Of Service).  +=== Paramètres ​ICMP ===
-icmp_destunreach_rate,​ icmp_echoreply_rate,​ icmp_paramprob_rate,​ icmp_timeexceed_rate : Définit les limites pour envoyer les différents types de paquets ICMP. Une valeur nulle désactive les limites. Une valeur positive définit le nombre maximum de paquets par centième de seconde.+
  
-Paramètres IP :+**icmp_echo_ignore_all,​ icmp_echo_ignore_broadcast** \\ 
 +La valeur contenue dans ces fichiers contrôle si le noyau ignore (0) ou répond (1) à toutes les demandes ICMP ECHO (utilisées principalement par [[[[doc:​reseau:​ping | la commande ping]]) ou seulement celles destinées aux adresses de broadcast et de multicast. 
 +<note important>​Il est très important de noter que si vous décidez d'​activer la réponse aux ICMP ECHO pour les adresses broadcast et multicast, votre réseau peut être utilisé comme relai pour certains types d'​attaques DDOS (Distributed Denial Of Service).</​note>​ 
 + 
 +**icmp_destunreach_rate,​ icmp_echoreply_rate,​ icmp_paramprob_rate,​ icmp_timeexceed_rate** \\ 
 +Définit les limites pour envoyer les différents types de paquets ICMP. 
 +  * Une valeur nulle désactive les limites. 
 +  * Une valeur positive définit le nombre maximum de paquets par centième de seconde. 
 + 
 +=== Paramètres IP ===
  
 Seuls les fichiers les plus importants sont mentionnés dans cette section. Seuls les fichiers les plus importants sont mentionnés dans cette section.
  
-ip_autoconfig : Ce fichier contient la valeur 1 si le paramètrage IP a été obtenu d'un système distant par RARP, BOOTP ou DHCP; sinon cette valeur est nulle.  +  * ip_autoconfig : Ce fichier contient la valeur 1 si le paramètrage IP a été obtenu d'un système distant par RARP, BOOTP ou DHCP; sinon cette valeur est nulle.  
-ip_default_ttl : TTL (Time To Live; durée de vie) des paquets reçus par les interfaces IP. Cela correspond au nombre de machines par lesquelles un même paquets peut transiter.  +  ​* ​ip_default_ttl : TTL (Time To Live; durée de vie) des paquets reçus par les interfaces IP. Cela correspond au nombre de machines par lesquelles un même paquets peut transiter.  
-ip_forward : Active ou désactive le "​forwarding"​ des paquets IP pour toutes les interfaces. Cette fonctionnalité devra être activée au démarrage du système sur les machines qui servent de passerelle. Notez que le changement de cette valeur réinitialise tous les autres paramètres réseau à leur valeur par défaut.  +  ​* ​ip_forward : Active ou désactive le "​forwarding"​ des paquets IP pour toutes les interfaces. Cette fonctionnalité devra être activée au démarrage du système sur les machines qui servent de passerelle. Notez que le changement de cette valeur réinitialise tous les autres paramètres réseau à leur valeur par défaut.  
-ip_local_port_range : Intervalle de ports utilisés par TCP et UDP comme ports locaux. Ce fichier contient deux nombres : le premier est la borne inférieure de l'​intervalle,​ le deuxième est (surprise !) la borne supérieure. L'​intervalle par défaut est 1024-4999. Sur un système fortement chargé, il est conseillé d'​utiliser l'​intervalle 32768-61000.  +  ​* ​ip_local_port_range : Intervalle de ports utilisés par TCP et UDP comme ports locaux. ​\\ Ce fichier contient deux nombres : \\ le premier est la borne inférieure de l'​intervalle, ​\\ le deuxième est (surprise !) la borne supérieure. ​\\ L'​intervalle par défaut est 1024-4999. ​\\ Sur un système fortement chargé, il est conseillé d'​utiliser l'​intervalle 32768-61000.  
-ip_masq_debug : Comme son nom l'​indique : active le débogage de l'IP masquerading.+  ​* ​ip_masq_debug : Comme son nom l'​indique : active le débogage de l'IP masquerading.
  
-Paramètres TCP :+=== Paramètres TCP ===
  
-tcp_keepalive_probes : Nombre de sondes TCP keepalive à envoyer avant de décider qu'une connexion est coupée.  +  * tcp_keepalive_probes : Nombre de sondes TCP keepalive à envoyer avant de décider qu'une connexion est coupée.  
-tcp_keepalive_time : Périodicité avec laquelle les messages TCP keepalive doivent être envoyés. Cette durée est exprimée en secondes et la valeur par défaut et de 2 heures.+  ​* ​tcp_keepalive_time : Périodicité avec laquelle les messages TCP keepalive doivent être envoyés. Cette durée est exprimée en secondes et la valeur par défaut et de 2 heures.
  
 ==== /​proc/​loadavg ==== ==== /​proc/​loadavg ====
  
-Ce fichier donne deux informations : 1) il fournit un aperçu de la moyenne de charge ou de l'​utilisation de l'​unité centrale dans le temps ; 2) il fournit aussi des données supplémentaires utilisées par la commande uptime et d'​autres commandes. ​+Ce fichier donne deux informations : 
 +  - il fournit un aperçu de la moyenne de charge ou de l'​utilisation de l'​unité centrale dans le temps ;  
 +  - il fournit aussi des données supplémentaires utilisées par la commande uptime et d'​autres commandes. ​
  
 Voici un exemple de fichier loadavg : Voici un exemple de fichier loadavg :
  
-  ​0.99 0.93 0.87 1/202 4027+   0.99 0.93 0.87 1/202 4027 
 + 
 +Les trois premières colonnes mesurent l'​utilisation de l'​unité centrale en fonction des dernières périodes de 1, 5 et 10 minutes. \\ 
 +La quatrième colonne indique le nombre de processus en cours d'​exécution et le nombre total de processus. \\ 
 +La dernière colonne affiche le dernier ID de processus utilisé. 
 + 
 +===== Remerciements ===== 
 + 
 +**Source :** 
 +  * http://​okki666.free.fr/​docmaster/​articles/​linux070.htm
  
-Les trois premières colonnes mesurent l'utilisation ​de l'unité centrale ​en fonction des dernières périodes de 1, 5 et 10 minutesLa quatrième colonne indique le nombre ​de processus en cours d'​exécution et le nombre total de processus. La dernière colonne affiche le dernier ID de processus utilisé.+**Références :** \\ 
 +Fichier Documentation/​filesystems/​proc.txt dans les sources du noyau (qui a été d'une grande aide pour la rédaction ​de cet article qui s'​en ​est largement inspiré)Le code source du système ​de fichiers /proc dans les sources du noyau se trouve dans le répertoire fs/proc.
  
 +//Merci à ://
 +  * **Vincent Renardias** vincent@renardias.com
 +Pour son article parût dans : **Linux Magazine France** n° 18 - Juin 00
doc/systeme/fhs-proc.txt · Dernière modification: 03/11/2016 15:28 par bendia

Pied de page des forums

Propulsé par FluxBB