GRUB 2

Fichier de configuration modifiable

/etc/default/grub

Option la plus importante avec les paramètres kernel GRUB_CMDLINE_LINUX.

Après modification de ce fichier, lancer la commande suivante.

BIOS mode
grub2-mkconfig -o /boot/grub2/grub.cfg
UEFI mode
grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg

Dossier des fichiers de configuration à ne pas modifier excepté ceux notés custom

/etc/grub.d

/etc/grub.d/40-custom à modifier pour ajouter une entrée pour un OS Windows.

menuentry "Windows" {
set root='(hd0,1)'
chainloader +1
}

A l'issue, il faut regénérer la configuration avec la commande grub2-mkconfig.

Fichier utilisé pour le boot généré à partir des fichiers précédents. Ne pas modifier non plus

/boot/grub2/grub.cfg

Emplacement des modules GRUB disponibles

/boot/grub2/i386-pc

Changer le kernel chargé par défaut Now list all possible menu entries

grep -P "submenu|^menuentry" /boot/grub2/grub.cfg | cut -d "'" -f2

Now set the desired default menu entry

grub2-set-default "<submenu title><menu entry title>"

Verify the default menu entry

grub2-editenv list

Réinstaller GRUB 2

Monter un OS similaire en live via cdrom ou usb.

# mkdir /mnt/dd
# mount /dev/sda5 /mnt/dd
Si la partition EFI est sur /dev/sda2
# mount /dev/sda2 /mnt/dd/boot/efi
Une fois que la partition système est montée, il faut monter les périphériques que le Live CD a trouvé,
# mount --bind /dev/ /mnt/dd/dev
# mount -t proc /proc /mnt/dd/proc
# mount -t sysfs /sys /mnt/dd/sys
Le système est prêt à être "chrooté" :
# chroot /mnt/chroot
Il peut parfois être nécessaire, en fonction de votre système ou du LiveCD à partir duquel vous avez démarré d'ajouter /bin/bash à la commande
# chroot /mnt/chroot /bin/bash
Si vous aviez créé une partition séparée pour /boot, il faut la monter (Nous montons cette partitions dans le chroot, sinon grub-mkconfig ne détecte pas que /boot est sur une partition séparée)
# mount /dev/sda1 /boot
Relancer la commande d'installation/update de grub2
# update-grub2
Cette commande réalise la commande suivante
# grub2-mkconfig -o /boot/grub2/grub.cfg