GNU GRUB (GRand Unified Bootloader) est un chargeur de démarrage universel.
Parce qu'il est capable de charger presque toutes sortes d'OS, des OS dérivés d'UNIX : Linux, BSD etc, toute la gamme des windows. Parce qu'on peut l'installer sur tous les types de systèmes de fichiers Linux/Unix (ext2, ext3, reiserFs, autres…) Parce que Grub est multiplateformes, il marche sur plusieurs types de machines : PC, Mac, IBM, Sun. Aussi GRUB fait référence à UNIX, d'où sont tirés presque tous les OS, voilà pourquoi Grub utilise la numérotation des disques d'UNIX, différente de celle de Linux et de windows….
Le chargeur GRUB pour BIOS a deux façons d'installer son image principale :
Quand on installe GRUB dans le MBR d'une partition, il utilise l'embarquage si :
Sinon, il doit utiliser les listes de blocs si la position de /boot/grub le permet.
Quand on installe GRUB dans le secteur d'amorce d'une partition, il utilise l'embarquage si le type de contenu de la partition le permet. Actuellement c'est le cas si la partition est de type Btrfs, et il y a un travail en cours (à moins que ce soit fini) pour que GRUB puisse utiliser l'espace réservé à cet effet d'une partition de type LVM. Sinon, il utilise les listes de blocs, ce qui nécessite d'exécuter grub-install avec l'option –force (ce que fait le script d'installation du paquet grub-pc).
A noter que l'utilisation des listes de blocs n'est pas toujours possible, notamment si /boot/grub n'est pas dans une partition simple (RAID, LVM, volume chiffré…).
Merci à LaFouine et raleur pour cet apport dans la compréhension du GRUB
raleur : Une astuce concernant les histoires de clavier AZERTY/QWERTY :
il est possible de configurer le système pour charger la disposition du clavier plus tôt afin qu'elle soit active dans le shell de l'initramfs ou quand on change d'init. Il faut mettre :
KEYMAP=y
dans /etc/initramfs-tools/initramfs.conf
et reconstruire l'initramfs avec
update-initramfs -u
Source du forum :
Avant d'expliquer les détails du boot avec Grub, il faut avoir en tête cette différence fondamentale avec les autres bootloaders: Grub n'est pas qu'un simple bootloader.
Il affiche le menu de choix de boot, et il est possible d'en modifier les options au clavier, ce qui n'est pas possible avec d'autres simbles bootloaders comme LiLo.
Cependant, ce n'est pas très pratique de lancer votre OS habituel avec des commandes au clavier, aussi pour lancer vos OS, Grub utilise un fichier de configuration qui s'appelle grub.cfg
Ainsi, grub met à la fois à disposition un menu défini par le grub.cfg et un mini-shell de secours, permettant d'effectuer les mêmes opérations manuellement.
Avec GRUB 2 :
scripts
et complétons des modules
qui se chargeront eux-mêmes de faire cette rédaction pour le grub.Cet aspect déroutant à l'abord force la connaissance des débutants vers un apprentissage plus précoce et plus vigoureux de Debian.
Pour ce tuto, nous avons choisi de séparer ces aspects complémentaires,
ce que tu décris Naguam c'est le chainloading? Où une partie de GRUB s'installe dans une partition /boot (?) (le stage 2) et une autre partie est dans le premier secteur de disque (stage 1)
Non, on parle de “chainloading” (ou chaînage) quand un chargeur d'amorçage lance un autre chargeur d'amorçage. Par exemple quand le programme d'amorce standard du MBR lance le secteur d'amorce de la partition active (schéma de Naguam), ou quand GRUB lance le GRUB d'un autre système, ou quand GRUB lance le chargeur d'amorçage de Windows (ntldr/bootmgr). Le chargement de l'étage suivant de GRUB par l'étage précédent de GRUB n'est pas du chaînage, c'est juste le processus de démarrage de GRUB.
Stage 1, 1.5 et 2 sont des notions propres à l'ancienne version GRUB 1/legacy. Dans la version actuelle GRUB 2 elles sont remplacées par la boot image (secteur d'amorce) et la core image. La boot image charge la core image qui charge les modules et la configuration installés dans /boot/grub.
La boot image et la core image sont obligatoirement sur le même disque, alors que /boot/grub peut être sur un disque différent. Cependant c'est une configuration à éviter car cela rend les deux disques dépendants l'un de l'autre, chacun contenant seulement une partie de GRUB.
Sur le forum :