Table des matières
En tant tant qu’administrateur du système, il est sage que vous sachiez en gros comment le système Debian est démarré et configuré. Bien que les détails exacts figurent dans les fichiers sources des paquets installés et dans leurs documentations, c’est un peu pénible pour la plupart d’entre-nous.
J’ai fait de mon mieux pour fournir un aperçu rapide des points-clés du système Debian et de sa configuration pour vous servir de référence en me basant sur mes propres connaissances actuelles et antérieures et celles des autres. Comme le système Debian est une cible changeante, la situation sur le système peut avoir changé. Avant de faire une quelconque modification au système, vous devrez vous référer à la dernière documentation de chacun des paquets.
Le système informatique subit plusieurs phases de processus d’amorçage (« boot strap process ») depuis l’événement de mise sous tension jusqu’à ce qu’il offre à l’utilisateur un système d’exploitation (OS) pleinement fonctionnel.
Pour des raison de simplicité, je limiterai la discussion à une plateforme PC typique avec l’installation par défaut.
Le processus d’amorçage typique est comme une fusée à quatre étages. Chaque étage de la fusée passe le contrôle du système à l’étage suivant.
Bien entendu, elles peuvent être configurées de manière différente. Par exemple, si vous avez compilé votre propre noyau, vous pouvez sautez l’étape avec le système mini-Debian. Ne supposez donc pas que c’est le cas sur votre système avant de l’avoir vérifié vous-même.
![]() |
Note |
---|---|
Pour les plateformes autres que les PC traditionnels tels que les systèmes SUN ou Macintosh, le BIOS sur la ROM et la partition sur le disque peuvent être assez différents (Section 9.5.2, « Configuration de la partition du disque »). Veuillez dans ce cas rechercher ailleurs une documentation spécifique à votre plateforme. |
Le BIOS est la première étape du processus d’amorçage, il est est démarré par l’événement de mise sous tension. Le BIOS, qui est implanté sur une mémoire à lecture seule (ROM), est exécuté depuis l’adresse mémoire particulière à laquelle le pointeur de programme du processeur est initialisé par l’événement de mise sous tension.
Ce BIOS effectue l’initialisation de base du matériel (POST : autotest à la mise sous tension) (« power on self test ») et passe le contrôle du système à l’étape suivante que vous lui indiquez. Le BIOS est habituellement fourni avec le matériel.
L’écran de démarrage du BIOS indique en général quelle(s) touche(s) presser pour entrer dans l’écran de configuration du BIOS afin de paramétrer son comportement. Des touches courantes sont F1, F2, F10, Échap, Ins et Suppr. Si l’écran de démarrage de votre BIOS est caché par un bel écran graphique, vous pouvez essayer de presser différentes touches comme Échap pour désactiver cet écran. Ces touches dépendent beaucoup du matériel.
L’emplacement du matériel et la priorité du code lancé par le BIOS peuvent être définis depuis l’écran de configuration du BIOS. Typiquement, quelques secteurs de début du premier périphérique sélectionné qui est trouvé (disque dur, disquette, CD-ROM, …) sont chargés en mémoire et le code initial est exécuté. Ce code peut être l’un des suivants :
code du chargeur initial ;
code du noyau d’un OS de transition comme FreeDOS ;
code du système d’exploitation cible s’il peut tenir dans cet espace réduit.
Typiquement, le système est amorcé depuis la partition spécifiée du disque dur primaire. Les deux premiers secteurs du disque dur d’un PC traditionnel contiennent l’enregistrement maître d’amorçage (MBR). (« master boot record »). Les informations de partition du disque, y compris la sélection de l’amorçage, sont enregistrées à la fin de ce MBR. Le code initial du chargeur d’amorçage exécuté depuis le BIOS occupe le reste de ce MBR.
Le chargeur initial (« boot loader ») est le deuxième étage du processus d’amorçage, il est lancé depuis le BIOS. Il charge en mémoire l’image du noyau du système et l’image initrd et leur passe le contrôle. Cette image mémoire initiale (« initrd image ») est l’image du système de fichiers racine et sa prise en compte dépend du chargeur initial utilisé.
Le système Debian utilise normalement le noyau de Linux comme noyau de système par défaut. L’image mémoire initiale de l’actuel noyau de Linux 2.6/3.x est techniquement l’image initramfs (initial RAM filesystem : système de fichiers initial en mémoire). L’image initramfs est une archive cpio, compressée à l’aide de gzip, des fichiers du système de fichiers racine.
L’installation par défaut du système Debian place, pour la plateforme PC, le premier étage du code du chargeur initial GRUB sur le MBR. Il existe de nombreux chargeurs d’amorçage et d’options de configuration possibles.
Tableau 3.1. Liste des chargeurs initiaux
paquet | popcon | taille | initrd | chargeur initial | description |
---|---|---|---|---|---|
grub-legacy | V:1, I:4 | 1747 | Pris en charge | GRUB Legacy | assez intelligent pour comprendre le partitionnement du disque et des systèmes de fichiers tels que vfat, ext3… |
grub-pc | V:72, I:867 | 550 | Pris en charge | GRUB 2 | assez intelligent pour comprendre le partitionnement du disque et des systèmes de fichiers tels que vfat, ext4… (défaut). |
grub-rescue-pc | V:0, I:2 | 4478 | Pris en charge | GRUB 2 | images de secours amorçables de GRUB 2 (CD et disquettes) (versions PC/BIOS) |
lilo | V:2, I:10 | 594 | Pris en charge | Lilo | réside sur les emplacements des secteurs de données du disque dur (Ancien). |
syslinux | V:13, I:90 | 134 | Pris en charge | Isolinux | il comprend le système de fichiers ISO9660. C’est utilisé pour le CD d’amorçage. |
syslinux | V:13, I:90 | 134 | Pris en charge | Syslinux | il comprend le système de fichiers MSDOS (FAT). Il est utilisé par la disquette d’amorçage. |
loadlin | V:0, I:2 | 105 | Pris en charge | Loadlin | un nouveau système est démarré depuis le système FreeDOS/MSDOS. |
mbr | V:1, I:19 | 72 | Non pris en charge | MBR par Neil Turton | c’est un logiciel libre qui se substitue au MBR de MSDOS. Il ne comprend que les partitions sur disques. |
![]() |
Avertissement |
---|---|
Ne jouez pas avec les chargeurs d’amorçage sans avoir un support de secours
amorçable (CD ou disquette) créé à partir des images du paquet
|
Le menu de configuration de GRUB Legacy est situé en
« /boot/grub/menu.lst
». Il peut, par exemple,
avoir les entrées suivantes :
title Debian GNU/Linux root (hd0,2) kernel /vmlinuz root=/dev/hda3 ro initrd /initrd.img
Le fichier de menu de configuration de GRUB 2 est situé en
/boot/grub/grub.cfg
». Il est automatiquement
créé par « /usr/sbin/update-grub
» depuis les
modèles situés dans « /etc/grub.d/*
» et les
paramètres situés en « /etc/default/grub
». Il
peut, par exemple, avoir les entrées suivantes :
menuentry "Debian GNU/Linux" { set root=(hd0,3) linux /vmlinuz root=/dev/hda3 initrd /initrd.img }
Les paramètres de GRUB pour ces exemples ont la signification suivante :
Tableau 3.2. Signification des paramètres de GRUB
Paramètres de GRUB | signification |
---|---|
root
|
utiliser la 3ème partition du premier disque en la désignant par
« (hd0,2) » avec GRUB legacy ou par
« (hd0,3) » dans GRUB 2
|
kernel
|
utiliser le noyau se trouvant en « /vmlinuz »
avec le paramètre du noyau : « root=/dev/hda3
ro »
|
initrd
|
utiliser l’image initrd/initramfs
située en « /initrd.img »
|
![]() |
Note |
---|---|
La valeur du numéro de partition utilisé par le programme « GRUB legacy » est inférieure d’un unité à celle normalement utilisée par le noyau de Linux et les outils utilitaires. Le programme GRUB 2 corrige ce problème. |
![]() |
Astuce |
---|---|
Un UUID (consultez Section 9.5.3, « Accès à une partition en utilisant l’UUID ») peut être utilisé pour
identifier un périphérique spécial par bloc plutôt que son nom de fichier
comme « |
![]() |
Astuce |
---|---|
Vous pouvez démarrer un chargeur d’amorçage depuis un autre chargeur d’amorçage en utilisant une technique appelée chargement en chaîne (« chain loading »). |
Consultez « info grub
» et
grub-install(8).
Le système mini-Debian est la troisième étape du processus d’amorçage lancée par le chargeur d’amorçage. Elle lance le noyau du système avec son système de fichiers racine en mémoire. C’est une étape préparatoire facultative du processus de démarrage.
![]() |
Note |
---|---|
Le terme « système mini-Debian » est utilisé par l’auteur pour décrire dans ce document cette 3ème étape du processus de démarrage. On désigne souvent ce système par système initrd. Un système semblable en mémoire est utilisé par l’installateur Debian. |
Le script « /init
» est exécuté en tant que
premier programme sur le système de fichiers racine en mémoire. C’est un
script de l’interpréteur de commandes qui initialise le noyau dans l’espace
utilisateur et passe le contrôle au reste de l’étage. Ce système mini-Debian
offre au système d’amorçage une flexibilité comme l’ajout de modules du
noyau avant le processus de démarrage principal ou le montage du système de
fichiers racines en mode chiffré.
Vous pouvez interrompre cette partie du processus d’amorçage afin d’obtenir
l’invite de l’interpréteur de l’administrateur en indiquant
« break=init
» etc. comme paramètre de
démarrage du noyau. Consultez le script
« /init
» pour d’autres conditions
d’interruption. Cet environnement d’interpréteur de commandes est
suffisamment sophistiqué pour effectuer une bonne inspection du matériel de
votre machine.
Les commandes disponibles avec ce système mini-Debian sont des commandes réduites et sont principalement fournies par un outil GNU appelé busybox(1).
![]() |
Attention |
---|---|
Vous devrez utiliser l’option « |
Le système Debian normal est le quatrième étage du processus d’amorçage, il est lancé par le système mini-Debian. Le noyau du système mini-Debian continue de tourner dans cet environnement. Le système de fichiers racine passe de celui en mémoire à celui, réel, lu sur le disque dur.
Le programme init est le premier à être exécuté,
assorti du PID=1, afin qu’il accomplisse son rôle de processus principal du
démarrage, qui consiste à commander l’exécution de plusieurs programmes. Le
chemin par défaut du programme init est
« /sbin/init
» mais il peut être modifié en
passant un paramètre de démarrage au noyau, comme suit :
« init=/chemin/vers/programme_init
».
Le programme d’initialisation par défaut a subi des changements :
Les versions de Debian antérieures à squeeze
utilisent
une simple initialisation façon SysV.
À partir de la version wheezy
, Debian améliore ce style
SysV en ordonnançant la séquence de démarrage
avec les en-têtes LSB et l’exécution parallèle de scripts de démarrage.
Dans les versions qui succèderont à wheezy
, Debian
pourrait adopter un système d’initialisation plus récent tel que
upstart
, systemd
…
![]() |
Astuce |
---|---|
Tous les mécanismes de redémarrage sont compatibles par l’intermédiaire des
scripts « |
![]() |
Astuce |
---|---|
Il est possible de vérifier le niveau d’exécution courant de la commande
|
![]() |
Astuce |
---|---|
|
![]() |
Astuce |
---|---|
Si GRUB est le chargeur en usage, le paramètre
de démarrage du noyau est spécifié dans
|
Tableau 3.3. Liste d’utilitaires d’amorçage initial pour le système Debian :
paquet | popcon | taille | description |
---|---|---|---|
initscripts
|
V:860, I:999 | 276 | scripts pour initialiser et arrêter le système |
sysvinit
|
V:840, I:997 | 243 | Utilitaires init(8) de type System-V |
sysv-rc
|
V:861, I:998 | 215 | Mécanisme de changement de niveau de fonctionnement de type System-V |
sysvinit-utils
|
V:861, I:998 | 231 | Utilitaires de type System-V (startpar(8), bootlogd(8), …) |
lsb-base
|
V:861, I:999 | 36 | Linux Standard Base 3.2 fonctionnalité de script d’initialisation |
insserv
|
V:776, I:915 | 183 | outil pour organiser la séquence de démarrage en utilisant les dépendances du script LSB de init.d |
upstart
|
V:0, I:0 | 990 |
démon
init(8)
basé sur des événements pour la concurrence (remplacement de
sysvinit )
|
systemd
|
V:16, I:20 | 4990 |
démon
init(8)
basé sur des événements pour la concurrence (remplacement de
sysvinit )
|
readahead-fedora
|
V:5, I:8 | 148 | readahead(8) pour précharger les fichiers nécessaires au démarrage ; |
uswsusp
|
V:9, I:28 | 575 | outil permettant d’utiliser le programme de l’espace utilisateur de mise en veille fourni par Linux |
kexec-tools
|
V:1, I:6 | 274 | outil kexec pour le redémarrage par kexec(8) (redémarrage à chaud) |
bootchart
|
V:0, I:2 | 46 | analyseur des performances du processus de démarrage |
bootchart-view
|
V:0, I:1 | 211 | analyseur des performances du processus de démarrage (virtualisation) |
mingetty
|
V:1, I:3 | 24 | getty(8) en mode console uniquement |
mgetty
|
V:0, I:3 | 416 | modem intelligent (« smart modem ») remplaçant de getty(8) |
![]() |
Astuce |
---|---|
Le paquet |
![]() |
Astuce |
---|---|
Vous trouverez des conseils actualisés pour accélérer le processus de démarrage sur Debian wiki:BootProcessSpeedup. |
Cette section explique de quelle manière le système était anciennement démarré avec la bonne vieille initialisation façon SysV. Votre système Debian ne fonctionne pas exactement de cette manière mais il est très instructif de connaître ces bases, puisque les systèmes d’initialisation plus récents tendent à offrir des fonctionnalités équivalentes.
Le processus de démarrage façon SysV franchit essentiellement les étapes suivantes :
Le système Debian passe au niveau de fonctionnement
N (« runlevel N ») (aucun) pour initialiser le système
selon la description de « /etc/inittab
».
Le système Debian passe au niveau de fonctionnement S pour initialiser le système en mode utilisateur unique afin de terminer l’initialisation matérielle, etc.
Pour démarrer les services du système, le système Debian passe alors à l’un des niveaux de fonctionnement multi-utilisateurs (2 à 5) indiqués.
Le niveau de fonctionnement initial utilisé pour le mode multi-utilisateurs
est indiqué par le paramètre de démarrage
« init=
» du noyau ou par la ligne
« initdefault » du fichier
« /etc/inittab
». Le système Debian tel qu’il
est installé démarre au niveau de fonctionnement
2.
Tous les fichiers de scripts réels exécutés par le système init sont situés
dans le répertoire « /etc/init.d/
».
Consultez
init(8),
inittab(5),
et "/usr/share/doc/sysv-rc/README.runlevels.gz
" pour une
explication précise.
Chaque niveau de fonctionnement utilise un répertoire pour sa configuration, il possède la signification particulière décrite ci-dessous :
Tableau 3.4. Liste des niveaux de fonctionnement et description de leur utilisation
niveau de fonctionnement | répertoire | description de l’utilisation du niveau de fonctionnement (runlevel) |
---|---|---|
N
|
aucun |
niveau d’amorçage du système (NONE) (pas de répertoire
« /etc/rcN.d/ »)
|
0
|
/etc/rc0.d/
|
arrêter le système |
S
|
/etc/rcS.d/
|
mode utilisateur unique lors du démarrage (alias :
« s »)
|
1
|
/etc/rc1.d/
|
mode utilisateur unique commuté depuis le mode multi-utilisateurs |
2
|
/etc/rc2.d/
|
mode multi-utilisateurs |
3
|
/etc/rc3.d/
|
,, |
4
|
/etc/rc4.d/
|
,, |
5
|
/etc/rc5.d/
|
,, |
6
|
/etc/rc6.d/
|
redémarrer le système |
7
|
/etc/rc7.d/
|
mode multi-utilisateurs valable mais normalement non utilisé |
8
|
/etc/rc8.d/
|
,, |
9
|
/etc/rc9.d/
|
,, |
Vous pouvez aussi changer de niveau de fonctionnement depuis la console, par exemple 4 en faisant ce qui suit :
$ sudo telinit 4
![]() |
Attention |
---|---|
Le système Debian n’assigne pas par avance de différence spéciale de signification entre les niveaux de fonctionnement compris entre 2 et 5.. L’administrateur du système d’un système Debian peut modifier ce comportement. (C’est-à-dire que Debian n’est ni Red Hat Linux, ni Solaris de Sun Microsystems, ni HP-UX de Hewlett Packard, ni AIX d’IBM, ni…) |
![]() |
Attention |
---|---|
Le système Debian ne remplit pas les répertoires des niveaux d’exécution entre 7 et 9 lors de l’installation. Les variantes d’UNIX traditionnelles n’utilisent pas ces niveaux d’exécution. |
Lorsque la commande init(8) ou telinit(8) arrive au niveau « <n> », le système exécute essentiellement les scripts d’initialisation comme suit.
Les noms de scripts de « /etc/rc<n>.d/
»
commençant par un « K
» sont exécutés dans
l’ordre alphabétique avec le paramètre unique
« stop
» (arrêt des services).
Les noms de scripts de « /etc/rc<n>.d/
»
commençant par un « S
» sont exécutés dans
l’ordre alphabétique avec le paramètre unique
« start
» (lancement des services).
Par exemple, si vous avez les liens
« S10sysklogd
» et
« S20exim4
» dans un répertoire de niveau de
fonctionnement, « S10sysklogd
» qui est lié
symboliquement à « ../init.d/sysklogd
» sera
lancé avant « S20exim4
» qui est lié
symboliquement à « ../init.d/exim4
».
Ce simple système séquentiel d’initialisation est le système de démarrage
classique de type System V tel qu’il a été
utilisé jusqu’au système Debian Lenny
.
Les systèmes Debian récents sont optimisés pour exécuter les scripts simultanément.
La commande insserv(8) utilise les renseignements LSB de dépendances du paquet pour calculer les dépendances entre les scripts.
Consultez « /usr/share/doc/insserv/README.Debian
».
Les renseignements LSB de dépendances du paquet définis dans l’en-tête des scripts d’initialisation assurent la disponibilité des ressources nécessaires.
![]() |
Avertissement |
---|---|
Faire des modifications aux liens symboliques se trouvant dans
« |
Définissons, par exemple, définissons un niveau de fonctionnement du système comme Red Hat Linux de la manière suivante :
init
démarre le système au niveau 3 qui est la valeur par
défaut ;
init
ne démarre pas
gdm3(1)
aux niveaux 0,1,2,6 ;
init
démarre
gdm3(1)
aux niveaux 3,4,5 ;
Cela peut être fait en éditant le fichier
« /etc/inittab
» afin de modifier les niveaux
de lancement et en utilisant des outils conviviaux de gestion des niveaux de
fonctionnement tels que sysv-rc-conf
ou
bum
pour éditer le niveau de fonctionnement. Si vous ne
devez utiliser que la ligne de commande, voici comment faire (après
l’installation par défaut du paquet gdm3
et sa sélection
comme gestionnaire d’affichage).
# cd /etc/rc2.d ; mv S21gdm3 K21gdm3 # cd /etc ; perl -i -p -e 's/^id:.:/id:3:/' inittab
Veuillez noter que le fichier
« /etc/X11/default-display-manager
» est
vérifié lors du démarrage des démons de gestion d’affichage :
xdm
, gdm3
, kdm
, et
wdm
.
![]() |
Note |
---|---|
Vous pouvez toujours lancer X depuis l’interpréteur de commandes de n’importe quelle console avec la commande startx(1). |
Le paramètre par défaut de chacun des scripts d’initialisation de
« /etc/init.d/
» est donné par le fichier
correspondant se trouvant dans
« /etc/default/
» qui ne contient que des assignations de variables
d’environnement. Ce choix de nom de répertoire est spécifique au système
Debian. Il est en gros l’équivalent du répertoire
« /etc/sysconfig
» qu’on trouve dans Red Hat Linux et d’autres distributions. Par
exemple, « /etc/default/cron
» peut être
utilisé pour contrôler la manière dont fonctionne
« /etc/init.d/cron
».
Le fichier « /etc/default/rcS
» peut être
utilisé pour personnaliser les valeurs par défaut au moment du démarrage
demotd(5),
sulogin(8),
etc.
Si vous ne pouvez pas obtenir le comportement que vous souhaitez en modifiant ces variables, alors vous pouvez modifier les scripts init eux-mêmes. Ce sont des fichiers de configuration qui peuvent être édités par les administrateurs du système.
Le noyau conserve le nom de machine du
système. Le script d’initialisation du niveau de fonctionnement S qui est
lié symboliquement à
« /etc/init.d/hostname.sh
» définit le nom de
machine « hostname » au moment du démarrage (en utilisant la
commande hostname
) avec le nom qui est enregistré dans
« /etc/hostname
». Ce fichier ne devra
contenirque le nom de machine du système
et pas un nom de domaine pleinement qualifié.
Pour afficher le nom de la machine utilisée, lancez la commande hostname (1) sans paramètre.
Alors que le système de fichiers racine est monté par le noyau lors de son démarrage, les autres systèmes de fichiers sont montés dans le niveau de fonctionnement (runlevel) S à l’aide des scripts d’initialisation suivants :
« /etc/init.d/mountkernfs.sh
» pour les
systèmes de fichiers du noyau se trouvant en
« /proc
»,
« /sys
», etc.
« /etc/init.d/mountdevsubfs.sh
» pour les
systèmes de fichiers virtuels de « /dev
»
« /etc/init.d/mountall.sh
» pour les systèmes
de fichiers normaux qui utilisent « /etc
/fstab
»
« /etc/init.d/mountnfs.sh
» pour les systèmes
de fichiers à accès par le réseau en utilisant
« /etc/fstab
»
Les options de montage des systèmes de fichiers du noyau (procfs, sysfs, et
tmpfs pour /proc
, /sys
,
/tmp
, /run
, etc.) sont configurés dans
« /etc/default/rcS
». Consultez
rcS(5).
Pour les systèmes de fichiers ordinaires, disque ou réseau, les options de
montage sont définies dans
« /etc/fstab
». Consultez Section 9.5.7, « Optimisation du système de fichiers à l’aide des options de montage ».
![]() |
Note |
---|---|
Le montage effectif des systèmes de fichiers à accès par le réseau attendra le démarrage de l’interface réseau. |
![]() |
Avertissement |
---|---|
Une fois tous les systèmes de fichiers montés, les fichiers temporaires se
trouvant dans « |
Les interfaces réseau sont initialisées dans le niveau de fonctionnement S
par le script d’initialisation ayant un lien symbolique vers
« /etc/init.d/ifupdown-clean
» et
« /etc/init.d/ifupdown
». Consultez Chapitre 5, Configuration du réseau pour la manière de les configurer.
De nombreux services réseau (consultez Chapitre 6, Applications réseau) sont directement démarrés en tant que
démons sous le mode multi-utilisateurs lors du démarrage du système par le
script d’initialisation, par exemple
« /etc/rc2.d/S20exim4
» (pour RUNLEVEL=2) qui
est un lien symbolique vers
« /etc/init.d/exim4
».
Certains services réseau peuvent être démarrés à la demande en utilisant le
super-serveur inetd
(ou un équivalent). inetd
est lancé lors au démarrage du
système par « /etc/rc2.d/S20inetd
» (pour
RUNLEVEL=2) qui est un lien symbolique vers
« /etc/init.d/inetd
». Fondamentalement,
inetd
permet à un démon en cours de fonctionnement d’en
appeler plusieurs autres, ce qui réduit la charge du système.
Lorsqu’une requête pour un service arrive au super-serveur inetd
, le
protocole et le service sont identifiés par une recherche dans les bases de
données se trouvant dans « /etc/protocols
» et
« /etc/services
». inetd
recherche ensuite un service Internet normal dans la base de données
« /etc/inetd.conf
» ou un service basé sur
Open Network Computing
Remote Procedure Call (ONC RPC)/Sun RPC dans
« /etc/rpc.conf
».
Parfois, inetd
ne lance pas directement le serveur voulu
mais exécute le programme d’enveloppe du démon
TCP/IP
tcpd(8)
avec, en paramètre dans « /etc/inetd.conf
», le
service demandé. Dans ce cas, tcpd
lance le serveur
approprié après avoir enregistré la requête dans le journal et avoir fait
quelques autres vérifications à l’aide de
« /etc/hosts.deny
» et
« /etc/hosts.allow
».
Afin d’assurer la sécurité du système, désactivez autant de services réseau que possible. Consultez Section 4.6.4, « Restreindre l’accès à certains services du serveur ».
Consultez
inetd(8),
inetd.conf(5),
protocols(5),
services(5),
tcpd(8),
hosts_access(5),
hosts_options(5),
rpcinfo(8),
portmap(8)
et
« /usr/share/doc/portmap/portmapper.txt.gz
».
Les messages du système peuvent être personnalisés au moyen de
« /etc/default/rsyslog
» et
« /etc/rsyslog.conf
» à la fois pour le fichier journal
et pour l’affichage à l’écran. Consultez
rsyslogd(8)
et
rsyslog.conf(5).
Consultez aussi Section 9.2.2, « Analyseur de journaux ».
Les messages du noyau peuvent être personnalisés au moyen de
« /etc/init.d/klogd
» à la fois pour le fichier
journal et l’affichage à l’écran. Positionnez « KLOGD='-c
3'
» dans ce fichier et lancez
« /etc/init.d/klogd restart
». Consultez
klogd(8).
Vous pouvez modifier directement le niveau d’erreur des messages de la manière suivante :
# dmesg -n3
Tableau 3.5. Liste des niveaux d’erreur du noyau
valeur du niveau d’erreur | nom du niveau d’erreur | signification |
---|---|---|
0 | KERN_EMERG | le système est inutilisable |
1 | KERN_ALERT | une action doit être entreprise immédiatement |
2 | KERN_CRIT | conditions critiques |
3 | KERN_ERR | conditions d’erreur |
4 | KERN_WARNING | conditions d’avertissement |
5 | KERN_NOTICE | condition normale mais significative |
6 | KERN_INFO | information |
7 | KERN_DEBUG | messages du niveau de débogage |
À partir de la version 2.6 du noyau Linux, le système udev fournit un mécanisme de découverte et d’initialisation automatique du matériel (consultez udev(7)). Lors de la découverte de chaque périphérique par le noyau, le système udev lance un processus utilisateur qui utilise les informations provenant du système de fichiers sysfs (consultez Section 1.2.12, « procfs et sysfs »), charge les modules du noyau nécessaires pour sa prise en charge en utilisant le programme modprobe(8) (consultez Section 3.3.1, « Initialisation des modules du noyau ») et crée les nœuds de périphériques en conséquence.
![]() |
Astuce |
---|---|
Si
« |
Le nom des nœuds de périphériques peut être configuré par les fichiers de
règle de udev se trouvant dans
« /etc/udev/rules.d/
». Les règles actuelles
par défaut tendent à créer des noms générés dynamiquement ce qui donne des
noms de périphériques non statiques excepté pour les périphériques cd et
réseau. En ajoutant vos règles personnalisées semblables à celles existantes
pour les périphériques cd et réseau, vous pouvez aussi créer des noms de
périphériques statiques pour les autres périphériques comme les clés
USB. Consultez « Écrire des règles
udev » ou
« /usr/share/doc/udev/writing_udev_rules/index.html
».
Comme le système udev est une cible quelque peu mouvante, je laisse les détails pour d’autres documentations et je ne donnerai ici qu’un minimum d’informations.
![]() |
Astuce |
---|---|
Les nœuds de périphériques n’ont pas besoin d’être statiques pour les règles
de montage se trouvant dans
« |
Le programme modprobe(8) nous permet de configurer, depuis un processus utilisateur, un noyau Linux en cours d’exécution en ajoutant ou en supprimant des modules du noyau. Le système udev (consultez Section 3.3, « Le système udev ») en automatise l’appel afin d’aider à l’initialisation du module du noyau.
Il existe des modules non liés au matériel et des modules qui pilotent des
éléments matériels particuliers comme les suivants qui demandent à être
préchargés en les déclarant dans le fichier
« /etc/modules
» (consultez
modules(5)).
les modules TUN/TAP fournissent un périphérique de réseau virtuel point-à-point (TUN) et un périphérique de réseau virtuel Ethernet (TAP) ;
les modules netfilter fournissent les fonctions de pare-feu netfilter (iptables(8), Section 5.9, « Infrastructure de netfilter ») ;
le module du pilote du temporisateur de chien de garde.
Les fichiers de configuration du programme
modprobe(8)
se trouvent dans le répertoire
« /etc/modprobes.d/
» comme c’est expliqué dans
modprobe.conf(5).
(Si vous souhaitez que certains modules du noyau ne soient pas chargés
automatiquement, vous pouvez les mettre en liste noire dans le
fichier« /etc/modprobes.d/blacklist
»).
Le fichier
« /lib/modules/<version>/modules.dep
»
généré par le programme
depmod(8)
décrit les dépendances des modules utilisés par le programme
modprobe(8).
![]() |
Note |
---|---|
Si vous rencontrez des problèmes de chargement de modules lors du chargement
des modules au démarrage ou avec
modprobe(8),
« |
Le programme modinfo(8) affiche des informations concernant les modules du noyau.
Le programme
lsmod(8)
formate de manière agréable le contenu de
« /proc/modules
», affichant quels sont les
modules du noyau actuellement chargés.
![]() |
Astuce |
---|---|
Vous pouvez identifier le matériel exact installé sur votre système. Consultez Section 9.4.3, « Identification du matériel ». |
![]() |
Astuce |
---|---|
Vous pouvez configurer le matériel au moment du démarrage pour activer les fonctionnalités désirées de ce matériel. Consultez Section 9.4.4, « Configuration matérielle ». |
![]() |
Astuce |
---|---|
Vous pouvez probablement ajouter la prise en charge d’un périphérique particulier en recompilant le noyau. Consultez Section 9.9, « Le noyau ». |