Avviso GRUB "Alcuni moduli potrebbero non essere presenti nell'immagine principale"


12

un HDD si è bloccato dal mio RAID e ho aggiunto un nuovo HDD.
Ora volevo installare GRUB sul nuovo HDD: con grub-install /dev/sdb. Ricevo questi avvisi:

Installing for i386-pc platform.
grub-install: warning: Couldn't find physical volume `(null)'. Some modules may be missing from core image..
grub-install: warning: Couldn't find physical volume `(null)'. Some modules may be missing from core image..
Installation finished. No error reported.

Su update-grub2ottengo:

Generating grub configuration file ...
/usr/sbin/grub-probe: warning: Couldn't find physical volume `(null)'. Some modules may be missing from core image..
/usr/sbin/grub-probe: warning: Couldn't find physical volume `(null)'. Some modules may be missing from core image..
/usr/sbin/grub-probe: warning: Couldn't find physical volume `(null)'. Some modules may be missing from core image..
/usr/sbin/grub-probe: warning: Couldn't find physical volume `(null)'. Some modules may be missing from core image..
Found linux image: /boot/vmlinuz-3.13.0-32-generic
Found initrd image: /boot/initrd.img-3.13.0-32-generic
/usr/sbin/grub-probe: warning: Couldn't find physical volume `(null)'. Some modules may be missing from core image..
/usr/sbin/grub-probe: warning: Couldn't find physical volume `(null)'. Some modules may be missing from core image..
/usr/sbin/grub-probe: warning: Couldn't find physical volume `(null)'. Some modules may be missing from core image..
Found linux image: /boot/vmlinuz-3.13.0-30-generic
Found initrd image: /boot/initrd.img-3.13.0-30-generic
/usr/sbin/grub-probe: warning: Couldn't find physical volume `(null)'. Some modules may be missing from core image..
/usr/sbin/grub-probe: warning: Couldn't find physical volume `(null)'. Some modules may be missing from core image..
/usr/sbin/grub-probe: warning: Couldn't find physical volume `(null)'. Some modules may be missing from core image..
/usr/sbin/grub-probe: warning: Couldn't find physical volume `(null)'. Some modules may be missing from core image..
Found memtest86+ image: /memtest86+.elf
Found memtest86+ image: /memtest86+.bin
done

Uscita di cat /proc/mdstat

Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md3 : active raid1 sdb4[3] sda4[2]
      1847608639 blocks super 1.2 [2/2] [UU]

md1 : active raid1 sdb2[3] sda2[2]
      524276 blocks super 1.2 [2/2] [UU]

md2 : active raid1 sdb3[3] sda3[2]
      1073740664 blocks super 1.2 [2/2] [UU]

md0 : active raid1 sdb1[3] sda1[2]
      8387572 blocks super 1.2 [2/2] [UU]

unused devices: none

Ho reinstallato entrambi i kernel con, apt-get install --reinstallma questi errori / avvisi persistono.
Qualcuno sa come posso liberarmene?

Aggiornare:

Dato che era solo un avvertimento, non un errore (e GRUB deve essere ancora su sda) ho riavviato il sistema. Il sistema si è avviato e gli avvisi sono spariti. Non so cosa abbia scatenato gli avvisi.


Sembra che ti manchi qualcosa. Quale livello RAID usi? Dopo aver aggiunto il dispositivo al RAID, non dovresti lavorare direttamente con esso. Si prega di pubblicare il risultato di cat /proc/mdstatqui.
maniaque,

aggiunto output al mio post. Il livello RAID è 1. la risincronizzazione è già stata eseguita.
pythonimus,

Quindi, tutti i tuoi dischi e dispositivi md sono attivi. Non dovresti provare a installare grub direttamente: mdadm sincronizza automaticamente i contenuti del disco rigido. Se desideri installare grub sul dispositivo md, quindi usa grub-install /dev/md1, ma sei sicuro di aver bisogno di grub sul dispositivo md? Ti avvia dal dispositivo md?
maniaque,

1
L'ho detto come indicato qui Step12: Reinstalla GRUB 2 ([...] non specificare un numero di partizione) [...] Se le partizioni di sistema sono su un software RAID installa GRUB 2 su tutti i dischi nel RAID. [...] O qui
pythonimus il

Risposte:


16

Ho avuto la stessa cosa oggi. Si scopre che è causato dal grub-probetentativo di accedere alle partizioni attraverso /dev/sda, che non è coerente con la cache /dev/sda1(ed sda2eccetera).

