Grub problems dualbooting with Archlabs

Hello everyone

I have posted on the Archlabs forum, but I am trying a two-pronged attack :smiley:

I currently have Win 10, Manjaro XFCE, EOS-i3 and have just installed Archlabs Openbox on my ASUS laptop after some shenanigans and steep learning curves because my efi partition was full (I ended up having to physically copy its contents to another partition, delete it and then make a bigger one and then copy back the contents since gparted couldn’t sim+ply fill an enlarged efi partition with its contents, no idea why)

I could boot to archlabs but then had to do the following to get Manjaro to boot (I’m really used to having to do this after updating other OS’s, but not exactly sure why I have to do it):

boot up and press ‘c’ at the menu to get to the grub prompt (grub>).

grub> search.file /etc/manjaro-release  root
grub> configfile /boot/grub/grub.cfg

Then, when booted:

sudo grub-install /dev/sda
sudo update-grub

[I think the obove should be posted somewhere predominant as it is invaluable for dualbooting with Manjaro]

However, now everything except Archlabs boots

But I can boot it from the UEFI / BIOS options by selecting it as the first boot option which switches to the Archlabs grub

However, if I access the Archlabs Grub via the UEFI firmware option then only Archlabs and windows boot - not EOS or Manjaro …

Could it be something to do with where efi is mounted?
I noticed for Manjaro it was /boot/efi and for Archlabs it is /boot

I’m stabbing in the dark tho :smile:

When I am booted into EOS I have this:

[root@Endeavour boot]# ls
efi   initramfs-linux-fallback.img  initramfs-linux-lts-fallback.img  intel-ucode.img  vmlinuz-linux-lts
grub  initramfs-linux.img	    initramfs-linux-lts.img	      vmlinuz-linux
[root@Endeavour boot]# ls efi
boot-repair  BOOTSECT.BAK  grub				 initramfs-linux.img		   initramfs-linux-lts.img  vmlinuz-linux
boot-sav     EFI	   initramfs-linux-fallback.img  initramfs-linux-lts-fallback.img  intel-ucode.img	    vmlinuz-linux-lts
[root@Endeavour boot]# ls efi/grub
fonts  grub.cfg  grubenv  locale  themes  x86_64-efi
[root@Endeavour boot]# ls grub
fonts  grub.cfg  grubenv  locale  themes  x86_64-efi

When I am in Manjaro I have:

[manjaro boot]# ls
efi                                 initramfs-5.15-x86_64-fallback.img  linux515-x86_64.kver
grub                                initramfs-5.15-x86_64.img           memtest86+
initramfs-5.10-x86_64-fallback.img  intel-ucode.img                     vmlinuz-5.10-x86_64
initramfs-5.10-x86_64.img           linux510-x86_64.kver                vmlinuz-5.15-x86_64
[manjaro boot]# ls efi
boot-repair   EFI                           initramfs-linux.img               intel-ucode.img
boot-sav      grub                          initramfs-linux-lts-fallback.img  vmlinuz-linux
BOOTSECT.BAK  initramfs-linux-fallback.img  initramfs-linux-lts.img           vmlinuz-linux-lts
[manjaro boot]# ls efi/grub
fonts  grub.cfg  grubenv  locale  themes  x86_64-efi
[manjaro boot]# ls grub
fonts     grub.cfg.example  grub.cfg.pacsave.1  locale  unicode.pf2
grub.cfg  grub.cfg.pacsave  grubenv             themes  x86_64-efi

When I boot into Archlabs (via setting it as 1st in boot sequence in UEFI / BIOS on laptop) I have:

[root@archlabs boot]# ls
boot-repair   grub				initramfs-linux-lts.img
boot-sav      initramfs-linux-fallback.img	intel-ucode.img
BOOTSECT.BAK  initramfs-linux.img		vmlinuz-linux
EFI	      initramfs-linux-lts-fallback.img	vmlinuz-linux-lts
[root@archlabs boot]# ls grub
fonts  grub.cfg  grubenv  locale  themes  x86_64-efi
[root@archlabs boot]#

by opening the two instances of grub.cfg I can see that:

  • The grub folder at /boot/grub is the Manjaro one
  • The grub folder at /boot/efi/grub is the Archlabs one

Does this help to explain anything?

As you can see I dont really know what is going on and the Archwiki Efi page hasnt helped me

Could someone explain what the problem could be please?


Manjaro uses a customized GRUB. Try re-installing Manjaro Grub:

Thanks, but that did not work

When I try to boot Archlabs from the Manjaro grub it cannot find the file /boot/initramfs-linux-lts.img and then goes into kernel panic.

looking at the Manjaro grub.cfg in /boot/grub (I identified it as such as in the file the Manjaro Menu entry is first, wheras in the Archlabs one in /boot/efi/grub , Archlabs is first) I notice that there are lines starting such as the below under the separate Manjaro menu entries:

initrd	/boot/intel-ucode.img /boot/initramfs-5.15-x86_64.img

wheras the entries (in this same Manjaro grub.cfg) under the Archlabs menu entries start with

initrd /intel-ucode.img /boot/initramfs-linux-lts.img

And Archlabs doesnt boot from the Manjaro Grub.

So perhaps since these .img files are in the /boot/efi directory rather than the /boot directory has something to do with it?

Further, the entries (in this same Manjaro grub.cfg) under the EOS menu entries are slightly different again, starting with

initrd /boot/intel-ucode.img /boot/initramfs-linux-lts.img

and EOS does boot from the Manjaro grub.

so … if I edited this Manjaro grub.cfg to replace the lines under the Archlabs menu entries

initrd /intel-ucode.img /boot/initramfs-linux-lts.img


initrd /boot/intel-ucode.img /boot/initramfs-linux-lts.img

would that work?

But I am terrified of doing that and probably it would be permanent after ugrades of Archlabs (&/or other OS’s)?

The entries under the Archlabs menu entries in the Archlabs gub.cfg file start with

initrd	/intel-ucode.img /initramfs-linux-lts.img

As you can see, I have no idea how this works, so am just using logical deduction - well it seems logical to me :smiley:

No - it doesnt, of course - DOH!

But neither does replacing it with

initrd /boot/intel-ucode.img /boot/efi/initramfs-linux-lts.img

Next I tried:

cp /boot/efi/initramfs-linux-lts.img /boot/initramfs-linux-lts.img

But no luck

If Manjaro mounts my efi partition (/dev/sda1) at /boot/efi how do the other files and folders (including the Archlabs grub.cfg) get into /boot?

Obviously I do not understand how this works :smile: