Table des matières

GRUB 2 : commandes

Préalable

Les commandes de ce tuto sont à faire en tant que root sauf indication contraire.

grub-install

Installation de grub2

grub-install --recheck "(hd0)"
update-grub
Nota :

Si votre système comporte un lecteur de disquette, et que celui-ci est listé dans le fichier /boot/grub/device.map, il vaut mieux ajouter l'option :

 "--no-floppy”

à la commande d'installation pour éviter que le lecteur de disquette ne se retrouve positionné comme cible pour la racine (/).
On peut utiliser la notation /dev/sda (par exemple) au lieu de (hd0).

grub-mkconfig

La commande grub-mkconfig met à jour grub22).

C'est la commande dont l'utilisation est la plus courante.

Cette commande va :

  1. sourcer tous les scripts dans /etc/grub.d,
  2. eux même renvoyant les variables de /etc/default/grub,
  3. et générer ou mettre à jour le fichier grub.cfg.
Il faut exécuter cette commande après chaque modification d'un script ou d'une variable de configuration de grub2.

Syntaxe :

La syntaxe est la suivante:

grub-mkconfig -o /boot/grub/grub.cfg
ATTENTION !
Bien ajouter l'option : -o3)
  • Sans cette option : Le résultat est écrit uniquement sur stdout4) et sera effacé dès la prochaine mise à jour de grub2.
  • Avec cette option : Le résultat est bien écrit dans le fichier grub.cfg. Il reste intact jusquà une prochaine modification volontaire de votre part.
Nota :

grub-mkconfig est également invoqué automatiquement à l'installation d'un nouveau noyau.

grub-setup

Sert à créer une image de démarrage qui se lancera depuis la partition indiquée (de la forme (hd0,1).

Parmi les options, il y a :

  1. -root-device= /une partition root/
  2. -directory= /un autre répertoire/ que : /boot/grub pour implanter l'image.
  3. -device-map= /un fichier device.map/ différent de celui du système. Par exemple pour démarrer depuis un système sur clé usb.

grub-mkdevicemap

Cette commande ne s'utilise pas en usage normal.

Cette commande crée un fichier

 /boot/grub/device.map

À utiliser après :

grub-mkrescue

Sert à créer un disque de démarrage qui peut servir de disque de secours.
Par défaut c'est un cdrom qui est proposé à être gravé.

Exemple floppy :

grub-mkrescue --image-type=floppy --emulation=floppy --modules=lvm test.img

L'image résultante pourra être copiée sur une disquette.

grub-probe

Les options spécifiques au système de fichier devraient être correctement détectées par grub2 grâce à la commande grub-probe.

Exemple UUID :

Taper :

grub-probe -d /dev/sda1 --target=fs_uuid

Puis en terminal user :

ls -l /dev/disk/by-uuid/ | grep sda1

Et comparer les résultats pour voir si c'est le bon UUID qui est détecté.

Exemple raid :

Contrôlons que grub2 détecte correctement notre volume raid /dev/md0, sur lequel est installé la racine du système, et chargera les modules nécessaires :

grub-probe -d /dev/md0 -tabstraction

Ici on utilise la forme courte de –target5) pour vérifier la reconnaissance de la couche d'abstraction du système de fichier (le raid).
La réponse devrait être :

 raid mdraid

Ce qui, dans ce cas, correspond aux modules à inclure dans le core.img à charger par grub2.
Les paramètres possibles sont :

On peut indiquer à la commande grub-probe :

Exemple device.map :

  1. un fichier device.map spécifique à un chemin vers les fichiers de configuration. Par défaut c'est :
    /boot/grub/device.map
  2. ou bien, à la place d'utiliser l'option -d 6) / Un chemin vers un volume /.

Exemple tabstraction :

grub-probe /boot/grub/ -tabstraction

Nota :

Pour une liste complète des modules disponibles :

  1. vous pouvez regarder dans
    /boot/grub
  2. ou bien taper en terminal user :
    ls -l /boot/grub/ | grep .mod | less
1)
N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !
2)
La commande update-grub fonctionne toujours avec grub2
3)
–output
5)
qui est -t
6)
ou–device)