As I understand it, GRUB/GRUB2 is just a multi-system bootloader that can exist independently of the operating system, and the operating system can load itself without GRUB’s bootloader.
In the same way, Windows’ NTLDR/BOOTMGR is only a multi-system boot loader, in addition to booting Windows boot, it can also boot other operating systems, but a special case is that NTLDR/BOOTMGR and Windows are deeply bound, neither can be installed separately, nor can Windows be booted without NTLDR/BOOTMGR, and other third-party boot managers still have to go through NTLDR/ BOOTMGR to boot Windows.
So my same question is GRUB2 deep bound to Rocky Linux? How do I boot Rocky Linux without GRUB2?
The reason for this doubt is that if you choose to boot with GRUB2 when installing Rocky Linux, you will check the Boot entry of a disk in the ”SELECTED DISKS AND BOOT LOADER“ dialog interface, which will be difficult on MBR partitions. According to the official instructions of GRUB2 https://www.gnu.org/software/grub/manual/grub/html_node/BIOS-installation.html#BIOS-installation, if you want to install GRUB2 in the “embedding area” of the MBR, there must be at least 1M of space in that area, and if there is only 31K space, a small profile of GRUB2 will also work, But three conditions must be met
Historically many tools left only
31 KiB of space
. This is not enough to parse reliably difficult structures like Btrfs, ZFS, RAID or LVM, or to use difficult disk access methods likeahci
. Hence GRUB will warn if attempted to install into small MBR gap except in a small number of configurations that were grandfathered. The grandfathered config must:use biosdisk as disk access module for /boot
not use any additional partition maps to access /boot
/boot must be on one of following filesystems: AFFS, AFS, BFS, cpio, newc, odc, ext2/3/4, FAT, exFAT, F2FS, HFS, uncompressed HFS+, ISO9660, JFS, Minix, Minix2, Minix3, NILFS2, NTFS, ReiserFS, ROMFS, SFS, tar, UDF, UFS1, UFS2, XFS
Since my disk has been partitioned with SPFDISK in advance, the MBR “embedding area” only has 31K space, but I don’t want to change the existing partition scheme, and the disk access in the BIOS is AHCI protocol, so according to the above GRUB2 instructions, the MBR “embedding area” does not have enough space to accommodate the GRUB2 core.img file in this configuration. So whether I’m installing Rocky Linux in graphics mode, using GRUB2 boot, or installing GRUB2 with grub2-install in rescue mode, it shows that there is not enough space:
grub2-install: warning: … /grub-core/partmap/msdos.c:401:your core.omg is unusually large. It won’t fit in the embedding area.
grub2-install: warning: Embeding is not possible. GRUB can only be installed in this setup by using blocklists. However, blocklists are UNRELIABLE and their use is discouraged…
grub2-install: error: will not proceed with blocklists.
So, there is a question, how to boot Rocky Linux without GRUB2?
Or, by following the tips above, how do I install GRUB2 with blocklists?
i.e. according to the official instructions of GRUB2 https://www.gnu.org/software/grub/manual/grub/html_node/BIOS-installation.html#BIOS-installation
or the core image can be installed in a file system and a list of the blocks that make it up can be stored in the first sector of that partition.
On some Linux distributions, the installer lets you choose whether to install GRUB/GRUB2 or not, and to what location, MBR or PBR, i.e. The first sector of boot partition.
On Rocky Linux, does checking Boot mean that you can only install to MBR? but not to boot partition?