Dual manjaro endeavouros boot grub2 error

Due to some strange behavior in Beyond All Reason, zooming just jumping to extents I installed EndeavourOS alongside the current Manjaro install. My sons machines with EndeavourOS does not have this issue, not hardware related, Beyond all reason from EndeavourOS liveusb works perfectly, so this is not hardware.

I have GRUB_DISABLE_OS_PROBER=false

sudo grub-mkconfig -o /boot/grub/grub.cfg finds EndeavourOS

Found EndeavourOS Linux (rolling) on /dev/nvme0n1p5 

But when selecting it in the grub menu I get the no such device error

error: no such device: 5c1f27fe-49fd-45a6-8748-2644a4646e03
error: file `/boot/vmlinuz-linux` not found
error: you need to load the kernel first

UUID info:

lrwxrwxrwx 1 root root 15 Nov  1 17:55 306D-E28F -> ../../nvme0n1p1
lrwxrwxrwx 1 root root  9 Nov  1 17:55 43e47bef000004f0 -> ../../sr0
lrwxrwxrwx 1 root root 15 Nov  1 17:55 4d024ae7-d06c-4dfd-ad89-13b1c85c16cc -> ../../nvme0n1p3
lrwxrwxrwx 1 root root 15 Nov  1 17:55 5c1f27fe-49fd-45a6-8748-2644a4646e03 -> ../../nvme0n1p5
lrwxrwxrwx 1 root root 15 Nov  1 17:55 acdc1d50-a01d-4374-bb9c-241a86956b0e -> ../../nvme1n1p1
lrwxrwxrwx 1 root root 15 Nov  1 17:55 CF64-7D8D -> ../../nvme0n1p4
lrwxrwxrwx 1 root root 15 Nov  1 17:55 e6e1bd28-d3db-4537-b959-ac48e13197f2 -> ../../nvme0n1p2

Relevant grub menu entry:

menuentry ‘EndeavourOS Linux (rolling) (on /dev/nvme0n1p5)’ --class endeavouros --class gnu-linux --class gnu --class os $menuentry_id_option ‘osprober-gnulinux-simple-5c1f27fe-49fd-45a6-8748-2644a4646e03’ {
savedefaultinsmod
part_gpt
insmod ext2
search --no-floppy --fs-uuid --set=root 5c1f27fe-49fd-45a6-8748-2644a4646e03
linux /boot/vmlinuz-linux root=UUID=5c1f27fe-49fd-45a6-8748-2644a4646e03 rw nowatchdog nvme_load=YES nvidia_drm.modeset=1 loglevel=3
initrd /boot/initramfs-linux.img
}

I see the insmod entry is using ext2, I know the partition is formatted as ext4, but if the file system type was a problem I would expect a different error.

Boot into Manjaro and run sudo update-grub. You’ll need to do that anytime there’s a kernel update in your EndeavourOS install.

1 Like

I did that, same error. I am posting this from within the manjaro installation.

Perhaps better would be… :backhand_index_pointing_down:

sudo install-grub && sudo update-grub

… just to make sure that Manjaro is in control of the EFI partition. :wink:

My advice is, do not try to mix 2 grubs. They are not compatible between EOS and manjaro. The best will be to use something 3rd, like Refind.

2 Likes

I guess your error is in your Endeavour OS installation. Try to Arch-chroot into it via Live USB Boot and then run

# pacman -Syu linux

to update your kernel. Afterwards, boot into Manjaro again and run

$ sudo update-grub

to update your grub.cfg. Now, reboot and try again, if your Endeavour OS entry in the grub menu allows to normally boot into Endeavour OS.

2 Likes

@bmeagke

The following assumes all OS are booting as UEFI.

As @Teo suggests;

Using refind is a more manageable solution to multi-booting with several Linux flavours in the mix. The idea is to use the refind boot manager as your initial boot loader, which in turn will effectively chainload every UEFI boot loader in your system, including that of Windows or BSD, if you have them.

This allows one to leave each GRUB untouched and managed by it’s respective OS – this means less maintenance (no juggling settings just to enable a successful boot) – plus, the added convenience of being able to bypass any installed GRUB and boot the respective kernel stub directly.

Setting up refind is quite easy;

1. Install the refind package so that it’s available to Manjaro.

sudo pacman -S refind

2. Use refind’s own tool to install it to the $ESP.

sudo refind-install

After a reboot, refind should be your default UEFI boot manager and allow you to boot each Linux OS either via GRUB or directly via the kernel stub.

In the rare case that it’s doesn’t automatically assume the role of default boot, you will need to boot to your UEFI BIOS and select “rEFInd UEFI Boot Manager” manually as the first in boot order.

refind is configured from one file – the defaults are quite sane – in fact, it’s likely all you might want to change is the timeout and the theme.

1 Like