How to boot manjaro in the MBR disk partition style and not EFI?

Hello to everyone

I’m a new user of Manjaro. I’ve just installed it on my disk. I’ve installed it on a dos / grub partition style. For what I need to do,I can’t use EFI. During the installation it told me if I wanted to install the EFI boot loader. I rejected this option,because I need that it boots on a MBR file system. It replied that the system will not boot. Not good,because I don’t want to be forced to do something that I don’t need. I tried to restore GRUB using this tutorial :

https://wiki.manjaro.org/index.php/Restore_the_GRUB_Bootloader

Reading the instructions it seems that manjaro uses a mixed solution ? EFI and grub at the same time ? Anyway,it looks for the EFI partition,but there isn’t any. And it refuses to install grub. What to do here ? I have also chosen the media / grub installation instead of the EFI one. What should I do to accomplish what I want ? thanks.

> [manjaro /]# grub-install /dev/sdc
> Installing for x86_64-efi platform.
> grub-install: error: cannot find EFI directory.
> [manjaro /]# cd /boot
> [manjaro boot]# cd efi
> bash: cd: efi: No such file or directory
> [manjaro boot]# mkdir efi
> [manjaro boot]# sudo mount /dev/sdc1 /boot/efi
> [manjaro boot]# sudo grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=manjaro --recheck
> Installing for x86_64-efi platform.
> grub-install: error: /boot/efi doesn't look like an EFI partition.
> [manjaro boot]# mkdir /boot/efi
> mkdir: cannot create directory ‘/boot/efi’: File exists
> [manjaro boot]# gparted
> No protocol specified
> Unable to init server: Could not connect: Connection refused
> 
> (gpartedbin:443): Gtk-WARNING **: 22:27:03.248: cannot open display: :0.0
> [manjaro boot]# gparted
> No protocol specified
> Unable to init server: Could not connect: Connection refused
> 
> (gpartedbin:470): Gtk-WARNING **: 22:27:08.286: cannot open display: :0.0
> [manjaro boot]# ls
> efi                                initramfs-5.6-x86_64.img  memtest86+
> grub                               intel-ucode.img           vmlinuz-5.6-x86_64
> initramfs-5.6-x86_64-fallback.img  linux56-x86_64.kver
> [manjaro boot]# cd efi
> [manjaro efi]# ls
> bin                 dev   lib         mnt   root             sbin  sys  var
> boot                etc   lib64       opt   rootfs-pkgs.txt  snap  tmp
> desktopfs-pkgs.txt  home  lost+found  proc  run              srv   usr
> [manjaro efi]# cd ..
> [manjaro boot]# sudo umount /dev/sdc1 /boot/efi
> umount: /boot/efi: not mounted.
> [manjaro boot]# sudo umount /dev/sdc1
> [manjaro boot]# gparted
> No protocol specified
> Unable to init server: Could not connect: Connection refused
> 
> (gpartedbin:505): Gtk-WARNING **: 22:28:17.552: cannot open display: :0.0
> [manjaro boot]# pacman -S gparted
> error: failed to init transaction (unable to lock database)
> error: could not lock database: Read-only file system
> [manjaro boot]# grub-install /dev/sdc
> Installing for x86_64-efi platform.
> grub-install: error: cannot find EFI directory.

hi

grub-install /dev/sdc

No, we install mbr/grub on a disk and to in a partition
choose boot disk and not always disk with partition (sdc for you ?)

NO, from iso, for mbr, we mount with manjaro-chroot -a, make grub-install xxx and update-grub


Exists a guide for install manjaro (yes, too later here)

[manjaro manjaro]# grub-install /dev/sdc
Installazione per la piattaforma x86_64-efi.
grub-install: error: can’t find directory EFI.

I used RUFUS to install the ISO image to the USB pen and I chosen MBR. The disk file system is also MBR. Why it is forcing me to use the EFI style ?

return here sudo fdisk -l
sdc is the disk boot ??? not sda ?

Disk /dev/sdc: 298,9 GiB, 320072933376 bytes, 625142448 sectors
Disk model: WDC WD3200AAJS-0
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x00000274

Device Boot Start End Sectors Size Id Type
/dev/sdc1 * 2048 558321663 558319616 266,2G 83 Linux
/dev/sdc2 558323710 625141759 66818050 31,9G 5 Extended
/dev/sdc5 558323712 625141759 66818048 31,9G 82 Linux swap / Solaris

Rufus creates a dual system. It boots both UEFI and Legacy.

What you need to do is to force your computer to boot legacy BIOS CSM module. Else it will boot UEFI.

After you boot legacy method you cannot install UEFI even if you wanted to.

If you want to destroy the EFI ability of your usb stick just delete EFI folder in it. It’s on a visible partition if i’m not mistaken.

If you have already installed the system use this
https://wiki.manjaro.org/index.php/Restore_the_GRUB_Bootloader#For_BIOS_Systems

Edit: You have to set Legacy CSM boot from your BIOS/UEFI.

I have already set Legacy CSM from my BIOS. The usb disk asks me to choose between EFI and MBR and I choose MBR. I never chosen EFI,in any place.

Use gparted to set fat32 partition on your USB as msftdata rather than boot esp. Then it will always boot MBR and will not ask you ever about EFI.
That way you don’t have to delete anything either.

You can do it by right clicking and selecting manage flags.

1 Like

This is what I choose :

I can’t even choose different options.

check all option in bios

if possible use ventoy
on USB iso manjaro
open a terminal

inxi -Mxxxa
test -d /sys/firmware/efi && echo efi || echo bios
sudo parted -l 
sudo efibootmgr -v

You just need to set fat32 not active. I think you can do that from diskmgmt.msc utility.

Or you can do it from command line with diskpart.

Locate the fat32 partition and set inactive. That way it will not boot EFI.

something is not good with the iso image. I’m not able to install it on the usb stick.

actually it created again an odd disk structure…

https:// i b b .co/qd80RvH

What happened to rufus?

If you want to boot legacy only you have to set fat32 inactive from windows diskpart or diskmgmt.msc after you create the bootable USB.
Or you have to remove esp boot flag of fat32 partition using Gparted on linux.

Try to verify your iso, sha or whatever checksum it’s using.

I’m going to sleep, good night.

use ventoy