[syslinux] Custom MBR

H. Peter Anvin hpa at zytor.com
Fri Dec 12 15:27:49 PST 2008


YYZ wrote:
>> So in other words, the MBR would boot a partition designated by data stored 
>> on the disk, but instead of using the standard mechanism for this, you'd
>> have it use some new, nonstandard mechanism that nothing else supports.
> 
>> Why?
> 
> Which partition to boot is encoded within the MBR itself during the installation. 
> 
> There is nothing non-standard about this and this is not incompatible with any other software (grub already does this). This “standard” approach dates back to the time when one had to rely solely on MBR code as boot manager and use fdisk or similar tool while booted in one OS to switch to the other OS by activating the other partition. With modern multi-boot managers, you can decide at boot time which partition to boot and they don’t rely on the active flag in MBR at all. The catch is that whenever you start your system, the control should somehow get transferred to the boot manager wherever it resides (unused sectors of track0, a dedicated boot partition, etc.). This is what I’m asking for – I would like to install syslinux on any partition of my choice and would like to boot into syslinux regardless of which partition is active. From syslinux, I can always boot any partition I want by loading its boot sector.
> 

Uhm, yes that is exactly non-standard.

The active flag is the standard way to tell the MBR where it should get
its next bootloader from.  And yes, it's nonstandard and incompatible
with other software -- INTENTIONALLY.

Technically, it's not difficult at all.  The much more important
question is WHY.  "Grub does this" is not a valid answer.

	-hpa




More information about the Syslinux mailing list