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


24

J'ai été mordu par tant de fois, et aujourd'hui, après les opensslmises à jour de mon serveur, grub s'est plaint que je devrais l'installer à nouveau car les "disques durs précédemment installés n'existent pas".

J'ai une installation de 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

L'exécution de grub-install fonctionne, mais je veux m'assurer qu'après le redémarrage, grub démarrera correctement mes partitions.

Comment puis-je le vérifier?


1
Je n'utilise ni ne connais vraiment le RAID, mais vous installez grub à la racine du RAID et non au MBR d'un lecteur. Si vous exécutez Boot-Repair, vous obtiendrez alors un message comme celui-ci. Aucun chargeur de démarrage n'est installé dans le MBR de / dev / mapper / isw_cdjacjeebj_VOLUME_0. Où le mappeur est votre volume RAID.
oldfred

Réponses:


19

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

Cela 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 en grub-emuutilisant la ligne de commande:

sudo apt-get install grub-emu

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

grub-emu

1
Est-ce un test fiable pour les installations grub2? De plus, la saisie au clavier ne semble pas fonctionner pour le menu qui apparaît; existe-t-il une astuce pour l'activer?
Michael Scheper

Je ne peux pas fermer grub-emu, la seule façon de l'arrêter est pkill -SIGKILL -fe grub-emu, la saisie au clavier ne fonctionne pas non plus
Aquarius Power

1
@MichaelScheper cela corrige l'interactivité serverfault.com/a/847429/163750 :). Fondamentalement, xterm -e grub-emuet gardez l'accent sur xterm et non sur la fenêtre grub-emu!
Aquarius Power

4

Cette réponse utilise file -s /dev/sdapour voir si le MBR a été GRUB installé avec succès. Après cela, vous pouvez certainement revérifier les valeurs /boot/grub/grub.cfgpour vous assurer que les UUID correspondent aux valeurs dans /dev/disk/by-uuidet vous assurer que tout semble correct /boot/grub/device.map. Si ce fichier est incorrect, vous aurez des problèmes avec les spécifications (hdX) dans grub.cfg.

La gestion manuelle de ces fichiers n'est pas nécessaire si vous utilisez update-grubaprès l'installation de grub sur des disques de remplacement. Le plus gros problème de mon expérience n'a pas été de mettre à jour la configuration de GRUB, de ne pas installer GRUB sur tous les lecteurs, ou un partitionnement incorrect qui fait que vous ne pouvez pas installer GRUB sans utiliser --force.


2
Cette réponse n'utilise que file -spour grub1, pour grub 2 il y a une deuxième réponse suggérantdd bs=512 count=1 if=/dev/sda 2>/dev/null | strings|grep GRUB
rubo77

il n'y a pas de "/boot/grub/device.map", mais merci pour ce lien!
Aquarius Power
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.