Puoi ripararlo usando

blockdev --flushbufs /dev/sda1

(ripetere per altre partizioni se necessario).


questo è stato per me, è stato sufficiente eseguirlo sulla partizione / boot
lifeofguenter

15

Stavo avendo lo stesso problema durante la ricostruzione di un array SW-RAID degradato e ho inciampato su questo su un altro sito Web:

La fonte grub-2.00 dove sorge l'avvertimento è in ./grub-core/disk/diskfilter.c e ha questo commento:

/* TRANSLATORS: This message kicks in during the detection of
   which modules needs to be included in core image. This happens
   in the case of degraded RAID and means that autodetection may
   fail to include some of modules. It's an installation time
   message, not runtime message.  */

(Tratto da https://bbs.archlinux.org/viewtopic.php?id=160785 )

In altre parole, questo strano errore si verifica quando si hanno degradati array RAID e dovrebbe scomparire (come nel caso dell'utente) una volta che gli array funzionano correttamente.

Quando finalmente i miei array RAID hanno terminato la sincronizzazione, l'errore è scomparso sia su update-grub che su grub-install.


1
Ho appena cambiato un disco rigido e ricostruito il raid. Quando ho eseguito grub-install durante la ricostruzione, ho ricevuto questi avvisi. Posso confermare che quando la ricostruzione è terminata e ho eseguito di nuovo grub-install, questi avvisi sono scomparsi!
Vangelis Tasoulas,

2
Non è svanito per me per 3 giorni. La ricostruzione è stata eseguita la prima volta che ho provato a installare grub.
pythonimus,

3

Dato che era solo un avvertimento, non un errore (e GRUB deve essere ancora su sda) ho riavviato il sistema.
Il sistema si è avviato e gli avvisi sono spariti.
Non so cosa abbia scatenato gli avvisi.


2

Usando grub2-install durante la migrazione da un singolo disco a raid1, ho avuto sintomi molto simili, essendo più linee di avvertenza come segue. Non ero disposto a riavviare solo per "testare" se questo fosse o meno un problema fatale. Nel mio caso volevo mettere / avviare un RAID1 a 4 dischi mentre le altre partizioni sarebbero state separate da RAID1 a 2 dischi:

grub2-install: warning: Couldn't find physical volume ‘(null)’. Some modules may be missing from core image..

grub2-mkconfig ha anche mostrato più errori nella configurazione risultante:

/usr/sbin/grub2-probe: warning: Couldn't find physical volume `(null)'. Some modules may be missing from core image..

Ho riscontrato che il problema era che avevo creato l'array RAID senza specificare la versione dei metadati. Le versioni precedenti di grub richiedono --metadata = 0.90 quando si crea l'array. Dopo aver ripetuto questo bit sulla partizione / boot, grub2-install ha funzionato al 100%. Ricorda che la partizione originale con / boot era / dev / sda1, quindi perché i comandi seguenti hanno 3 dischi + 1 mancanti invece di tutti e 4 i dischi.

Prima:

$ mdadm --create --level 1 /dev/md2 --raid-devices=4 /dev/sd{b,c,d}1 missing

Dopo:

$ mdadm --create --level 1 /dev/md2 --raid-devices=4 --metadata=0.90 /dev/sd{b,c,d}1 missing

Relativamente alla mappa del dispositivo, grub aveva il comando "grub-mkdevicemap". Questo è stato sostituito con il flag "--recheck" in grub2-install:

Vecchio:

$ grub-mkdevicemap -n
$ grub-install /dev/sda

Nuovo:

$ grub2-install --recheck /dev/sda

Ricordare inoltre, se si utilizzano più dischi, di ripetere il comando su tutti i dischi. Questo impedisce la situazione in cui hai installato grub su un solo disco ma quel disco muore su di te (il che si tradurrebbe in un sistema non avviabile):

$ for disk in sd{a,b,c,d} ; do grub2-install --recheck /dev/$disk ; done
Installing for i386-pc platform.
Installation finished. No error reported.
Installing for i386-pc platform.
Installation finished. No error reported.
Installing for i386-pc platform.
Installation finished. No error reported.
Installing for i386-pc platform.
Installation finished. No error reported.

1

Ciò accade perché la mappa dei dispositivi grub (/boot/grub/device.map) non è più corretta, dopo aver scambiato un'unità dal raid. Corri semplicemente

grub-mkdevicemap -n

per l'aggiornamento della mappa del dispositivo e

grub-install

per i dispositivi corrispondenti.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.