Moving the EndeavourOS EFI GRUB partition elsewhere on the disk

Hiya, trying to get rEFInd to work on my system, but it only sees the earliest FAT32 partition, which I have for EOS. I decided I should move GRUB from my disk’s second partition to further in the disk, so after all the other big partitions, and would like to instead use my second partition to install rEFInd on it. I plan to install Bazzite and NixOS for experimentation, and so I have this ~50GB of space later in the 2TB SSD I’m using for each system’s GRUB partition, and the big space for each distro.

Was hoping I could get some help with moving GRUB, as what I’ve tried so far, with mounting and arch-chrooting into the system, doesn’t work as GRUB says “Cannot find EFI directory”

Any help is appreciated, and sorry for the large chunk of text, I’m on phone and find hard to tidy up the text!

Not sure what you are trying to do here, because if you just leave GRUB where it is at the time of installation you can install refind from e.g. EOS, it will create a entry in your EFI Bios ,so that you can boot from it. You don’t need a seperate partition for Refind.

1 Like

Trying to install rEFInd on TOP of everything else, such that it finds each distro’s GRUB, and allows me to keep them separate.

What does this mean? Like, I can install rEFInd where EOS’ GRUB is and it’ll just work, without touching the GRUB that’s there? Also, I have a Live USB of rEFInd, do I just let it install in the partition it finds where GRUB is?

This is a link to the wiki about Refind.

https://discovery.endeavouros.com/grub-and-refind/how-to-install-refind/2021/03/

This is not how this should work. Both are boot managers, it’s possible to hack something together to boot rEFInd → GRUB → Linux, but this is ill-advised.

Decide for one or the other. Both are capable to boot OSes from other partitions or disks.

I need the original GRUB for Bazzite as it has its own rollback features, and its GRUB needs its own partition, lest you want it to give an error on install due to UUIDs


Here’s a picture of the error Bazzite gave me last time. The maintainers said that dual-booting alongside another Linux distro is not supported, forcing me to have rEFInd to discover the grub menus of each distro, in order to keep EOS and Bazzite fully separate.

I understand it is ill-advised, and want to proceed anyway. My system, my tinkering fingers, and my drive to try Bazzite and NixOS without giving up on my EndeavourOS partition.

Understood. I have similar urges, I can understand. :smile:

The last time I did something similar I took the PC down and installed the troublemaker (in your case Bazzite) first, and then bent the other distris around it to make it work. You could copy over GRUB entries from the other distris to Bazzite, for example.

Looks like there is a lot of trial and error ahead of you…

Yeah, but I’ve already meddled around with the partitions, I just need someone to hop in with how to install the EOS partition’s grub on a different partition, from there I can install rEFInd and hopefully install Bazzite without it complaining about other systems

Looks like you need this command: https://wiki.archlinux.org/title/GRUB#Installation_2

sudo grub-install --target=i386-pc /dev/sdX

Where “/dev/sdX” is the path to the partition you would like GRUB to be installed on.

It is advisable to have no more than one EFI partition on a given disk. It is possible to have more than one, but it can cause issues with certain applications that expect there to be only one (for example os-prober).

It is fine to have multiple bootloaders installed, all sharing a single ESP. Grub and rEFInd each only take up a few MB on the partition, so it’s okay if the partition is small.

1 Like

So, I can simply install both GRUB and rEFInd on the same EFI partition, and then install all the other GRUBs to that partition as well? Won’t they overwrite each other? How do I handle a system where I go rEFInd at boot > Distro’s GRUB > Actual distro?

Why do you need GRUB at all if you simply want to boot from several partitions?

Boot whatever you can, E-OS for sure, without GRUB, without rEFInd, directly from EFI: https://wiki.archlinux.org/title/EFI_boot_stub

Adding GRUB and rEFInd is unnecessary complexity.

Your target shouldn’t be to have a complicated boot process, but to boot all OSes seamlessly.

Here is a good answer by the maintainer of rEFInd to do everything with rEFInd: https://askubuntu.com/a/722294/332437

Maybe you need one GRUB to boot Bazzite, but I would install no more than that.

Bazzite’s GRUB has a rollback feature, and so does NixOS, another distro I’d like to experiment with. I lost interest in Bazzite after they deleted my help post about dual-booting with another Linux distro, so NixOS is next.

Still, I need to know, how can I manage the scenario I described? You may it call it unnecessary or complex, but it’s the way I like it, because I get to pick all the images rEFInd can find, as well as their GRUBs, which have more options.

So I guess my question now is, do I just put GRUB and rEFInd on the same EFI partition?

Quick edit, but my motherboard’s boot menu is an ugly eyesore, hence why rEFInd gave me interest, since it has theming options as well as being pretty by default.

Yes, that’s right.

In the case of multiple GRUBs they need to have different bootloader IDs so they don’t overwrite each other. A lot of distros use a custom name by default, so you may not have to do anything in a lot of cases. You can change it after the fact if needed.

Chainloading bootloaders with rEFInd is very easy. In fact, rEFInd typically auto-detects other bootloaders and adds them to the boot menu for you so you don’t need to do anything. The setup you are describing should “just work”.

Yes.

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.