How to change from using systemdboot to Grub

Can you share the output of lsblk -f

NAME        FSTYPE FSVER LABEL UUID FSAVAIL FSUSE% MOUNTPOINTS
loop0                                              
sda                                                
├─sda1                                             
├─sda2                                             
├─sda3                                             
└─sda4                                             
sdb                                                
├─sdb1                                             
└─sdb2                                             
nvme0n1                                            
├─nvme0n1p1                            564M    43% /efi
└─nvme0n1p2                          356.7G    75% /

Slightly concerned the last one just reads /, since that’s where endeavour is.

The nvme partitions is where endeavouros installed and the /efi partition that was created during installation. What’s installed on sda and sdb?

Not sure which is what, but my system has the nvme with my endeavour on it, and an ssd with my windows on it, and that’s it. I’m guessing that’s also finding my usb I’m live booting off of to chroot in.

I guess that would be your live usb. Nothing to worry about there.

If you want Grub to probe for existence of other bootable partitions on your drive(s) and add them to its boot menu, you would need to set GRUB_DISABLE_OS_PROBER to false in /etc/default/grub in the system which controls the bootloader.

Ah, well damn. I still have no idea what could be wrong about this setup then. All I can think of is something to do with why dracut.conf.d would be empty, or that I filled it with something incorrect.

I’m starting to think bricking my system was not worth swapping to grub over. :smiling_face_with_tear: I’m also starting to think people don’t tend to change bootloaders like this.

Should still be possible, can you chroot in and share the output of the following: efibootmgr

BootCurrent: 0004
Timeout: 1 seconds
BootOrder: 0003,0000,0001,0002,0004
Boot0000* Linux Boot Manager	HD(1,GPT,f5d11698-ae5e-4e4f-953a-c286bc87fad4,0x1000,0x1f4000)/File(\EFI\systemd\systemd-bootx64.efi)
Boot0001* Windows Boot Manager	HD(1,GPT,f1dfc8c9-c51b-40dd-a480-0020996448e9,0x800,0x32000)/File(\EFI\MICROSOFT\BOOT\BOOTMGFW.EFI)57494e444f5753000100000088000000780000004200430044004f0042004a004500430054003d007b00390064006500610038003600320063002d0035006300640064002d0034006500370030002d0061006300630031002d006600330032006200330034003400640034003700390035007d0000004d000100000010000000040000007fff0400
Boot0002* UEFI OS	HD(1,GPT,f5d11698-ae5e-4e4f-953a-c286bc87fad4,0x1000,0x1f4000)/File(\EFI\BOOT\BOOTX64.EFI)0000424f
Boot0003* EndeavourOS	HD(1,GPT,f5d11698-ae5e-4e4f-953a-c286bc87fad4,0x1000,0x1f4000)/File(\EFI\EndeavourOS\grubx64.efi)
Boot0004* UEFI: KingstonDataTraveler 3.0	PciRoot(0x0)/Pci(0x14,0x0)/USB(24,0)/CDROM(1,0x3a5420,0x35298)0000424f

Interesting thing to notice, linux boot is systemdboot while endeavour is grub.

Side note on this, I have no idea what UEFI OS is on there. It’s been there since I installed Endeavour. Also for clarity, KingstonDataTraveler is the usb install I’m chrooting from.

You could try removing Boot0000, I don’t think that will make a difference though because you already said you see the grub menu but that it just hangs at loading your root partition.

I suppose it’s probably good to clean up the list if nothing else. I also wonder if, optimistically speaking, this could be the issue. :thinking: I remember something in the grub manual about if the boot order didn’t match some other order, and in this case things have been reordered. When I boot I only see one option, so it could be doing the wrong one. Should probably enable os prober to have all the options anyways. That’d be a quick way to check.

That one image from your attempted boot of fallback says it couldn’t find your disk. Are you sure your UUID is correct?
sudo blkid

Looks to match to me.

Also, you never removed systemd bootloader it looks like, so you can probably still boot via that Linux Boot Manager if you acess your boot selection on startup with F12 or whatever it is for your Bios. That way you probably won’t have to keep chrooting in via live usb

Ah. That makes it very bad timing that I just removed it then.

But also, no difference.

I just want to check, am I seeing the right thing? My options in the grub menu are Arch Linux, advanced which contains both the regular and fallback options (images? Don’t kniw the right term), and to go back to bios.

Those are the kernel images you can boot and the fallback kernel image.

Looking at the default grub setup when you choose grub during the install process the default location for efi is /boot/efi. Might be worth removing the current EndeavourOS grub option. Then mounting your efi partition on /boot/efi, also inf /etc/fstab. Then running " sudo grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=EndeavourOSand then generating your grub configgrub-mkconfig -o /boot/grub/grub.cfg`

That’s a good idea. I’ll try that tomorrow since it’s past 4am right now. Mind explaining

a little further though? The tirdness isn’t helping but I get a bit confused with this. Right now I’m just mounting to /mnt and /mnt/efi and I don’t really get where fstab comes into this.

umount /efi
mkdir /boot/efi
mount /dev/nvme0n1p1 /boot/efi
rm -rf /boot/efi/*
efibootmgr -B -b 0003 
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=EndeavourOS
grub-mkconfig -o /boot/grub/grub.cfg
reboot