(I hope the category is right)
Hello to everyone, I have problems restoring GRUB after a Windows update, and now I can’t boot into Manjaro but only in Windows choosing its partition from the boot menu in UEFI.
I tried following the guide on the Manjaro Wiki using a Live USB about restoring GRUB named " GRUB/Restore the GRUB Bootloader" (i can’t include links since I just created this account because I lost my old one).
But when i run grub-mkconfig -o /boot/grub/grub.cfg
it doesn’t find Manjaro and Windows. Now I will write everything I did so it can be more undestandable.
My ssd partitions, using lsblk
, is
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
loop0 7:0 0 76,9M 1 loop /run/miso/sfs/livefs
loop1 7:1 0 219,9M 1 loop /run/miso/sfs/mhwdfs
loop2 7:2 0 1G 1 loop /run/miso/sfs/desktopfs
loop3 7:3 0 630,2M 1 loop /run/miso/sfs/rootfs
sda 8:0 0 1,8T 0 disk
└─sda1 8:1 0 1,8T 0 part
sdb 8:16 0 476,9G 0 disk
├─sdb1 8:17 0 100M 0 part
├─sdb2 8:18 0 128M 0 part
├─sdb3 8:19 0 16M 0 part
├─sdb4 8:20 0 354,8G 0 part
├─sdb5 8:21 0 552M 0 part
├─sdb6 8:22 0 120,8G 0 part
└─sdb7 8:23 0 499M 0 part
sdc 8:32 1 14,8G 0 disk /run/miso/bootmnt
├─sdc1 8:33 1 2G 0 part
└─sdc2 8:34 1 4M 0 part
So I have the EFI partition in sdb1 and the Linux system is in sdb6. The others are the Windows System and other Windows reserved partitions.
I mounted the Linux partition and the EFI partition in /mnt and /mnt/boot/efi like the guide says.
I then used manjaro-chroot /mnt /bin/bash
to chroot into the system.
I reinstalled Grub using pacman -S grub
and also updated every application installed.
After this, i installed grub using
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=manjaro --recheck
and it says “Installation finished. No error reported”.
I finally run grub-mkconfig -o /boot/grub/grub.cfg
and it gives me this output:
Generating grub configuration file …
Found theme: /usr/share/grub/themes/manjaro/theme.txt
grub-probe: error: cannot find a GRUB drive for /dev/sdc1. Check your device.map.
grub-probe: error: cannot find a GRUB drive for /dev/sdc1. Check your device.map.
Adding boot menu entry for UEFI Firmware Settings …
Found memtest86+ image: /boot/memtest86+/memtest.bin
done
and rebooting the PC, GRUB will start but there are no OS in the list.
As you can see, it only finds the Manjaro theme and “memtest”, but no Manjaro or Windows 10. I think it’s searching into the USB stick and not into the SSD, because in the output it says “cannot find GRUB drive for /dev/sdc1”, and sdc is the USB stick.
Also running update-grub
it gives me the same output.
After searching on the web, I saw that someone says that I need to run os-prober
. And I saw that running it in the chroot, it gives me this output:
grub-probe: error: cannot find a GRUB drive for /dev/sdc1. Check your device.map.
grub-probe: error: cannot find a GRUB drive for /dev/sdc1. Check your device.map.
But running it after exiting chroot, it gives me this output:
/dev/sdb1@/EFI/Microsoft/Boot/bootmgfw.efi:Windows Boot Manager:Windows:efi
/dev/sdb6:Manjaro Linux (20.2):ManjaroLinux:linux
grub-probe: errore: impossibile trovare un’unità GRUB per /dev/sdc1, controllare device.map.
grub-probe: errore: impossibile trovare un’unità GRUB per /dev/sdc1, controllare device.map.
And here it is finding both Manjaro and Windows.
Anyone has some ideas about how to make grub put this into the boot menu list?