Les gestionnaires d'amorçage sur PC x86

15/02/2002

Florian Hatat


Le gestionnaire d'amorçage ne représente qu'un petit composant du système d'exploitation : il fait tout au plus quelques centaines de kilo-octets, ne s'exécute que dans les premières secondes du démarrage d'un ordinateur et est indispensable au système d'exploitation tout entier.


1. Qu'est-ce qu'un gestionnaire d'amorçage ?

Le gestionnaire d'amorçage, ou bootloader, est un petit programme qui s'exécute au démarrage de votre ordinateur. C'est le deuxième composant logiciel qui se lance sur la machine, après le BIOS, et n'a qu'une tâche à réaliser : lire et mettre en mémoire l'image du noyau d'un système d'exploitation, puis lui passer la main. C'est l'étape du bootstrap : un petit composant relativement simple, le gestionnaire, charge un autre composant plus gros et plus complexe, le système d'exploitation, ce qui lui vaut d'être également appelé chargeur.

Les termes chargeur, gestionnaire d'amorçage ou bootloader sont utilisés indifféremment pour désigner le même programme.

Les chargeurs sont très nombreux et il est difficile d'en choisir un, puisqu'ils offrent des fonctionnalités équivalentes, ou presque. Parmi tant d'autres, on compte LILO, GRUB, XOSL, GAG, les chargeurs des *BSDs et celui (ceux ?) de DOS/Windows. Cette diversité n'est pas toujours la meilleure puisqu'à chaque chargeur correspond un fonctionnement différent...

2. Où habite-t-il sur mon disque dur ?

Le gestionnaire se loge dans la plupart des cas au début du disque dur, sur le MBR (Master Boot Record), mais il peut également se trouver au début d'une partition, sur le PBR (Partition Boot Record). Au démarrage de l'ordinateur, le BIOS va en effet lire et mettre en mémoire le contenu du MBR. Le chargeur qui s'exécute peut alors à son tour passer la main à un autre chargeur qui se trouve sur une partition.

Mais le gestionnaire est presque toujours accompagné d'autres composants qui s'exécutent quand le système d'exploitation est démarré. Ils servent principalement à installer le gestionnaire sur le MBR/PBR.

2.1. Pourquoi l'installer sur le MBR ?

Parce que c'est là qu'il faut l'installer. Na !

Le MBR est l'emplacement dédié au chargeur, puisqu'il est lu au démarrage par le BIOS. Le MBR doit d'ailleurs toujours abriter un booloader, même simpliste, sinon la machine ne peut plus démarrer autrement qu'avec une disquette ou un CD-ROM. Donc on installe dans tous les cas le chargeur sur le MBR.

En fait je viens de mentir, le monde n'est pas si beau. Si vous avez installé Windows, les choses se compliquent. Le premier problème : l'installation de Windows remplace à chaque fois le MBR pour mettre son propre chargeur. Pensez-donc à garder une disquette de démarrage pour les autres OS. Le deuxième problème se pose avec NT/2000 : Windows met son propre chargeur sur le MBR et il est impossible de le remplacer par un autre, car NT ne pourrait alors plus démarrer. La solution ? Lisez la suite.

2.2. Pourquoi l'installer sur un PBR ?

Il est plus pratique d'utiliser un chargeur unique qui sait lancer chaque système installé, mais ce n'est pas toujours possible car un chargeur ne gère pas les méthodes de démarrage de tous les systèmes d'exploitation existants. Mais nous pouvons installer plusieurs chargeurs qui s'occuperont chacun d'un ou plusieurs systèmes. Même si c'est un cauchemar à administrer, cela fonctionne. Nous avons alors un gestionnaire principal sur le MBR qui s'occupe du chargement des systèmes qu'il connaît, et qui passe la main à d'autres chargeurs, sur un PBR, pour les autres OS.

Ainsi, avec par exemple Windows NT/2000 et Linux sur la même machine, le chargeur de Windows se trouve sur le MBR, et s'occupe de démarrer Windows. En revanche pour démarrer Linux, le chargeur de Windows laissera le contrôle à un autre gestionnaire (souvent LILO ou GRUB), installé sur le PBR.

Le démarrage de plusieurs systèmes quand Windows est installé reste cependant assez compliqué, et il n'est pas étonnant de voir fleurir plusieurs documents qui abordent le sujet. En voici quelques-uns.

Vous pouvez trouver des traductions des HOWTOs depuis le site FREENIX.

3. Les bons réflexes

C'est inévitable : rien ne fonctionne du premier coup. Vous pouvez avoir lu la documentation déjà six fois, il y aura toujours un raté. Avec les gestionnaires d'amorçage, un raté ne pardonne pas, car votre machine ne pourra plus démarrer après. C'est plutôt dommage de devoir réinstaller, quand une disquette de démarrage pour chaque OS aurait permis de réduire la casse.

Faites des disquettes de démarrage pour chaque système installé !