Why can't we install GRUB on boot partition

Dear all,

I’ve just successfully installed openSuse with few trial and errros. One of them was trying to install Grub on boot partition which did not succeed. Why does somehow openSuse enforce you to install GRUB on MBR? Is there any particular reason? I know we can install GRUB on boot partition since I’ve done this with other distro.

Best regards,

I think you are a bit confused about the process. GRUB itself is installed in /boot but, in order to work, it has to be called from somewhere. That is normally the MBR but can be a PBR if you are prepared to change the boot sequence in the BIOS.

Under the expert or customize option during installation you can decide where to install GRUB .
dobby9

OpenSUSE doesn’t force you to install Grub in the MBR, you can install it wherever you choose, with one proviso: because of filesystem constraints, any attempts to install it to a xfs partition will fail.

Thanks for the explanation john. Yeah I’m still new to Linux in General. I thought what you install in MBR is the GRUB itself. I tried several times installing GRUB on boot partition but it doesn’t work and only gives me GRUB command line.

I already did that, but after I’ve installed it, when my laptop boots it only give me GRUB command line. Weird

Did you try the rescue mode on the DVD ?
dobby9

As others have said, you can; however, that partition needs to be made bootable.

I like to use Parted Magic LiveCd, Boot with that & use Gparted, navigate to your HDD & set the boot flag on the boot partition. During the install, “Custom Partitioning” Set that partition as /boot; then in “Bootloader” tell it to install on that partition.

On the other hand, when I built my motherboard raid array, SuSE did all that for me out of the box hands free.

Seems might help if there is just a bit of additional clarification here . . .

You can install grub to the MBR or to the root partition’s boot sector (PBR) or, if /boot is on its own separate partition, in that partition’s PBR. And, if the root partition is a logical partition, then grub can be installed in the extended primary’s PBR.

When grub is installed in the MBR there is an embedded pointer that references the partition where grub’s stage2 loader resides. The MBR grub stage1 loads stage2 from that partition; the PBR - installed with grub or not - is not called or used at all.

If grub is installed in the PBR there must be bootstrap code in the MBR to transfer control to the PBR jump instruction. This boot code - called “generic boot code” in YaST Boot Loader and also the Windows MBR code falls into this category - will look in the partition table for the first record with the “bootable flag” set (in Windows called the “active” partition) and will load that partition’s PBR.

Installing grub in the PBR with no boot code in the MBR will leave an unbootable system.

Installing grub in the PBR and the MBR is redundant; the code in the MBR will, as described above, bypass the PBR. However, if a boot loader (grub or otherwise) is installed in another PBR which is called by the MBR, then grub in the PBR can be called by the loader in the other PBR; this is called “chainloading” which is the term for one boot loader transfering control to another.