web-dev-qa-db-fra.com

Est-il possible de vérifier l'installation de grub sans redémarrer?

Cela m’a tellement mordu, et aujourd’hui, après les mises à jour de openssl sur mon serveur, grub s’est plaint de la devoir l’installer à nouveau car "les disques durs précédemment installés n’existent pas".

J'ai une installation RAID 1 avec la configuration suivante (selon bootinfoscript):

> ============================= Boot Info Summary: ===============================
> 
>  => Grub2 (v1.99) is installed in the MBR of /dev/sda and looks at
> sector 1 of the same hard drive for core.img. core.img is at this location and looks
>     for (mduuid/d2a04f98760e2b3cc23ba87845667605)/grub on this drive.  
>
> => Grub2 (v1.99) is installed in the MBR of /dev/sdb and looks at sector 1 of
>     the same hard drive for core.img. core.img is at this location and looks
>     for (mduuid/d2a04f98760e2b3cc23ba87845667605)/grub on this drive.

My mount points are:

> /dev/md2 on / type ext4 (rw) 

> /dev/md1 on /boot type ext3 (rw)

And mduuid seems to match the ones bootinfoscript mentions:

> ls -l /dev/disk/by-id/md-uuid-*
>
> lrwxrwxrwx 1 root root 9 Mar 19 11:37 /dev/disk/by-id/md-uuid-38048286:e3004e47:510ca3e1:2bae3f2e -> ../../md2 
>
> lrwxrwxrwx 1 root root 9 Mar 19 11:37 /dev/disk/by-id/md-uuid-d2a04f98:760e2b3c:c23ba878:45667605 -> ../../md1 
>
> lrwxrwxrwx 1 root root 9 Mar 19 11:37 /dev/disk/by-id/md-uuid-e099b695:0143bb58:e4ef7645:0f22ce0b -> ../../md0

Exécuter grub-install fonctionne, mais je veux être sûr qu'après le redémarrage, grub démarrera correctement mes partitions.

Comment puis-je le vérifier?

24
mobius

Je ne pense pas que vous puissiez vérifier si cela fonctionnera ou non avant d'essayer de le faire, mais vous pourrez obtenir un aperçu de votre GRUB instantanément afin que vous puissiez être sûr que votre nouvelle configuration est chargée correctement. dans GRUB.

Ceci pourrait être réalisé en utilisant un outil appelé grub-emu.

man grub-emu

NAME
       grub-emu - GRUB emulator

SYNOPSIS
       grub-emu [OPTION]...

DESCRIPTION
       GRUB emulator.

       -r, --root-device=DEV
              use DEV as the root device [default=guessed]

       -m, --device-map=FILE
              use FILE as the device map [default=/boot/grub/device.map]

       -d, --directory=DIR
              use GRUB files in the directory DIR [default=/boot/grub]

       -v, --verbose
              print verbose messages

Installez facilement grub-emu à l'aide de la ligne de commande:

Sudo apt-get install grub-emu

Pour l'exécuter, utilisez simplement terminal pour exécuter cette commande:

grub-emu
19
Maythux

Cette réponse utilise file -s /dev/sda pour voir si le GRUB MBR a été installé avec succès. Après cela, vous pouvez certainement revérifier les valeurs dans /boot/grub/grub.cfg pour vous assurer que les UUID correspondent aux valeurs de /dev/disk/by-uuid et vous assurer que tout se présente bien dans /boot/grub/device.map. Si ce fichier est incorrect, vous rencontrerez des problèmes avec les spécifications (hdX) dans grub.cfg.

La gestion manuelle de ces fichiers n’est toutefois pas nécessaire si vous utilisez update-grub après avoir installé grub sur des lecteurs de remplacement. Les plus gros pièges de mon expérience ont été de ne pas mettre à jour la configuration GRUB, ni d'installer GRUB sur tous les lecteurs, ni de créer un partitionnement incorrect rendant impossible l'installation de GRUB sans utiliser --force.

4
jkt123