Introduction #
Une séquence de boot est le processus par lequel un système d’exploitation démarre sur un ordinateur. Cela implique l’initialisation du matériel, le chargement du noyau du système d’exploitation en mémoire, et le lancement des processus nécessaires au fonctionnement du système.
Les système d’initialisation ont varié sous Linux pour tous migré vers systemd:
Distribution | Version de Transition vers systemd | Méthode d’Initialisation Avant la Transition |
---|---|---|
CentOS | 7 | SysVinit |
Red Hat | 7 | SysVinit |
Ubuntu | 15.04 | Upstart |
Etapes du process de boot #
-
BIOS (Basic Input and Output Settings (firmware interface) POST = Power-On Self-Test started
-
MBR - (Master Boot Record) Il s’agit du premier secteur d’un disque dur qui indique ou le boot loader est situé (pour Linux on utilise GRUB2) afin de le monter en RAM
-
GRUB2 - (Grand Unfied Boot Loader v2) - Chargement du Kernel Linux
/boot/grub2/grub.cfg
Définition du choix de la séquence de démarrage. -
Kernel - Core of Operating System - Charge les drivers requis de
initrd.img
. Démarre le tout premier process d’OS (systemd
) -
Systemd - System Daemon (PID #1) - Démarre l’ensemble des process suivant un niveau de priorité de démarrage (
run-level
) et des inter-dépendances entre les daemons./etc/systemd/system/default.target
➡️ 7 niveau de priorités (0-6)
Reboot / Shutdown #
systemctl poweroff
: Arrêt des services, démontage des partitions de fichiers, signal d’arrêt d’alimentation du systèmesystemctl reboot
: Arrêt des services, démontage des partitions de fichiers, signal de redémarrage du système
Alias poweroff
, reboot
Cibles de systemd #
Cible | Description |
---|---|
graphical.target | Cible utilisée pour démarrer le système en mode multi-utilisateur avec une interface graphique (par exemple, GNOME, KDE). |
multi-user.target | Cible similaire à graphical.target, mais sans interface graphique, souvent utilisée pour les serveurs. |
rescue.target | Cible utilisée pour démarrer le système en mode de dépannage mono-utilisateur, avec un accès complet au système.- sulogin prompt |
emergency.target | Cible utilisée pour démarrer le système en mode d’urgence mono-utilisateur, avec un accès limité aux services essentiels. - initramfs - sulogin prompt |
default.target | Cible par défaut du système, généralement un alias de graphical.target ou multi-user.target. |
poweroff.target | Cible utilisée pour arrêter le système. |
reboot.target | Cible utilisée pour redémarrer le système. |
shutdown.target | Cible utilisée pour démarrer la séquence d’arrêt du système. |
Commandes utiles #
Voir la cible courante ou le run-level:
systemctl get-default
Voir les dépendances sur une cible: systemctl list-dependencies grahical.target

Liste des run-level: ls -al /lib/systemd/system/runlevel*
Changer la cible par défaut: systemctl set-default graphical.target
Astuce
Je vous partage ici une commande vraiment que j’adooooorre !!!
On est d’accord que les logs peuvent êtres quelques peu fastidieux quand on veut savoir quels sont les services/daemons qui prennent un temps monstrueux à démarrer lors de la séquence de boot. Alors posez-vous tranquillement dans votre fauteil, taper cette simple commande et visualisez d’un coup d’oeil le résultat !
systemd-analyse plot > sequence.svg
Avouez-que c’est tout de suite plus agréable à lire 😊