Les groupes communs d'informations sur le noyau sont regroupés en répertoires et sous-répertoires dans /proc/.
Chaque répertoire /proc/ contient un certain nombre de répertoires nommés à partir de chiffres. Une liste de tels répertoires pourrait ressembler à l'exemple suivant :
dr-xr-xr-x 3 root root 0 Feb 13 01:28 1 dr-xr-xr-x 3 root root 0 Feb 13 01:28 1010 dr-xr-xr-x 3 xfs xfs 0 Feb 13 01:28 1087 dr-xr-xr-x 3 daemon daemon 0 Feb 13 01:28 1123 dr-xr-xr-x 3 root root 0 Feb 13 01:28 11307 dr-xr-xr-x 3 apache apache 0 Feb 13 01:28 13660 dr-xr-xr-x 3 rpc rpc 0 Feb 13 01:28 637 dr-xr-xr-x 3 rpcuser rpcuser 0 Feb 13 01:28 666 |
Ces répertoires sont appelés répertoires de processus car ils font référence à un ID de processus et contiennent des informations se rapportant à ce dernier. Le propriétaire et le groupe de chaque répertoire de processus prennent la valeur de l'utilisateur qui exécute le processus. Lorsque le processus est terminé, son répertoire de processus /proc/ disparaît.
Chaque répertoire de processus contient les lignes suivantes :
cmdline — Contient la commande émise au début du processus.
cwd — Représente un lien symbolique vers le répertoire de travail courant pour ce processus.
environ — Fournit une liste des variables d'environnement du processus. La variable d'environnement est indiquée en majuscule et la valeur en minuscule.
exe — Représente un lien symbolique vers le fichier exécutable de ce processus.
fd — Représente un répertoire contenant tous les descripteurs de fichiers pour un processus donné. Ces derniers sont fournis sous forme de liens numérotés :
total 0 lrwx------ 1 root root 64 May 8 11:31 0 -> /dev/null lrwx------ 1 root root 64 May 8 11:31 1 -> /dev/null lrwx------ 1 root root 64 May 8 11:31 2 -> /dev/null lrwx------ 1 root root 64 May 8 11:31 3 -> /dev/ptmx lrwx------ 1 root root 64 May 8 11:31 4 -> socket:[7774817] lrwx------ 1 root root 64 May 8 11:31 5 -> /dev/ptmx lrwx------ 1 root root 64 May 8 11:31 6 -> socket:[7774829] lrwx------ 1 root root 64 May 8 11:31 7 -> /dev/ptmx |
maps — Contient une liste des topologies de mémoire vers les divers fichiers exécutables et les fichiers bibliothèques associés à ce processus. Selon la complexité du processus, ce fichier peut être relativement long. Un exemple de sortie du processus sshd commence comme l'extrait reproduit ci-dessous :
08048000-08086000 r-xp 00000000 03:03 391479 /usr/sbin/sshd 08086000-08088000 rw-p 0003e000 03:03 391479 /usr/sbin/sshd 08088000-08095000 rwxp 00000000 00:00 0 40000000-40013000 r-xp 00000000 03:03 293205 /lib/ld-2.2.5.so 40013000-40014000 rw-p 00013000 03:03 293205 /lib/ld-2.2.5.so 40031000-40038000 r-xp 00000000 03:03 293282 /lib/libpam.so.0.75 40038000-40039000 rw-p 00006000 03:03 293282 /lib/libpam.so.0.75 40039000-4003a000 rw-p 00000000 00:00 0 4003a000-4003c000 r-xp 00000000 03:03 293218 /lib/libdl-2.2.5.so 4003c000-4003d000 rw-p 00001000 03:03 293218 /lib/libdl-2.2.5.so |
mem — Représente la mémoire occupée par le processus. Ce fichier ne peut pas être lu par l'utilisateur.
root — Représente un lien vers le répertoire root du processus.
stat — Montre l'état du processus.
statm — Montre l'état de la mémoire utilisée par le processus. Ci-dessous figure un exemple de fichier /proc/statm :
263 210 210 5 0 205 0 |
Les sept colonnes font référence à différentes statistiques de mémoire pour le processus. De gauche à droite, elles indiquent les aspects suivants de la mémoire utilisée :
Taille totale du programme, exprimée en Ko.
Taille des portions de mémoire, exprimée en Ko.
Nombre de pages partagées.
Nombre de pages de code.
Nombre de pages de données/pile.
Nombre de pages de bibliothèque.
Nombre de pages incorrectes.
status — Montre l'état du processus sous une forme plus lisible que stat ou statm. Un exemple de sortie de sshd ressemble à l'extrait ci-dessous :
Name: sshd State: S (sleeping) Tgid: 797 Pid: 797 PPid: 1 TracerPid: 0 Uid: 0 0 0 0 Gid: 0 0 0 0 FDSize: 32 Groups: VmSize: 3072 kB VmLck: 0 kB VmRSS: 840 kB VmData: 104 kB VmStk: 12 kB VmExe: 300 kB VmLib: 2528 kB SigPnd: 0000000000000000 SigBlk: 0000000000000000 SigIgn: 8000000000001000 SigCgt: 0000000000014005 CapInh: 0000000000000000 CapPrm: 00000000fffffeff CapEff: 00000000fffffeff |
Les informations contenues dans cette sortie incluent le nom et l'ID du processus, l'état (tel que S (sleeping) pour le mode veille, ou R (running) pour une exécution en cours), l'ID de l'utilisateur/du groupe qui exécute le processus de même que des données beaucoup plus détaillées portant sur l'utilisation de la mémoire.
Le répertoire /proc/self/ est un lien vers le processus en cours d'exécution. Cela permet à un processus de se contrôler lui-même sans avoir à connaître son ID de processus.
Dans un environnement shell, un listage du répertoire /proc/self/ fournit le même contenu que celui du répertoire de processus pour ce processus spécifique.
Ce répertoire contient des informations spécifiques aux divers bus disponibles sur le système. Par exemple, sur un système standard comportant des bus PCI et USB, les données actuelles relatives à chacun de ces bus se trouvent dans un sous-répertoire de /proc/bus/ portant le même nom, comme par exemple /proc/bus/pci/.
Les sous-répertoires et les fichiers disponibles sous /proc/bus/ dépendent des périphériques connectés au système. Toutefois, chaque type de bus possède au moins un répertoire. Sous ces répertoires de bus se trouve normalement au moins un sous-répertoire nommé à partir de chiffres, tel que 001, qui contient des fichiers binaires.
Par exemple, le sous-répertoire /proc/bus/usb/ contient des fichiers qui référencent les différents périphériques sur tout bus USB, ainsi que les pilotes dont ils ont besoin. Ci-après figure un exemple du répertoire /proc/bus/usb/ :
total 0 dr-xr-xr-x 1 root root 0 May 3 16:25 001 -r--r--r-- 1 root root 0 May 3 16:25 devices -r--r--r-- 1 root root 0 May 3 16:25 drivers |
Le répertoire /proc/bus/usb/001/ contient tous les périphériques présents sur le premier bus USB. Le fichier devices identifie le concentrateur root USB sur la carte mère.
Ci-après figure l'exemple d'un fichier /proc/bus/usb/devices :
T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0 D: Ver= 1.00 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 P: Vendor=0000 ProdID=0000 Rev= 0.00 S: Product=USB UHCI Root Hub S: SerialNumber=d400 C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr= 0mA I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=255ms |
Ce répertoire contient des informations sur des pilotes spécifiques utilisés par le noyau.
À cet endroit se trouve rtc, un fichier commun qui fournit une sortie provenant du pilote pour l'horloge temps réel (RTC) (de l'anglais Real Time Clock) du système, le dispositif qui maintient l'heure lorsque le système est éteint. Ci-après figure un exemple de sortie de /proc/driver/rtc :
rtc_time : 16:21:00 rtc_date : 2004-08-31 rtc_epoch : 1900 alarm : 21:16:27 DST_enable : no BCD : yes 24hr : yes square_wave : no alarm_IRQ : no update_IRQ : no periodic_IRQ : no periodic_freq : 1024 batt_status : okay |
Pour davantage d'informations sur l'horloge temps réel (ou RTC), consultez la documentation installée dont la référence apparaît ci-dessous :
/usr/share/doc/kernel-doc-<version>/Documentation/rtc.txt.
Ce répertoire montre les systèmes de fichiers spécifiques qui sont exportés. Lors de l'exécution d'un serveur NFS, la saisie de la commande cat /proc/fs/nfs/exports permet d'afficher les systèmes de fichiers qui sont partagés ainsi que les permissions accordées pour ces derniers. Pour obtenir davantage d'informations sur le partage des systèmes de fichiers avec NFS, consultez le Chapitre 9.
Ce répertoire contient des informations sur les périphériques IDE du système. Chaque canal IDE est représenté par un répertoire séparé, tel que /proc/ide/ide0 et /proc/ide/ide1. De plus, un fichier drivers est disponible ; il fournit le numéro de version des divers pilotes utilisés sur les canaux IDE :
ide-floppy version 0.99.newide ide-cdrom version 4.61 ide-disk version 1.18 |
Plusieurs jeux de puces (ou chipsets) fournissent également dans ce répertoire un fichier qui donne des renseignements supplémentaires sur les lecteurs connectés via les canaux. Par exemple, un jeu de puces générique Ultra 33 PIIX4 d'Intel produit un fichier /proc/ide/piix qui indique si le DMA ou l'UDMA est activé pour les périphériques présents sur les canaux IDE :
Intel PIIX4 Ultra 33 Chipset. ------------- Primary Channel ---------------- Secondary Channel ------------- enabled enabled ------------- drive0 --------- drive1 -------- drive0 ---------- drive1 ------ DMA enabled: yes no yes no UDMA enabled: yes no no no UDMA enabled: 2 X X X UDMA DMA PIO |
En navigant dans le répertoire pour trouver un canal IDE, tel que ide0, vous pouvez obtenir des informations supplémentaires. Le fichier channel indique le numéro de canal, alors que model indique le type de bus pour ce canal (tel que pci).
À l'intérieur de chaque répertoire de canal IDE se trouve un répertoire de périphérique. Le nom du répertoire de périphérique correspond à la lettre du périphérique dans le répertoire /dev/. Par exemple, le premier périphérique IDE sur ide0 serait hda.
![]() | Remarque |
---|---|
Il existe un lien symbolique pour chacun de ces répertoires de périphériquedans le répertoire /proc/ide/. |
Chaque répertoire de périphérique contient un recueil d'informations et de statistiques. Le contenu de ces répertoires varie selon le type de périphérique connecté. Parmi les fichiers les plus utiles et qui sont communs à de nombreux périphériques figurent :
cache — Le cache du périphérique ;
capacity — La capacité du périphérique, en blocs de 512 octets ;
driver — Le pilote et la version utilisés pour contrôler le périphérique ;
geometry — La géométrie physique et logique du périphérique ;
media — Le type de périphérique, comme par exemple disk.
model — Le nom ou le numéro de modèle du périphérique ;
settings — Un ensemble de paramètres actuels du périphérique. Ce fichier contient généralement un certain nombre d'informations techniques utiles. Un exemple de fichier settings pour un disque dur IDE standard ressemble à l'extrait ci-dessous :
name value min max mode ---- ----- --- --- ---- acoustic 0 0 254 rw address 0 0 2 rw bios_cyl 38752 0 65535 rw bios_head 16 0 255 rw bios_sect 63 0 63 rw bswap 0 0 1 r current_speed 68 0 70 rw failures 0 0 65535 rw init_speed 68 0 70 rw io_32bit 0 0 3 rw keepsettings 0 0 1 rw lun 0 0 7 rw max_failures 1 0 65535 rw multcount 16 0 16 rw nice1 1 0 1 rw nowerr 0 0 1 rw number 0 0 3 rw pio_mode write-only 0 255 w unmaskirq 0 0 1 rw using_dma 1 0 1 rw wcache 1 0 1 rw |
Ce répertoire est utilisé pour paramétrer l'association IRQ-CPU, qui permet de connecter une IRQ donnée à une seule unité centrale. Il est également possible d'empêcher qu'une unité centrale gère une IRQ.
Chaque IRQ a son propre répertoire, ce qui permet une configuration individuelle de chacune d'elles. Le fichier /proc/irq/prof_cpu_mask est un masque de bit qui contient les valeurs par défaut pour le fichier smp_affinity dans le répertoire IRQ. Les valeurs de smp_affinity spécifient quelles unités centrales gèrent cette IRQ spécifique.
Pour obtenir davantage d'informations sur le répertoire /proc/irq/, reportez-vous à la documentation installée dont la référence figure suivante :
/usr/share/doc/kernel-doc-<version>/Documentation/filesystems/proc.txt |
Ce répertoire fournit une vision exhaustive d'un certain nombre de paramètres et de statistiques réseau. Chaque répertoire et fichier virtuel de ce répertoire décrit des aspects de la configuration réseau du système. Vous trouverez ci-dessous une liste partielle du répertoire /proc/net/ :
arp — Contient la table ARP du noyau. Ce fichier est particulièrement utile pour connecter une adresse câblée à une adresse IP sur un système.
atm — Contient des fichiers avec divers paramètres et statistiques de mode de transfert asynchrone (ATM) (de l'anglais Asynchronous Transfer Mode). Ce répertoire est principalement utilisé pour la gestion de réseau ATM et les cartes ADSL.
dev — Dresse la liste des différents périphériques réseau configurés sur le système, avec des statistiques de transmission et de réception. Ce fichier indique entre autres, le nombre d'octets que chaque interface a envoyés et reçus, le nombre de paquets entrants et sortants, le nombre d'erreurs observées, le nombre de paquets abandonnés, etc.
dev_mcast — Dresse la liste des différents groupes de multidiffusion Layer2 que chaque périphérique écoute.
igmp — Dresse la liste des adresses IP de multidiffusion auxquelles le système s'est joint.
ip_conntrack — Dresse la liste des connexions réseau suivies pour les machines qui sont des connexions IP de retransmission.
ip_tables_names — Dresse la liste des types de iptables utilisés. Ce fichier est seulement présent si les iptables sont actives sur le système et contient une ou plusieurs des valeurs suivantes : filter, mangle ou nat.
ip_mr_cache — Affiche le cache du routeur de diffusion.
ip_mr_vif — Dresse la liste des interfaces virtuelles de diffusion.
netstat — Contient un ensemble large, mais détaillé, de statistiques réseau, telles que les délais d'attente TCP, les cookies SYN envoyés et reçus, etc.
psched — Dresse la liste des paramètres du programmateur global des paquets.
raw — Dresse la liste des statistiques brutes relatives aux périphériques.
route — Affiche la table de routage du noyau.
rt_cache — Contient le cache de routage actuel.
snmp — Représente une liste de données concernant le protocole d'administration à distance de réseaux ou SNMP (de l'anglais Simple Network Management Protocol) pour divers protocoles de gestion de réseau en cours d'utilisation.
sockstat — Fournit des statistiques sur les sockets.
tcp — Contient des informations détaillées sur les sockets TCP.
tr_rif — Présente la table de routage RIF du bus annulaire à jeton (token ring).
udp — Contient des informations détaillées sur les sockets UDP.
unix — Dresse la liste des sockets de domaine UNIX actuellement utilisés.
wireless — Présente des données d'interface sans fil.
Ce répertoire est analogue au répertoire /proc/ide/ à la différence près qu'il est réservé aux périphériques SCSI connectés.
Le fichier principal est /proc/scsi/scsi, qui contient une liste de tous les périphériques SCSI reconnus. Cette liste fournit également des informations sur le type de périphérique, ainsi que le nom de modèle, le fabricant, le canal et les données ID SCSI disponibles.
Par exemple, si un système disposait d'un CD-ROM SCSI, d'un lecteur de bande, d'un disque dur ainsi que d'un contrôleur RAID, ce fichier ressemblerait à l'extrait ci-dessous :
Attached devices: Host: scsi1 Channel: 00 Id: 05 Lun: 00 Vendor: NEC Model: CD-ROM DRIVE:466 Rev: 1.06 Type: CD-ROM ANSI SCSI revision: 02 Host: scsi1 Channel: 00 Id: 06 Lun: 00 Vendor: ARCHIVE Model: Python 04106-XXX Rev: 7350 Type: Sequential-Access ANSI SCSI revision: 02 Host: scsi2 Channel: 00 Id: 06 Lun: 00 Vendor: DELL Model: 1x6 U2W SCSI BP Rev: 5.35 Type: Processor ANSI SCSI revision: 02 Host: scsi2 Channel: 02 Id: 00 Lun: 00 Vendor: MegaRAID Model: LD0 RAID5 34556R Rev: 1.01 Type: Direct-Access ANSI SCSI revision: 02 |
Chaque pilote SCSI utilisé par le système a son propre répertoire dans /proc/scsi/, qui contient des fichiers spécifiques à chaque contrôleur SCSI qui utilise ce pilote. Par conséquent, dans le cas de l'exemple ci-dessus, les répertoires aic7xxx/ et megaraid/ sont présents, car ces deux pilotes sont utilisés. Les fichiers situés dans chacun des répertoires contiennent généralement la plage d'adresses d'E/S, les IRQ ainsi que les statistiques relatives au contrôleur SCSI qui utilise ce pilote. Chaque contrôleur peut rapporter des types et quantités d'informations différents. Le fichier du contrôleur SCSI Adaptec AIC-7880 Ultra produit dans notre exemple la sortie suivante :
Adaptec AIC7xxx driver version: 5.1.20/3.2.4 Compile Options: TCQ Enabled By Default : Disabled AIC7XXX_PROC_STATS : Enabled AIC7XXX_RESET_DELAY : 5 Adapter Configuration: SCSI Adapter: Adaptec AIC-7880 Ultra SCSI host adapter Ultra Narrow Controller PCI MMAPed I/O Base: 0xfcffe000 Adapter SEEPROM Config: SEEPROM found and used. Adaptec SCSI BIOS: Enabled IRQ: 30 SCBs: Active 0, Max Active 1, Allocated 15, HW 16, Page 255 Interrupts: 33726 BIOS Control Word: 0x18a6 Adapter Control Word: 0x1c5f Extended Translation: Enabled Disconnect Enable Flags: 0x00ff Ultra Enable Flags: 0x0020 Tag Queue Enable Flags: 0x0000 Ordered Queue Tag Flags: 0x0000 Default Tag Queue Depth: 8 Tagged Queue By Device array for aic7xxx host instance 1: {255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255} Actual queue depth per device for aic7xxx host instance 1: {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1} Statistics: (scsi1:0:5:0) Device using Narrow/Sync transfers at 20.0 MByte/sec, offset 15 Transinfo settings: current(12/15/0/0), goal(12/15/0/0), user(12/15/0/0) Total transfers 0 (0 reads and 0 writes) < 2K 2K+ 4K+ 8K+ 16K+ 32K+ 64K+ 128K+ Reads: 0 0 0 0 0 0 0 0 Writes: 0 0 0 0 0 0 0 0 (scsi1:0:6:0) Device using Narrow/Sync transfers at 10.0 MByte/sec, offset 15 Transinfo settings: current(25/15/0/0), goal(12/15/0/0), user(12/15/0/0) Total transfers 132 (0 reads and 132 writes) < 2K 2K+ 4K+ 8K+ 16K+ 32K+ 64K+ 128K+ Reads: 0 0 0 0 0 0 0 0 Writes: 0 0 0 1 131 0 0 0 |
Cette sortie vous permet de visualiser la vitesse de transfert des différents périphériques SCSI connectés au contrôleur en fonction de l'ID de canal, ainsi que des statistiques détaillées concernant la quantité et la taille des fichiers lus ou écrits par ces périphériques. Par exemple, à partir de la sortie ci-dessus, il est possbiel de voir que ce contrôleur communique avec le CD-ROM à une vitesse de 20 Mo par seconde, alors que le lecteur de bande ne communique lui qu'à une vitesse de 10 Mo par seconde.
Le répertoire /proc/sys/ est différent des autres répertoires de /proc/ car il ne fournit pas seulement des informations relatives au système, il permet également d'apporter des modifications à la configuration du noyau. Ainsi, l'administrateur de l'ordinateur est en mesure d'activer et de désactiver immédiatement des fonctions du noyau.
![]() | Attention |
---|---|
Soyez extrêmement prudent lors de la modification de paramètres sur un système de production, en utilisant les différents fichiers du répertoire /proc/sys/. La modification d'un mauvais paramètre peut rendre le noyau instable et nécessiter le redémarrage du système. Pour cette raison, avant de changer une valeur dans /proc/sys/, assurez-vous que les options de ce fichier sont bien valides. |
Une bonne manière de déterminer si un fichier donné peut être configuré ou s'il est uniquement conçu pour fournir des informations consiste à l'afficher à l'aide de l'option -l saisie à l'invite du shell. Si le fichier peut être modifié, il peut être utilisé pour configurer le noyau. Ci-dessous figure un exemple d'affichage partiel de /proc/sys/fs :
-r--r--r-- 1 root root 0 May 10 16:14 dentry-state -rw-r--r-- 1 root root 0 May 10 16:14 dir-notify-enable -r--r--r-- 1 root root 0 May 10 16:14 dquot-nr -rw-r--r-- 1 root root 0 May 10 16:14 file-max -r--r--r-- 1 root root 0 May 10 16:14 file-nr |
Dans cet exemple, les fichiers dir-notify-enable et file-max peuvent être modifiés et, par conséquent, peuvent être utilisés pour configurer le noyau. Les autres fichiers ne fournissent que des informations sur les paramètres actuels.
Pour changer une valeur dans un fichier /proc/sys/, il faut enregistrer la nouvelle valeur dans le fichier à l'aide de la commande echo. Par exemple, pour activer la touche d'interrogation système sur un noyau en cours d'exécution, tapez la commande :
echo 1 > /proc/sys/kernel/sysrq |
Cette opération aura pour effet de modifier la valeur sysrq qui passera de 0 (off) à 1 (on).
Un certain nombre de fichiers de configuration /proc/sys/ contiennent plus d'une valeur. Afin de leur transmettre correctement de nouvelles valeurs, placez un espace blanc entre chaque valeur transmise à l'aide de la commande echo, comme c'est le cas dans l'exemple ci-dessous :
echo 4 2 45 > /proc/sys/kernel/acct |
![]() | Remarque |
---|---|
Toute modification de configuration effectuée à l'aide de la commande echo disparaîtra lors du redémarrage du système. Pour faire en sorte que des modifications de configuration soient appliquées lors du redémarrage, reportez-vous à la Section 5.4. |
Le répertoire /proc/sys/ contient plusieurs sous-répertoires qui contrôlent différents aspects d'un noyau en cours d'exécution.
Ce répertoire fournit des paramètres pour des périphériques particuliers du système. La plupart des systèmes ont au moins deux répertoires, à savoir cdrom/ et raid/. Les noyaux personnalisés eux peuvent en avoir d'autres, tels que parport/, qui offre la possibilité de partager un port parallèle entre plusieurs pilotes de périphériques.
Le répertoire cdrom/ contient un fichier appelé info, qui fournt un certain nombre de paramètres importants pour le CD-ROM :
CD-ROM information, Id: cdrom.c 3.20 2003/12/17 drive name: hdc drive speed: 48 drive # of slots: 1 Can close tray: 1 Can open tray: 1 Can lock tray: 1 Can change speed: 1 Can select disk: 0 Can read multisession: 1 Can read MCN: 1 Reports media changed: 1 Can play audio: 1 Can write CD-R: 0 Can write CD-RW: 0 Can read DVD: 0 Can write DVD-R: 0 Can write DVD-RAM: 0 Can read MRW: 0 Can write MRW: 0 Can write RAM: 0 |
Ce fichier peut être examiné rapidement pour découvrir les qualités d'un lecteur de CD-ROM inconnu, pour le noyau tout au moins. Si plusieurs lecteurs de CD-ROM sont disponibles sur un système, chaque périphérique dispose de sa propre colonne d'informations.
De nombreux fichiers de /proc/sys/dev/cdrom, tels que autoclose et checkmedia, peuvent être utilisés pour contrôler le lecteur de CD-ROM du système. Utilisez simplement la commande echo pour activer ou désactiver ces fonctions.
Si la prise en charge de RAID est compilée dans le noyau, un répertoire /proc/sys/dev/raid/ sera disponible et contiendra au moins deux fichiers : speed_limit_min et speed_limit_max. Ces paramètres permettent de déterminer l'accélération des périphérique RAID pour des tâches demandant de lourdes opérations d'E/S, telles que la re-synchronisation des disques.
Ce répertoire contient une gamme d'options et d'informations relatives à divers aspects des systèmes de fichiers, y compris des informations relatives au quota, descripteur de fichier, inode et dentry.
Le répertoire binfmt_misc/ est utilisé pour fournir la prise en charge par le noyau de formats binaires divers.
Parmi les fichiers importants du répertoire /proc/sys/fs/ figurent :
dentry-state — Donne l'état du cache du répertoire. Le fichier ressemble à l'extrait ci-dessous :
57411 52939 45 0 0 0 |
Le premier nombre indique le nombre total d'entrées dans le cache du répertoire, alors que le deuxième indique le nombre d'entrées non-utilisées. Le troisième indique le nombre de secondes entre le moment où un répertoire a été libéré et le moment où il peut être récupéré ; le quatrième nombre mesure les pages actuellement demandées par le système. Les deux derniers nombres eux ne sont pas utilisés et n'affichent actuellement que des zéros.
dquot-nr — Indique le nombre maximum d'entrées de quota de disque en cache.
file-max — Indique le nombre maximum de descripteurs de fichier que le noyau attribue. L'augmentation de la valeur dans ce fichier peut aider à résoudre des erreurs causées par un manque de descripteurs de fichier disponibles.
file-nr — Affiche le nombre de descripteurs de fichier alloués, le nombre de descripteurs de fichiers utilisés et le nombre maximum de descripteurs de fichier.
overflowgid et overflowuid — Définissent respectivement l'ID groupe et l'ID utilisateur fixes et sont utilisés avec des systèmes de fichiers qui ne prennent en charge que des ID groupe et utilisateur 16 bits.
super-max — Contrôle le nombre maximum de superblocs disponibles.
super-nr — Affiche le nombre actuel de superblocs utilisés.
Ce répertoire contient divers fichiers de configuration qui affectent directement le fonctionnement du noyau. Parmi les fichiers les plus importants figurent :
acct — Contrôle la suspension de la comptabilisation du processus sur la base du pourcentage d'espace libre disponible sur le système de fichiers contenant le journal. Par défaut, ce fichier ressemble à l'extrait ci-dessous :
4 2 30 |
La première valeur détermine le pourcentage nécessaire pour que la journalisation recommence alors que la deuxième valeur définit le pourcentage d'espace libre représentant le seuil à partir duquel la journalisation est suspendue. La troisième valeur définit l'intervalle en secondes selon lequel le noyau examine le système de fichiers pour voir si la journalisation devrait être suspendue ou reprise.
cap-bound — Contrôle les paramètres de délimitation des capacités qui fournit la liste des capacités de tout processus du système. Si une capacité n'est pas incluse dans cette liste, aucun processus, quels que soient ses privilèges, ne peut l'exécuter. L'objectif est d'améliorer la sécurité du système en s'assurant que certaines choses ne puissent pas se produire, du moins au-delà d'un point donné du processus de démarrage.
Pour obtenir une liste des valeurs pour ce fichier, consultez la documentation installée dont la référence figure ci-dessous :
/lib/modules/<kernel-version>/build/include/linux/capability.h.
ctrl-alt-del — Contrôle si
domainname — Permet de configurer le nom de domaine du système, tel que example.com.
exec-shield — Configure la fonction Exec Shield du noyau. Exec Shield offre une protection contre certains types d'attaques de dépassement de capacité de la mémoire tampon.
Deux valeurs sont possibles pour ce fichier virtuel :
0 — Désactive Exec Shield.
1 — Active Exec Shield. Cette valeur est celle retenue par défaut.
![]() | Important |
---|---|
Si un système exécute des applications sensibles au niveau sécurité et que ces dernières ont été lancées alors que la fonction Exec Shield était désactivée, il est nécessaire de les redémarrées lorsqu'Exec Shield est de nouveau activée, afin que cette fonction Exec Shield puisse être appliquée. |
exec-shield-randomize — Active la fonction d'attribution d'un emplacement aléatoire à différents éléments dans la mémoire. Un tel procédé permet d'empêcher des agresseurs potentiels de localiser des programmes et démons dans la mémoire. Chaque fois qu'un programme ou démon démarre, il est stocké dans un emplacement différent de la mémoire, jamais à une adresse de mémoire statique ou absolue.
Deux valeurs sont possibles pour ce fichier virtuel :
0 — Désactive la fonction d'attribution d'un emplacement aléatoire avec Exec Shield. Cette valeur peut être utile à des fins de débogage.
1 — Active la fonction d'attribution d'un emplacement aléatoire avec Exec Shield. Cette valeur est le défaut. Remarque : Le fichier exec-shield doit également être paramétré sur 1 pour que exec-shield-randomize soit activé.
hostname — Permet de configurer le nom d'hôte du système, tel que www.example.com.
hotplug — Configure l'utilitaire à utiliser lorsqu'un changement de configuration est détecté par le système. Il est surtout utilisé avec USB et Cardbus PCI. La valeur par défaut de /sbin/hotplug ne devrait pas être modifiée, à moins de tester un nouveau programme qui remplira cette fonction.
modprobe — Définit l'emplacement du programme utilisé pour charger des modules du noyau. La valeur par défaut est /sbin/modprobe ce qui signifie que kmod l'appelle pour charger le module lorsqu'un thread du noyau appelle kmod.
msgmax — Définit la taille maximum de tout message envoyé d'un processus à un autre ; sa valeur par défaut est 8192 octets. Soyez prudent lorsque vous décidez d'augmenter cette valeur car les messages mis en file d'attente entre les processus sont stockés dans la mémoire non-échangeable du noyau. Toute augmentation de msgmax augmentera également la demande de mémoire vive du système.
msgmnb — Définit le nombre maximum d'octets dans une file d'attente de messages. La valeur par défaut est 16384.
msgmni — Définit le nombre maximum d'identificateurs de file d'attente de messages. Par défaut, la valeur est 16.
osrelease — Fournit le numéro de version du noyau Linux. Ce fichier ne peut être modifié qu'en changeant la source du noyau et en recompilant.
ostype — Affiche le type de système d'exploitation. Par défaut, ce fichier est paramétré sur Linux ; cette valeur ne peut être modifiée qu'en changeant la source du noyau et en recompilant.
overflowgid et overflowuid — Définissent respectivement l'ID groupe et l'ID utilisateur fixes ; ils sont utilisés avec des appels système sur des architectures qui ne prennent en charge que des ID groupe et utilisateur 16 bits.
panic — Définit le nombre de secondes sur lequel le noyau se base pour retarder le redémarrage du sytème lorsque ce denrier subit une panique du noyau. Par défaut, la valeur est de 0, ce qui désactive le redémarrage automatique après une panique.
printk — Représente le fichier contrôlant toute une série de paramètres relatifs à l'affichage ou à la journalisation de messages d'erreur. Chaque message d'erreur rapporté par le noyau a un niveau journal (loglevel) qui lui est associé et qui définit son importance. Les valeurs du niveau journal s'échelonnent selon l'ordre suivant :
0 — Situation d'urgence du noyau (Emergency). Le système est inutilisable.
1 — Alerte du noyau (Alert). Une action immédiate est requise.
2 — Condition du noyau considérée comme critique (Critical).
3 — Condition générale d'erreur du noyau (Error).
4 — Condition générale d'avertissement du noyau (Warning).
5 — Avis du noyau d'une condition normale, mais importante (Notice).
6 — Message d'information du noyau (Information).
7 — Messages de niveau débogage du noyau (Debug).
Le fichier printk comporte quatre valeurs :
6 4 1 7 |
Chacune de ces valeurs définit une règle différente de traitement des messages d'erreur. La première valeur, appelée niveau journal de la console (console loglevel), spécifie la plus basse priorité de messages qui sera affichée sur la console (veuillez noter que plus la priorité est basse, plus le numéro du niveau journal est élevé). La deuxième valeur définit le niveau journal par défaut pour les messages dépourvus de niveau journal explicite. La troisième valeur spécifie la plus basse configuration de niveau journal possible pour le niveau journal de la console. La dernière valeur définit la valeur par défaut pour le niveau journal de la console.
Le répertoire random/ — Stocke un certain nombre de valeurs relatives à la génération de nombres aléatoires pour le noyau.
rtsig-max — Configure le nombre maximum de signaux POSIX en temps réel que le système peut avoir mis en file d'attente à tout moment donné. La valeur par défaut est 1024.
rtsig-nr — Dresse la liste du nombre actuel de signaux POSIX en temps réel mis en file d'attente par le noyau.
sem — Configure les paramètres du semaphore au sein du noyau. Un sémaphore est un objet IPC System V qui est utilisé pour contrôler l'utilisation d'un processus spécifique.
shmall — Définit la quantité totale de mémoire partagée, en octets, qui peut être utilisée à un moment précis sur le système. Par défaut, cette valeur est de 2097152.
shmmax — Définit la plus grande taille autorisée par le noyau d'un segment de mémoire partagée, valeur exprimée en octets. Par défaut, cette valeur est de 33554432. Le noyau prend cependant en charge des valeurs beaucoup plus élevées.
shmmni — Définit le nombre maximum de segments de mémoire partagée pour l'ensemble du système. Par défaut, cette valeur est de 4096
sysrq — Active la touche d'interrogation système (ou System Request Key), si cette valeur est autre que zéro 0, la valeur par défaut.
La touche d'interrogation système permet l'entrée immédiate d'informations dans le noyau au moyen d'une simple combinaison de touches. Par exemple, elle peut être utilisée pour arrêter ou redémarrer immédiatement un système, synchroniser tous les systèmes de fichiers montés ou vider des informations importantes sur votre console. Pour lancer une touche d'interrogation système, tapez
r — Désactive le mode brut du clavier et le règle sur XLATE (un mode de clavier plus limité qui ne reconnaît pas les modificateurs comme
k — Arrête tous les processus actifs dans une console virtuelle. Également appelée clé d'accès sécurisé (ou Secure Access Key, SAK), cette option est souvent utilisée pour vérifier que l'invite de connexion est bien créée par init et qu'elle n'est pas pas une copie de cheval de Troie conçue pour intercepter les noms d'utilisateurs et les mots de passe.
b — Redémarre le noyau sans préalablement démonter les systèmes de fichiers ou synchroniser les disques connectés au système.
c — Plante le système sans préalablement démonter les systèmes de fichiers ou synchroniser les disques connectés au système.
0 — Éteint le système.
0 — Essaie de synchroniser les disques connectés au système.
u — Essaie de démonter et de remonter tous les systèmes de fichiers en lecture-seule.
p — Affiche tous les indicateurs et registres sur la console.
t — Affiche une liste de processus sur la console.
m — Désactive entièrement Exec Shield.
0 à 9 — Définit le niveau de journalisation de la console.
e — Met fin à tous les processus sauf init à l'aide de SIGTERM.
i — Met fin à tous les processus sauf init à l'aide de SIGKILL.
l — Arrête tous les processus à l'aide de SIGKILL (y compris init). Le système est inutilisable après avoir exécuté ce code SRK.
h — Affiche le texte d'aide.
Cette fonctionnalité est très utile lors de l'utilisation d'un noyau de développement ou lorsque des gels du système se produisent.
![]() | Attention |
---|---|
La fonctionnalité de la touche d'interrogation système est considérée comme un risque de sécurité étant donné qu'une console sans surveillance peut permettre à un agresseur d'accéder au système. Pour cette raison, elle est désactivée par défaut. |
Reportez-vous à /usr/share/doc/kernel-doc-<version>/Documentation/sysrq.txt afin d'obtenir davantage d'informations sur la touche d'interrogation système (ou SKR de l'anglais System Request Key).
sysrq-key — Définit le code de la touche d'interrogation système (84 est la valeur par défaut).
sysrq-sticky — Définit si la touche d'interrogation système est une combinaison de touches simultanée. Parmi les valeurs acceptées figurent :
0 — Les touches
1 — Les touches
sysrq-timer — Définit le nombre de secondes pouvant sécouler avant que le code d'interrogation système ne doive être saisi. La valeur par défaut est 10.
tainted — Indique si un module non-GPL est chargé.
0 — Aucun module non-GPL n'est chargé.
1 — Au moins un module sans licence GPL (y compris des modules sans licence) est chargé.
2 — Au moins un module a été chargé par force à l'aide de la commande insmod -f.
threads-max — Définit le nombre maximum d'unités d'exécution devant être utilisé par le noyau, avec une valeur par défaut de 2048.
version — Affiche la date et l'heure de la dernière compilation du noyau. Le premier champ dans ce fichier, par exemple #3, fait référence au nombre de fois que le noyau a été construit à partir de la source.
Ce répertoire contient des sous-répertoires relatifs à divers éléments du réseau. Diverses configurations lors de la compilation du noyau déterminent la présence ou l'absence de différents répertoires à cet endroit, comme par exemple appletalk/, ethernet/, ipv4/, ipx/ et ipv6/. En changeant les fichiers dans ces répertoires, les administrateurs système peuvent ajuster les configurations réseau sur un système en cours d'exécution.
Étant donné le nombre important d'options réseau possibles et disponibles sous Linux, nous n'aborderons que les répertoires /proc/sys/net/ les plus courants.
Le répertoire /proc/sys/net/core/ contient une série de paramètres qui contrôlent l'interaction entre le noyau et les couches réseau. Les fichiers les plus importants de ce répertoire sont :
message_burst — Définit la durée, en dixièmes de seconde, nécessaire pour écrire un nouveau message d'avertissement. Ceci est utilisé pour empêcher les attaques par déni de service (ou DoS de l'anglais Denial of Service). La valeur par défaut est de 50.
message_cost — Spécifie un coût pour chaque message d'avertissement. Plus la valeur de ce fichier est élevée (5 par défaut), plus il est probable que le message d'avertissement sera ignoré. Ce paramètre est utilisé pour empêcher les attaques DoS.
L'idée de base d'une attaque DoS est de bombarder le système de requêtes qui génèrent des erreurs et remplissent les partitions de disque de fichiers journaux ou qui accaparent toutes les ressources du système pour gérer la journalisation des erreurs. Les paramètres de message_burst et message_cost sont conçus pour être modifiés en fonction des risques acceptables de votre système par rapport au besoin d'une journalisation exhaustive.
netdev_max_backlog — Définit le nombre maximum de paquets pouvant être mis en file d'attente lorsqu'une interface spécifique reçoit des paquets plus rapidement que le noyau ne peut les traiter. La valeur par défaut de ce fichier est de 300.
optmem_max — Configure la taille maximum des tampons auxiliaires qui est autorisée par socket.
rmem_default — Définit la taille par défaut en octets du tampon du socket de réception.
rmem_max — Définit la taille maximum en octets du tampon de réception.
wmem_default — Définit la taille par défaut en octets du tampon d'envoi.
wmem_max — Définit la taille maximum en octets du tampon d'envoi.
Le répertoire /proc/sys/net/ipv4/ contient des paramètres de mise en réseau supplémentaires. Bon nombre de ces paramètres, utilisés en connexion les uns avec les autres, sont très utiles pour empêcher des attaques contre le système ou pour utiliser le système en tant que routeur.
![]() | Attention |
---|---|
Une modification inappropriée de ces fichiers pourrait avoir un effet néfaste sur la connectivité distante au système. |
Ci-dessous figure une liste regroupant certains des fichiers les plus importants du répertoire /proc/sys/net/ipv4/ :
icmp_destunreach_rate, icmp_echoreply_rate, icmp_paramprob_rate et icmp_timeexeed_rate — Définissent le délai maximum d'envoi, en centièmes de seconde, de paquets ICMP aux hôtes sous certaines conditions. La valeur 0 éliminant tout délai, elle n'est pas recommandée.
icmp_echo_ignore_all et icmp_echo_ignore_broadcasts — Permet au noyau d'ignorer les paquets ECHO ICMP de tous les hôtes ou uniquement ceux qui proviennent, respectivement, d'adresses de diffusion ou de multidiffusion. Une valeur de 0 permet au noyau de répondre, alors qu'une valeur de 1 elle, lui fait ignorer les paquets.
ip_default_ttl — Définit la durée de vie (ou TTL de l'anglais Time To Live) par défaut, qui limite le nombre de sauts qu'un paquet peut faire avant d'atteindre sa destination. L'augmentation de cette valeur peut réduire les performances du système.
ip_forward — Permet aux interfaces du système de réacheminer des paquets des unes vers les autres. Par défaut, ce fichier est paramétré sur 0. En paramétrant ce fichier sur 1, le réacheminement des paquets réseau est activé.
ip_local_port_range — Spécifie la plage de ports que TCP ou UDP doivent utiliser lorsqu'un port local est requis. Le premier nombre correspond au port le plus bas devant être utilise et le second au port le plus élevé. Tout système susceptible de nécessiter un nombre de ports supérieur aux valeurs par défaut de 1024 à 4999, devrait utiliser la plage allant de 32768 à 61000.
tcp_syn_retries — Établit une limite au nombre de fois que le système peut retransmettre un paquet SYN lorsqu'il essaie d'effectuer une connexion.
tcp_retries1 — Détermine le nombre de retransmissions permises, essayant de répondre à une connexion entrante. 3 est la valeur par défaut.
tcp_retries2 — Définit le nombre de retransmissions permises de paquets TCP. 15 est la valeur par défaut.
Le fichier /usr/share/doc/kernel-doc-<version>/Documentation/networking/ip-sysctl.txt contient une liste exhaustive des fichiers et des options disponibles dans le répertoire /proc/sys/net/ipv4/.
De nombreux autres répertoires existent dans le répertoire /proc/sys/net/ipv4/, chacun d'entre eux couvrant un aspect différent de la pile réseau. Le répertoire /proc/sys/net/ipv4/conf/ permet de configurer chaque interface du système de façon différente et d'utiliser des paramètres par défaut pour des périphériques non-configurés (dans le sous-répertoire /proc/sys/net/ipv4/conf/default/) ainsi que des paramètres qui annulent toutes les configurations spéciales (dans le sous-répertoire /proc/sys/net/ipv4/conf/all/).
Le répertoire /proc/sys/net/ipv4/neigh/ contient non seulement des paramètres nécessaires pour la communication avec un hôte connecté directement au système (que l'on appelle voisin réseau) mais également des paramètres relatifs aux systèmes qui se trouvent à plusieurs sauts de distance.
Le routage via IPV4 dispose également de son propre répertoire, appelé /proc/sys/net/ipv4/route/. Contrairement à conf/ et neigh/, le répertoire /proc/sys/net/ipv4/route/ contient des spécifications qui s'appliquent au routage avec toutes les interfaces du système. Bon nombre de ces paramètres, tels que max_size, max_delay et min_delay, font référence au contrôle de la taille du cache de routage. Pour vider le cache de routage, spécifiez une valeur quelconque dans le fichier flush.
Des informations supplémentaires sur ces répertoires et sur les valeurs possibles pour leurs fichiers de configuration se trouvent dans :
/usr/share/doc/kernel-doc-<version>/Documentation/filesystems/proc.txt |
Ce répertoire facilite la configuration du sous-système de la mémoire virtuelle (VM) du noyau Linux. Le noyau utilise de façon exhaustive et intelligente la mémoire virtuelle, que l'on appelle communément l'espace swap.
Les fichiers suivants se trouvent généralement dans le répertoire /proc/sys/vm/ :
block_dump — Configure le débogage d'E/S par bloc lors de son activation. Toutes les opérations de lecture/écriture et de modification des blocs effectuées sur des fichiers sont journalisées en conséquence. Cette option peut être utile lors d'un diagnostic de l'accélération ou du ralentissement du disque en vue d'économiser la batterie d'un ordinateur portable. Lorsque l'option block_dump est activée, toute sortie peut être obtenue via dmesg. La valeur par défaut est 0.
![]() | Astuce |
---|---|
Si l'option block_dump est activée en même temps que le débogage du noyau, il est prudent d'arrêter le démon klogd étant donné qu'il crée une activité de disque erronée résultant de block_dump. |
dirty_background_ratio — Démarre la réécriture de données modifiées (dirty) en arrière plan à ce taux de mémoire totale via le démon pdflush. La valeur par défaut est 10.
dirty_expire_centisecs — Définit lorsque des données modifiées présentes en mémoire sont suffisamment anciennes pour être vidées (writeout). Des données sales en mémoire depuis une durée supérieure à cet intervalle sont vidées lors de la prochaine activité d'un démon pdflush. La valeur par défaut exprimée en centièmes de seconde est de 3000.
dirty_ratio — Démarre la réécriture active de données modifiées à ce taux de mémoire pour le générateur de données modifiées, via le démon pdflush. La valeur par défaut est 40.
dirty_writeback_centisecs — Définit l'intervalle existant entre des périodes d'activité du démon pdflush qui écrit périodiquement sur le disque des données modifiées présentes dans la mémoire. La valeur par défaut exprimée en centièmes de seconde est de 500.
laptop_mode — Minimise le nombre de fois qu'un disque dur doit être accéléré en le gardant au ralenti aussi longtemps que possible, conservant ainsi le niveau de la batterie des ordinateurs portables. Cette option permet d'augmenter l'efficacité en regroupant tous les futurs procédés d'E/S et réduisant donc la fréquence des accélérations du disque. La valeur par défaut est 0, mais cette option est automatiquement activée lorsque la batterie d'un ordinateur portable est utilisée.
Cette valeur est contrôlée automatiquement par le démon acpid une fois que l'utilisateur est averti que l'alimentation est fournie depuis la batterie. Aucune modification ou interaction de la part de l'utilisateur n'est nécessaire si l'ordinateur portable prend en charge la norme ACPI (Advanced Configuration and Power Interface)
Pour obtenir davantage d'informations sur le sujet, consultez la documentation installée dont la référence figure ci-dessous :
/usr/share/doc/kernel-doc-<version>/Documentation/laptop-mode.txt
lower_zone_protection — Détermine à quel point le noyau défend les zones d'allocation de mémoire basse. Cette option est efficace lorsqu'elle est utilisée sur des machines configurées avec l'activation de l'espace mémoire highmem. La valeur par défaut est 0, absolument aucune protection. Toutes les autres valeurs entières sont exprimées en méga-octets et lowmem est par conséquent protégée contre une allocation par d'autres utilisateurs.
Pour obtenir davantage d'informations sur le sujet, consultez la documentation installée dont la référence figure ci-dessous :
/usr/share/doc/kernel-doc-<version>/Documentation/filesystems/proc.txt
max_map_count — Configure le nombre maximum de zones de topologie de mémoire qu'un processus peut avoir. La valeur par défaut de 65536 est appropriée dans la plupart des cas.
min_free_kbytes — Force le gestionnaire de mémoire virtuel Linux (VM Linux) à garder un certain nombre de kilo-octets libres. Le VM utilise ce nombre pour calculer une valeur pages_min pour chaque zone lowmem du système. La valeur par défaut est définie par rapport à la mémoire totale de la machine.
nr_hugepages — Indique le nombre actuel de pages hugetlb configurées dans le noyau.
Pour obtenir davantage d'informations sur le sujet, consultez la documentation installée dont la référence figure ci-dessous :
/usr/share/doc/kernel-doc-<version>/Documentation/vm/hugetlbpage.txt
nr_pdflush_threads — Indique le nombre de démons pdflush qui sont actuellement en cours d'exécution. Ce fichier est en lecture-seule et ne devrait pas être modifié par l'utilisateur. Sous de lourdes charges d'E/S, la valeur par défaut fixée à deux est révisée à la hausse par le noyau.
overcommit_memory — Configure les conditions sous lesquelles une grande demande de mémoire est acceptée ou refusée. Les trois modes suivants sont disponibles :
0 — Le noyau effectue le traitement de surcharge de mémoire heuristique, en estimant la quantité de mémoire disponible et en refusant les requêtes qui sont indubitablement invalides. Malheureusement, vu que la mémoire est allouée à l'aide d'un algorithme heuristique plutôt que d'un algorithme précis, ce paramètre peut parfois autoriser la surcharge de la mémoire disponible sur un système. Cette valeur est le paramètre par défaut.
1 — Le noyau n'effectue aucun traitement de surcharge de mémoire. Sous cette configuration, la possibilité de surcharge de mémoire est certes augmentée mais la performance des tâches nécessitant beaucoup de mémoire (telles que celles exécutées par certains logiciels scientifiques) l'est elle aussi.
2 — Le noyau refuse des requêtes de mémoire qui, accumulées, sont égales à tout le swap plus le pourcentage de RAM physique spécifié dans /proc/sys/vm/overcommit_ratio. Ce paramètre est le plus approprié pour les personnes qui souhaitent des risques de surcharge de mémoire moins élevés.
![]() | Remarque |
---|---|
Cette configuration est uniquement recommandée pour les systèmes avec des zones de swap supérieures à la mémoire physique. |
overcommit_ratio — Spécifie le pourcentage de RAM physique considérée lorsque /proc/sys/vm/overcommit_memory est réglé sur 2. La valeur par défaut est 50.
page-cluster — Définit le nombre de pages lues en une seule tentative. La valeur par défaut est 3 et se rapporte en fait à 16 pages ; cette valeur est adéquate pour la plupart des systèmes.
swappiness — Détermine la quantité de mémoire qu'une machine devrait échanger (swap). Plus la valeur est élevée, plus l'activité de va-et-vient est importante. La valeur par défaut, en tant que pourcentage, est de fixée à 60.
Toute la documentation sur le noyau a été installée localement et se trouve à l'emplacement suivant :
/usr/share/doc/kernel-doc-<version>/Documentation/, qui contient des informations supplémentaires.
Ce répertoire contient des informations sur les ressources IPC System V. Les fichiers de ce répertoire concernent les appels IPC System V de messages (msg), sémaphores (sem) et mémoire partagée (shm).
Ce répertoire contient des informations sur les périphériques tty disponibles et actuellement utilisés sur le système. Appelés à l'origine périphériques téléimprimeurs (ou télétypes), tout terminal basé sur les caractères est un périphérique tty.
Sous Linux, il existe trois types différents de périphériques tty. Les périphériques série sont utilisés avec les connexions série, par exemple par modem ou câble série. Les terminaux virtuels créent la connexion à la console commune, comme les consoles virtuelles disponibles lorsque vous appuyez sur
serial /dev/cua 5 64-127 serial:callout serial /dev/ttyS 4 64-127 serial pty_slave /dev/pts 136 0-255 pty:slave pty_master /dev/ptm 128 0-255 pty:master pty_slave /dev/ttyp 3 0-255 pty:slave pty_master /dev/pty 2 0-255 pty:master /dev/vc/0 /dev/vc/0 4 0 system:vtmaster /dev/ptmx /dev/ptmx 5 2 system /dev/console /dev/console 5 1 system:console /dev/tty /dev/tty 5 0 system:/dev/tty unknown /dev/vc/%d 4 1-63 console |
Le fichier /proc/tty/driver/serial répertorie les statistiques d'utilisation et l'état de chaque ligne tty série.
Pour que les périphériques tty puissent être utilisés comme des périphériques réseau, le noyau Linux applique une procédure de transmission sur les périphériques. Cela permet au pilote de placer un type spécifique d'en-tête sur chaque bloc de données transmis via un périphérique donné ; ainsi, l'extrémité distante de la connexion voit ce bloc de données comme un tout unique dans un flux de blocs de données. SLIP et PPP sont des procédures de transmission courantes et sont communément utilisées pour connecter des systèmes via un lien série.
Les procédures de transmission enregistrées sont stockées dans le fichier ldiscs et des informations détaillées sont disponibles dans le répertoire ldisc/.
Précédent | Sommaire | Suivant |
Fichiers de niveau supérieur dans le système de fichiers proc | Niveau supérieur | Utilisation de la commande sysctl |