Lidando estritamente com o problema do hwmatch
, procure em /etc/grub.d/10_linux
e você encontrará algo assim próximo ao final (9ª linha abaixo neste display):
# Use ELILO's generic "efifb" when it's known to be available.
# FIXME: We need an interface to select vesafb in case efifb can't be used.
if [ "x$GRUB_GFXPAYLOAD_LINUX" != x ] || [ "$gfxpayload_dynamic" = 0 ]; then
echo "set linux_gfx_mode=$GRUB_GFXPAYLOAD_LINUX"
else
cat << EOF
if [ "${recordfail}" != 1 ]; then
if [ -e ${prefix}/gfxblacklist.txt ]; then
if hwmatch ${prefix}/gfxblacklist.txt 3; then
if [ ${match} = 0 ]; then
set linux_gfx_mode=keep
else
set linux_gfx_mode=text
fi
else
set linux_gfx_mode=text
fi
else
set linux_gfx_mode=keep
fi
else
set linux_gfx_mode=text
fi
EOF
fi
Por alguma razão, sua instalação do grub está incompleta e faltando hwmatch
module. Você deve vê-lo entre muitos outros arquivos quando usa ll /boot/grub/i386-pc
:
-rw-r--r-- 1 root root 47292 Dec 5 07:13 hwmatch.mod
-rw-r--r-- 1 root root 2928 Dec 5 07:13 iorw.mod
-rw-r--r-- 1 root root 8656 Dec 5 07:13 iso9660.mod
-rw-r--r-- 1 root root 6168 Dec 5 07:13 jfs.mod
-rw-r--r-- 1 root root 6280 Dec 5 07:13 jpeg.mod
-rw-r--r-- 1 root root 5112 Dec 5 07:13 keylayouts.mod
-rw-r--r-- 1 root root 2044 Dec 5 07:13 keystatus.mod
-rw-r--r-- 1 root root 6608 Dec 5 07:13 ldm.mod
-rw-r--r-- 1 root root 29816 Dec 5 07:13 legacycfg.mod
-rw-r--r-- 1 root root 14536 Dec 5 07:13 legacy_password_test.mod
-rw-r--r-- 1 root root 8048 Dec 5 07:13 linux16.mod
-rw-r--r-- 1 root root 13184 Dec 5 07:13 linux.mod
-rw-r--r-- 1 root root 100 Dec 5 07:13 load.cfg
-rw-r--r-- 1 root root 5924 Dec 5 07:13 loadenv.mod
-rw-r--r-- 1 root root 3056 Dec 5 07:13 loopback.mod
-rw-r--r-- 1 root root 4872 Dec 5 07:13 lsacpi.mod
-rw-r--r-- 1 root root 2352 Dec 5 07:13 lsapm.mod
-rw-r--r-- 1 root root 1884 Dec 5 07:13 lsmmap.mod
-rw-r--r-- 1 root root 4136 Dec 5 07:13 ls.mod
-rw-r--r-- 1 root root 4928 Dec 5 07:13 lspci.mod
-rw-r--r-- 1 root root 6724 Dec 5 07:13 luks.mod
-rw-r--r-- 1 root root 6776 Dec 5 07:13 lvm.mod
De acordo com este relatório de erros ( bugs.launchpad.net - Upgrade do Ubuntu do Lucid para Resultados precisos na configuração do grub quebrada ) a maneira mais fácil de obter todos os módulos do grub é reinstalá-lo.
Você deve executar
sudo dpkg-reconfigure grub-pc
e instruí-lo para instale o carregador de boot em algum lugar, provavelmente / dev / vda.
Acima está uma citação direta do relatório de erros. Como um comentário aqui aponta e olha seu link, isso deve ser usado:
sudo dpkg-reconfigure grub-efi-amd64
No entanto, olhando para este post ( superuser.com - Como reinstalar o grub2 efi ) você deve primeiro inicializar com um USB / DVD ao vivo e usar:
sudo mount /dev/sda2 /mnt #sda2 is the root partition
sudo mount /dev/sda1 /mnt/boot/efi #sda1 is the efi partition
for i in /dev /dev/pts /proc /sys; do sudo mount -B $i /mnt$i; done
sudo cp /etc/resolv.conf /mnt/etc/ #makes the network available after chrooting
modprobe efivars # make sure this is loaded
sudo chroot /mnt
O primeiro passo é confirmar que o arquivo hwmatch
está realmente ausente. Em caso afirmativo, o método mais fácil é simplesmente copiá-lo de:
/usr/lib/grub/i386-pc/hwmatch.mod
no diretório:
/boot/efi/efi/grub
Este nome de diretório vem de ( link ) onde eles dizem que é "principalmente" o nome do diretório. Por favor confirme para a sua instalação.
Os métodos mais complicados de dpkg-reconfigure
devem ser abordados com extrema cautela e somente após backups apropriados.