Recreate EFI folder

I had following on my uefi system.

  1. windows
  2. manjaro cinnamon (in manjaro folder on efi)

I installed a 3rd system namely manjaro openbox edition. Instead of creating a new folder in the EFI partiion, it overwrote the cinnamon manjaro folder.

Is there a way to create another folder entry on my efi partition for the cinnamon manjaro system, which is now not accessible from efi boot.

thanks

Disclaimer

Completely untested, so if it breaks your system, then you get to keep all the pieces. However, in theory, it should work.

:crossed_fingers:

Depending on which Manjaro installation you wish to use as your primary distribution, that one must be the one whose boot loader we have to install last. I am going to assume that it is your Cinnamon installation that you would like to use as your main distribution. So here’s what to do…

First, boot up from the install medium in live mode ─ it doesn’t matter which live medium, so long as it is Manjaro.

Now, open up a terminal window and issue the command… :arrow_down:

su -

It will ask you for the root password of the install medium. Next, issue the following command… :arrow_down:

manjaro-chroot -a

You will now get a menu from which you must choose which Manjaro installation you want to chroot into. Choose the OpenBox partition.

Now, in the chroot environment, issue the following command… :arrow_down:

mount | grep efi

If you do not get any output from that command, issue the following command, whereby you substitute /dev/sda1 with the correct device name for EFI system partition …

mount /dev/sda1 /boot/efi

This is where I’m going out on a limb, but in theory, this should work. Issue the following commands… :arrow_down:

grub-install --recheck --no-rs-codes --install-modules="part_gpt part_msdos" --efi-directory="/boot/efi" --target="x86_64-efi"
update-grub
mv /boot/efi/EFI/manjaro /boot/efi/EFI/openbox
exit

Now, you’ve exited the chroot environment for the OpenBox installation, so now we’re going to do the same for the Cinnamon installation.

Again, issue the command… :arrow_down:

manjaro-chroot -a

This time, pick the partition with the Cinnamon installation from the menu.

And now we repeat the process… :arrow_down:

mount | grep efi

If it’s not mounted, issue… :arrow_down:

mount /dev/sda1 /boot/efi

Don’t forget to substitute /dev/sda1 for the correct device name of your EFI system partition.

grub-install --recheck --no-rs-codes --install-modules="part_gpt part_msdos" --efi-directory="/boot/efi" --target="x86_64-efi"
update-grub
exit

Now you can safely exit the root shell and then the regular shell, either by issuing the following command twice:arrow_down:

exit

… or by hitting Ctrl+D twice.

And now it should be safe to reboot the system. Your UEFI boot menu should now show three entries again…

  1. Windows
  2. OpenBox
  3. Manjaro (which will boot your Cinnamon installation).

If you missed it at the top of this post, then click the little arrow next to the disclaimer below.

Disclaimer

Completely untested, so if it breaks your system, then you get to keep all the pieces. However, in theory, it should work.

:crossed_fingers:

thanks I’ll try that.

Would that also work if all manjaro partitions are encrypted with luks?

thanks

Whoa, now you’re moving the goalposts. You didn’t say anything about LUKS. I have no experience with that. :man_shrugging:

Now you’ve got me throwing in the towel. :frowning_man:

:white_flag:

Well…

I got into my cinnamon version by:

  1. booting into openbox version
  2. opened luks cinnamon partition.
  3. installed / ran grub customiser.

this created an entry for cinnamon in openbox grub menu.

restarted computer into openbox menu
selected cinnamon partition
entered luks pw for cinnamon.

boots fine.

then I tried your suggestion as below.

[manjaro adminuser]# grub-install --recheck --no-rs-codes --install-modules="part_gpt part_msdos" --efi-directory="/boot/efi" --target="x86_64-efi"
Installing for x86_64-efi platform.
EFI variables are not supported on this system.
EFI variables are not supported on this system.
grub-install: error: efibootmgr failed to register the boot entry: No such file or directory.
[manjaro adminuser]# 

Not sure what the errors meant.

Your suggestion partially worked.

It successfully created a new manjaro folder in efi. Also created a new bootx64.efi file in same.

On reboot, I selected cinnamon version and entered luks pw. Opened slot fine.

Then…

give error as below:

error: file ‘/boot/grub/x86-64-efi/normal.mod’ not found.
entering rescue mode…
grub rescue>

Any ideas?

thanks

It looks like your Cinnamon installation was installed in legacy BIOS mode, not in UEFI mode. You must not mix UEFI and non-UEFI operating systems on the same drive. It’s okay to have them on different drives, but not on the same drive.

And by the way, the use of grub-customizer is strongly ─ and I do mean strongly ─ discouraged in Manjaro, because it is known to break things. Manjaro’s GRUB is heavily customized, and grub-customizer tends to mess that up quite badly. :man_shrugging:

IMO… easiest option for multibooting is just use rEFInd instead of grub.