« GNU GRUB » : différence entre les versions

Aller à la navigation Aller à la recherche
3 591 octets ajoutés ,  8 février 2022
 
(16 versions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
[[Category:serveur]]
[[Category:debian]]
[[Category:EFI]]
[[Category:grub]]
=Bios / Legacy sur partitionnement MBR=
=Bios / Legacy sur partitionnement MBR=


Ligne 7 : Ligne 12 :
* Une étape "Stage 1" installé sur le MBR, qui appelle l'étape suivante "Stage 1.5"
* Une étape "Stage 1" installé sur le MBR, qui appelle l'étape suivante "Stage 1.5"
* Une étape "Stage 1.5", contenant la suite de Grub, contenue dans le "post-MBR gap", situé avant la première partition
* Une étape "Stage 1.5", contenant la suite de Grub, contenue dans le "post-MBR gap", situé avant la première partition
* Une étape "Stage 2" installée sur une partition du disque, qui contient le logiciel Grub a proprement parler ainsi que sa configuration. C'est généralement sur cette même partition que vous avez votre système (/) ou éventuellement votre partition /boot
* Une étape "Stage 2" installée sur une partition du disque, qui contient le logiciel Grub a proprement parler ainsi que sa configuration. C'est généralement sur cette même partition que vous avez votre système (/) ou éventuellement votre partition /boot. Cette partition peut également être un raid logiciel (mdadm).


Pour installer grub sur le MBR du disque sda :
Pour installer grub sur le MBR du disque sda :
Ligne 27 : Ligne 32 :


=EFI / UEFI sur partitionnement GPT=
=EFI / UEFI sur partitionnement GPT=
Dans ce cas, vous aurez besoin, en plus de Grub (spécifiquement de sa version EFI), du logiciel efibootmgr qui permet à Grub d'éditer la NVRAM contenant les entrées de démarrage.
Il faudra la encore une partition spécifique, appelée partition EFI ou ESP, qui va contenir un (ou plusieurs !) chargeur d'amorçage.<br>
La taille de cette partition est variable, mais il est souvent recommandé qu'elle fasse au moins 512 MiB.<br>
Elle devra avec le GUID <code>C12A7328-F81F-11D2-BA4B-00A0C93EC93B</code>. Pour définir ce GUID :
* Avec fdisk : définir le type "EFI System"
* avec gdisk : définir le type EF00
* avec parted : créer une partition fat32, et y définir le flag "esp"
Il faut ensuite formater cette partition en FAT 16 ou 32 :
<pre>mkfs.fat -F 32 /dev/sda1</pre>
Monter cette partition à l'emplacement <code>/boot/efi/</code>
On peut ensuite y installer grub :
<pre>grub-install --target=x86_64-efi --efi-directory=/boot/efi/ --bootloader-id=debian</pre>
Cela installera grub dans le dossier <code>/boot/efi/EFI/debian/</code><br>
Attention, cette commande doit être lancée à l'intérieur du système (ou chrooté dedans). Si vous devez la lancer depuis l'extérieur du système, il faudra préciser l'argument <code>--boot-directory=</code> spécifiant le chemin vers le répertoire /boot du système.
Si vous ne souhaitez pas que grub mettre à jour la table nvram, ajoutez l'option <code>--no-nvram</code>
Dans le cas d'un système a plusieurs disques, notez que cette partition ne peut pas être un raid logiciel (mdadm). Si votre partition root (/) est au sein d'un raid logiciel mdadm, afin d'assurer la redondance, il faudra qu'une partition EFI contenant grub soit présente sur chaque disque.
Sous debian, vous pouvez reconfigurer grub avec <code>dpkg-reconfigure grub-efi-amd64</code> afin d'activer par exemple la configuration automatique de la NVRAM ou encore l'installation en mode <code>removable</code> (qui créé un fichier efi de secours dans un chemin standardisé EFI/BOOT/BOOTX64.EFI)
==Utilisation manuelle de efibootmgr==
Exemple dans le cas ou la partition EFI est sda1 et la partition système est sda2 :
<pre>efibootmgr -c -d /dev/sda -p 1 -l "\EFI\debian\grubx64.efi"</pre>
Pour voir la configuration : <code>efibootmgr -v</code>
Attention, si votre système démarre en PXE, n'ajoutez pas d'entrée manuellement ni avec grub-install (précisez alors <code>--no-nvram</code>)
==Détail des fichiers installés sous debian==
* shimx64.efi : chargeur intermédiaire entre le firmware et grub (non obligatoire)
* grubx64.efi : le chargeur grub EFI
* mmx64.efi : gestionnaire de clés utilisateurs MOKs (pour Secure Boot)
* fbx64.efi : chargeur de secours (actionné par shimx64)
* BOOTX64.CSV : fichier de configuration du chargeur de secours fbx64.efi
==Système multi-disque en raid software==
Dans le cas d'un système avec plusieurs disques et des partitions en raid software, il faut créer une partition EFI/ESP sur chaque disque.<br>
Il n'existe pas de mécanique officielle permettant de synchroniser ces partitions.<br>
Certains firmware EFI acceptent cependant d'avoir les partitions EFI au sein d'un raid, à condition d'utiliser les métadonnées mdadm 0.90 ou 1.00 (qui sont stockés en fin de partition raid). C'est cependant une méthode peu recommandée, car si le firmware EFI écrit directement sur l'une des partitions (ce qui peut arriver), il va casser le raid.
4 231

modifications

Menu de navigation