GRUB “Alguns módulos podem estar faltando no núcleo da imagem” aviso

9

um HDD caiu do meu RAID e eu adicionei um novo HDD.
Agora eu queria instalar o GRUB no novo disco rígido: com grub-install /dev/sdb . Eu recebo estes avisos:

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.

Em update-grub2 , obtenho:

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

Saída de 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

Eu reinstalei os dois kernels com apt-get install --reinstall , mas esses erros / avisos persistem.
Alguém sabe como posso me livrar deles?

Atualização:

Como era apenas um aviso, não um erro (e o GRUB ainda precisa estar em sda), reiniciei o sistema. O sistema inicializou e os avisos desapareceram. Eu não sei o que desencadeou os avisos.

    
por pythonimus 03.08.2014 / 13:26

5 respostas

3

Como era apenas um aviso, não um erro (e o GRUB ainda precisa estar em sda), reiniciei o sistema.
O sistema inicializou e os avisos desapareceram.
Eu não sei o que desencadeou os avisos.

    
por 09.08.2014 / 13:38
11

Eu estava tendo o mesmo problema ao recriar uma matriz SW-RAID degradada e tropeçar em outro site:

A fonte grub-2.00 onde o aviso surge está em ./grub-core/disk/diskfilter.c e tem este comentário:

/* 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.  */

(extraído de link )

Em outras palavras, esse erro estranho ocorre quando você degradou os arrays RAID e deve desaparecer (o que aconteceu no seu caso) quando os arrays estiverem funcionando corretamente.

Quando meus arrays RAID finalmente terminaram a sincronização, o erro desapareceu no update-grub e no grub-install.

    
por 07.09.2014 / 16:43
11

Tive a mesma coisa hoje. Acontece que isso é causado por grub-probe tentando acessar partições através de /dev/sda , que não é coerente com /dev/sda1 (e sda2 etcetera).

Você pode corrigi-lo usando

blockdev --flushbufs /dev/sda1

(repita para outras partições conforme necessário).

    
por 05.07.2016 / 17:03
2

Usando o grub2-install durante a migração de um único disco para o raid1, tive sintomas muito semelhantes, sendo várias linhas de aviso como segue. Eu não estava disposto a reiniciar apenas para "testar" ou não este foi um problema fatal no entanto. No meu caso eu queria colocar / boot em um RAID1 de 4 discos enquanto as outras partições seriam separadas de 2 discos RAID1s:

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

O grub2-mkconfig também mostrou vários erros na configuração resultante:

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

O problema é que eu criei o array RAID sem especificar a versão de metadados. Versões mais antigas do grub requerem --metadata = 0.90 ao criar a matriz. Depois de refazer este bit na partição / boot, o grub2-install funcionou 100%. Tenha em mente que a partição original com / boot era / dev / sda1, daí porque os comandos abaixo têm 3 discos + 1 em falta em vez de todos os 4 discos.

Antes:

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

Depois:

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

Relacionado ao mapa de dispositivos, o grub tinha o comando "grub-mkdevicemap". Isto foi substituído pelo sinalizador "--recheck" no grub2-install:

Antigo:

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

Novo:

$ grub2-install --recheck /dev/sda

Lembre-se também, se estiver usando vários discos, para repetir o comando em todos os discos. Isso evita a situação em que você tem o grub instalado em apenas um disco, mas esse disco morre em você (o que resultaria em um sistema não inicializável):

$ 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.
    
por 13.03.2015 / 13:36
1

Isso acontece porque o mapa do dispositivo do grub (/boot/grub/device.map) não está mais correto, depois de trocar uma unidade do ataque. Basta executar

grub-mkdevicemap -n

para atualizar o mapa do dispositivo e

grub-install

para os dispositivos correspondentes.

    
por 20.12.2014 / 23:15