Blog ENI : Toute la veille numérique !
🐠 -25€ dès 75€ 
+ 7 jours d'accès à la Bibliothèque Numérique ENI. Cliquez ici
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici
  1. Livres et vidéos
  2. Linux
  3. Démarrage du système
Extrait - Linux Administration système et exploitation des services réseau (5e édition)
Extraits du livre
Linux Administration système et exploitation des services réseau (5e édition)
1 avis
Revenir à la page d'achat du livre

Démarrage du système

Démarrage du système

Ce chapitre traite des différents mécanismes de démarrage du système, essentiellement init System V et systemd.

1. Personnalisation du démarrage du système

L’objectif de cette section est de vous apprendre à :

  • déterminer et modifier l’état des services système selon les cibles ou niveaux d’exécution ;

  • comprendre précisément les processus de démarrage de systemd, d’init System V, ainsi que la séquence d’amorçage de Linux ;

  • connaître les interactions entre les cibles systemd et les niveaux d’exécution init System V.

a. Compétences principales

  • systemd

  • init System V

  • Spécifications LSB (Linux Standard Base)

b. Éléments mis en œuvre

  • /usr/lib/systemd/

  • /etc/systemd/

  • /run/systemd/

  • systemctl

  • systemd-delta

  • /etc/inittab

  • /etc/init.d/

  • /etc/rc.d/

  • chkconfig

  • update-rc.d

  • init et telinit

2. Récupération du système

L’objectif de cette section est de vous apprendre à :

  • manipuler correctement un système Linux pendant la séquence de démarrage et en mode récupération ;

  • utiliser la commande init et les options du noyau relatives à init ;

  • déterminer la cause des erreurs au chargement du système et avec les chargeurs de démarrage. Le programme...

Personnalisation du démarrage du système

Le démarrage du système Linux commence après la séquence d’amorçage, une fois que le noyau Linux a été chargé en mémoire et activé. Ce noyau va initialiser le matériel, charger les modules dynamiques nécessaires à la gestion des éléments matériels détectés, puis démarrer les différents services, en fonction de sa configuration.

Les deux principaux modes de gestion de ce démarrage sont init System V, modèle le plus ancien, dérivé d’Unix system V, et systemd, plus récent et d’origine Linux.

Il est important de maîtriser ces deux environnements de démarrage, car les deux sont utilisés en production, même si systemd a vocation à remplacer à terme init System V. Dans les versions récentes de la plupart des distributions, le démarrage systemd est celui implémenté par défaut.

1. init System V

init System V est un mécanisme de démarrage et d’arrêt de différents services et daemons selon le niveau de fonctionnalités (niveau d’exécution, identifié par un chiffre ou une lettre) souhaité. Il s’appuie sur le programme init, processus en tâche de fond, créé par le noyau au démarrage du système. Le processus init démarre ensuite l’ensemble des daemons définis comme devant être actifs dans le niveau d’exécution par défaut.

D’origine Unix, dans sa version System V, cette méthode de démarrage a longtemps été la plus utilisée sur Linux. Depuis la création de systemd par Lennart Poettering en 2010, les versions récentes des distributions (Red Hat, Debian, etc.) tendent à le remplacer par ce dernier.

La version 6 de la distribution Red Hat Enterprise Linux et la version Debian 7 Wheezy utilisent par défaut init System V,.

2. Le processus init

Le processus exécutant le programme /sbin/init est créé par le noyau, avec le PID 1. En dehors du processus de PID 2 et de ses processus enfants, s’exécutant en mode noyau, ce processus est à l’origine de tous les autres processus...

Récupération du système

En cas de problème au démarrage initial du système, l’administrateur doit pouvoir établir rapidement le diagnostic et mettre en œuvre une solution de dépannage pour rétablir la situation.

Pour cela, il faut bien connaître les différentes étapes de l’amorçage du système, ainsi que les différentes techniques permettant de modifier les paramètres de démarrage, ou de démarrer à partir d’un périphérique de secours.

1. Amorçage du système

À la mise en route de la machine sur laquelle est installé un système Linux, un programme initialise les composants matériels puis cherche un programme de chargement de noyau (boot loader).

Sur les architectures matérielles PC, ce programme peut être le BIOS ou, de plus en plus souvent, UEFI, son remplaçant plus puissant et plus sécurisé.

a. BIOS

Le BIOS (Basic Input/Output System) est un programme stocké dans une mémoire EEPROM ou flash. Il est chargé de configurer et de gérer les composants matériels bas niveau de la machine et de démarrer le chargement du système d’exploitation.

Quand la machine est mise en route, le BIOS est exécuté. Il effectue des tests POST (Power-On Self Test) sur les composants bas niveau (mémoire, processeur, etc.). Il cherche ensuite un programme d’amorçage d’un noyau de système d’exploitation (boot loader), en parcourant successivement différents périphériques, selon l’ordre configuré. Dès qu’il trouve un programme dans un emplacement spécifique du périphérique (le secteur d’amorçage du disque, le MBR, ou le premier secteur de la partition active), il le charge en mémoire et celui-ci s’exécute.

L’architecture du BIOS est ancienne et ses limites sont celles imposées par les premières machines de type PC. Il est de moins en moins adapté aux possibilités du matériel moderne et pose de nombreux problèmes de sécurité.

b. UEFI

L’UEFI (Unified Extensible Firmware Interface) a été conçu pour remplacer le BIOS, en étendant...

Chargeurs d’amorçage alternatifs

En dehors de GRUB, d’autres méthodes permettent de charger un noyau Linux :

  • SYSLINUX/EXTLINUX : pour charger Linux depuis une clé USB.

  • ISOLINUX : pour charger Linux depuis un CD/DVD ou une clé USB.

  • PXE : pour charger un noyau de système d’exploitation depuis un serveur réseau.

  • systemd-boot et U-Boot.

1. SYSLINUX et EXTLINUX

SYSLINUX est à l’origine un projet destiné à permettre le chargement de Linux (ou d’un autre système d’exploitation) depuis une disquette. Il est utilisé aujourd’hui principalement pour charger un noyau depuis une clé USB. Il est fourni par le paquet logiciel syslinux.

SYSLINUX nécessite une partition FAT. Pour installer le chargeur sur le périphérique choisi, il faut utiliser la commande syslinux :

syslinux --install FicSpecialDisque 

La configuration du menu de démarrage se fait par le fichier texte syslinux.cfg, sur le périphérique d’amorçage (dans le répertoire /syslinux ou /boot/syslinux).

EXTLINUX est un dérivé de SYSLINUX. À la différence de ce dernier, il utilise une partition de type ext (ext2, ext3 ou ext4). La commande d’installation du chargeur est :

extlinux --install RepMont 

RepMont est le répertoire de montage du périphérique d’amorçage. Le fichier de configuration du chargeur est extlinux.conf.

2. ISOLINUX

ISOLINUX est utilisé pour créer des CD/DVD bootables, au format ISO 9660.

Il fait partie du paquet logiciel syslinux, un ensemble d’outils permettant de gérer des chargeurs d’amorçage alternatifs...