next up previous contents index
Next: Précisions sur l'arrêt du Up: Boots et Shutdowns Previous: Survol des boots et   Table des matières   Index


Le processus de boot vu de plus près

On peut lancer Linux soit à partir d'une disquette soit à partir du disque dur. La section consacrée à l'installation du << Installation and Getting Started guide >> ([Wel]) indique comment installer Linux pour le lancer selon notre choix.

Une fois le PC lancé, le BIOS fait différents tests pour vérifier que tout va bien5.4 et lance ensuite le véritable démarrage. Il choisit un lecteur de disque (normalement le premier lecteur de disquette, s'il y a une disquette dedans, sinon le premier disque dur ; cependant, cet ordre est configurable) et lit son tout premier secteur. Celui-ci s'appelle le secteur de boot, dans le cas d'un disque dur, il est aussi appelé master boot record car un disque dur peut contenir plusieurs partitions, chacune ayant son propre secteur de boot.

Le secteur de boot contient un petit programme (assez petit pour tenir dans un seul secteur) dont le rôle est de lire le véritable système d'exploitation sur le disque et de le lancer. Lorsqu'on lance Linux à partir d'une disquette, le secteur de boot contient du code qui ne fait que lire les quelques premières centaines de blocs (selon la taille réelle du noyau, bien sûr) et les transfère à un endroit précis de la mémoire. Sur une disquette de boot Linux, il n'y a pas de système de fichiers, le noyau est simplement stocké dans des secteurs consécutifs car cela simplifie le processus de boot. Il est cependant possible de démarrer à partir d'une disquette ayant un système de fichiers en utilisant LILO, le LInux LOader5.5

Lorsqu'on démarre à partir du disque dur, le code contenu dans le master boot record examine la table des partitions (qui se trouve aussi à cet endroit), identifie la partition active (marquée << bootable >> ), lit le secteur de boot de celle-ci, puis exécute le code qui s'y trouve. Le code dans le secteur de boot de la partition fait la même chose que le code du secteur de boot d'une disquette : il lit le noyau dans la partition et le lance. Cependant, les détails changent, car il n'est généralement pas utile d'avoir une partition séparée juste pour contenir l'image du noyau. Le code dans le secteur de boot de la partition ne peut donc simplement lire le disque séquentiellement, il doit trouver les secteurs où le système de fichiers les a mis. Il y a plusieurs façons de régler ce problème, mais la plus commune est d'utiliser LILO. (Les détails sur la façon de procéder ne sont pas pertinents dans cet exposé, voir la documentation de LILO pour plus d'informations.)

Lorsqu'on démarre avec LILO, celui-ci lance normalement le noyau par défaut. Il est aussi possible de le configurer pour pouvoir lancer un parmi plusieurs noyaux, ou même d'autres systèmes d'exploitation que Linux, et l'utilisateur peut alors choisir quel noyau ou système d'exploitation doit être lancé au démarrage. LILO peut être configuré pour que, si l'on presse les touches alt, shift ou ctrl, au moment du lancement (lorsque LILO est chargé), LILO demande ce qu'il faut démarrer au lieu de partir sur le démarrage par défaut. On peut aussi configurer LILO pour qu'il demande toujours quel noyau lancer, avec un temps d'expiration optionnel menant au démarrage du noyau par défaut.

Avec LILO, il est aussi possible de fournir un paramètre au noyau, après le nom de celui-ci ou du système d'exploitation.

META: Il existe d'autres chargeurs de boot que LILO. Des informations sur ceux-ci seront ajoutés dans une future version. loadlin.

Booter à partir d'une disquette ou du disque dur ont tous deux leurs avantages, mais il est généralement plus pratique de le faire à partir du disque dur car cela évite les tracas de la manipulation des disquettes. C'est aussi plus rapide. Cependant, il peut être plus risqué d'installer le système pour qu'il boote à partir du disque, et donc beaucoup commencent d'abord par booter à partir d'une disquette, puis, lorsque le système est complètement installé et fonctionne bien, ils installent LILO et bootent à partir du disque dur.

Lorsque le noyau Linux est en mémoire, peu importe comment, et qu'il est lancé, grosso modo les choses suivantes vont se passer :


next up previous contents index
Next: Précisions sur l'arrêt du Up: Boots et Shutdowns Previous: Survol des boots et   Table des matières   Index
root
1999-03-03