Today I ran updates, which had some sort of issue which caused my laptop to freeze. I restarted my laptop, and I got the usual Grub menu, except that it was missing the Manjaro entry (I have dual-boot Manjaro/Windows), so I saw Windows and Memtest.
Trying to fix the issue, I attempted to repair the Grub entries. I have two drives (an SSD and a HDD), and I think I misunderstood something, but I somehow managed to break the Grub menu. So at that point, when I booted, I simply saw a Grub terminal (not the Grub rescue).
With help from the Wiki and some forum posts I managed to fix Grub again, but now my issue is that it isn’t detecting Manjaro or Windows.
Here’s my drives (sda is for /home & windows, sdb is / , and sdc is my flash drive) :
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
loop0 7:0 0 44.8M 1 loop
loop1 7:1 0 225.3M 1 loop
loop2 7:2 0 770M 1 loop
loop3 7:3 0 372.7M 1 loop
sda 8:0 0 931.5G 0 disk
|-sda1 8:1 0 831.5G 0 part /home
|-sda2 8:2 0 450M 0 part
|-sda3 8:3 0 100M 0 part
|-sda4 8:4 0 16M 0 part
|-sda5 8:5 0 98.9G 0 part
`-sda6 8:6 0 523M 0 part
sdb 8:16 0 119.2G 0 disk
|-sdb1 8:17 0 1G 0 part /boot/efi
|-sdb2 8:18 0 110.2G 0 part /
`-sdb3 8:19 0 8G 0 part
sdc 8:32 1 14.2G 0 disk
|-sdc1 8:33 1 14.2G 0 part
`-sdc4 8:36 1 1.4G 0 part
Here’s an update-grub:
[manjaro /]# update-grub
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
I think my boot directory might also be relevant?
[manjaro boot]# ls
efi grub intel-ucode.img linux419-x86_64.kver linux54-x86_64.kver memtest86+
So my question now is how do I get update-grub to find Manjaro / Windows ?
Ah yes, the Impatient User™ issue. It’s a known problem.
Pretty much; you don’t have any kernels installed ─ they are always deleted at the start of the update process and the new kernels are only added much later in the process.
Boot up from the USB stick in live mode and open up a terminal window. In said window, type the command…
su -
… and enter the live medium’s root password ─ “manjaro”. Next, issue the following command…
manjaro-chroot -a
If you are presented with a menu/choice, press 1. Next, issue the following commands…
(4/4) Updating Grub-Bootmenu
Generating grub configuration file ...
Found theme: /usr/share/grub/themes/manjaro/theme.txt
Found linux image: /boot/vmlinuz-5.4-x86_64
Found initrd image: /boot/intel-ucode.img /boot/initramfs-5.4-x86_64.img
Found initrd fallback image: /boot/initramfs-5.4-x86_64-fallback.img
Found linux image: /boot/vmlinuz-4.19-x86_64
Found initrd image: /boot/intel-ucode.img /boot/initramfs-4.19-x86_64.img
Found initrd fallback image: /boot/initramfs-4.19-x86_64-fallback.img
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