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 Préparation à la certification LPIC-2 (examens LPI 201 et LPI 202) - 5e édition
Extraits du livre
LINUX Préparation à la certification LPIC-2 (examens LPI 201 et LPI 202) - 5e édition
2 avis
Revenir à la page d'achat du livre

Démarrage du système

Prérequis et objectifs

1. Prérequis

Les connaissances nécessaires à la certification LPIC-1 :

Commandes de suivi des processus.

Édition de fichiers.

Commandes de gestion de répertoires et de fichiers.

Partitions et systèmes de fichiers.

2. Objectifs

À la fin de ce chapitre, vous serez en mesure de :

Comprendre précisément la séquence d’amorçage de Linux, en environnement BIOS et UEFI.

Connaître les processus de démarrage de systemd et d’init System V.

Configurer l’état des services système selon les cibles systemd ou les niveaux d’exécution init System V.

Intervenir pour modifier la séquence de démarrage, en mode récupération, via les options de chargement du noyau.

Configurer les chargeurs d’amorçage GRUB 2 et GRUB Legacy.

Connaître les autres chargeurs d’amorçage et leurs principales fonctionnalités.

Démarrage du système

Ce sujet est divisé en trois parties de poids différents.

1. Personnalisation du démarrage du système

Poids

3

Objectifs

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

Poids

4

Objectifs

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 se concentre sur les chargeurs d’amorçage GRUB 2 et GRUB Legacy, en configuration BIOS et UEFI.

a. Compétences principales

  • BIOS et UEFI

  • Démarrage NVMe

  • GRUB version 2 et Legacy...

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.

La certification LPIC-2 requiert 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, ce qui permet de mettre en œuvre les connaissances requises pour la certification LPIC-2.

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...

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 ses fonctionnalités...

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...

Validation des acquis : questions/réponses

Répondez à ces questions ouvertes, comparables à celles qui pourront vous être posées lors de la certification, mais ces dernières seront sous forme de QCM ou demandant une réponse courte saisie au clavier.

1. Questions

1 Quel est le PID du processus init ?

2 Pourquoi le démarrage par systemd est-il généralement plus rapide que par init System V ?

3 Quelle commande permet de demander à un service systemd de relire ses fichiers de configuration ?

4 Comment faire passer le système en cours d’exécution au niveau d’exécution 3 ?

5 Qu’est-ce que GPT ?

6 Quelles commandes permettent de mettre à jour la configuration de GRUB 2 ?

7 Quel paramètre de chargement du noyau permet d’utiliser un shell avec l’UID 0, sans demande de mot de passe du compte super-utilisateur ?

8 Dans le fichier de configuration de GRUB, à quelle partition de quel disque correspond (hd1,1) ?

9 Quelle commande permet de créer un fichier image ISO 9660 ?

10 Quels serveurs réseau faut-il configurer pour pouvoir démarrer des machines en mode PXE ?

2. Résultat

Référez-vous aux pages suivantes pour contrôler vos réponses. Pour chacune de vos bonnes réponses, comptez un point.

Nombre de points :    /10

Pour ce chapitre, votre score...

Travaux pratiques

Ces travaux pratiques proposent un atelier mettant en œuvre certains des points abordés dans ce chapitre. Pour chaque étape est donné un exemple commenté de réalisation, à adapter suivant la configuration de vos systèmes.

1. Changement du mot de passe de root en mode secours

Vous avez perdu le mot de passe du compte super-utilisateur root d’un serveur Linux. Vous devez donc démarrer la machine en mode secours, de façon à attribuer un nouveau mot de passe à l’utilisateur root, sans avoir à saisir l’ancien.

Votre serveur démarre avec GRUB 2 et le menu de démarrage n’est pas protégé par un mot de passe.

Commandes et fichiers utiles

  • shutdown

  • mount

  • passwd

Manipulations

1.

Redémarrez le serveur srvRH.

2.

Dans le menu de démarrage de GRUB, passez en mode édition.

3.

À la fin de la ligne spécifiant les options de démarrage du noyau, ajoutez l’option de démarrage d’un shell. Lancez le chargement du noyau.

4.

Quand le prompt du shell s’affiche, tapez la commande nécessaire pour forcer le montage de la partition racine en mode lecture-écriture. Modifiez le mot de passe du compte utilisateur root. Redémarrez le système et ouvrez une session avec le compte utilisateur root et le nouveau mot de passe.

Résumé des commandes...