Hi,

(I still riddle what gene Heskett means with "installer refuses to set the
bootable flag". So i only answer to the rhkramer's question.)

rhkra...@gmail.com wrote:
> IIRC, the bootable flag is pretty much irrelevant in Linux -- it doesn't
> have to be set to boot from a partitions.  Am I mis-remembering?

The boot flag in the MBR partition table has a main job and a mess of
inofficial and anti-social side jobs.

The main job is to tell the x86 machine code in a particular class of MBRs
which partition's Volume Boot Record it shall choose for handing over
program execution to that VBR's x86 machine code.
The MBR x86 code installed by the boot loaders SYSLINUX and GRUB does not
belong to that class. Those bootloaders have own ways to find the next
piece of program code.

Insofar the boot flag is normally of no importance for booting Linux.
But it can sabotage the boot process by either presence or absence.

One of its side jobs is with some old BIOS firmwares which assume that a
disk with bootable MBR x86 code must have the boot flag set to some
partition.
I.e. they don't boot the MBR code from a disk that bears no MBR partition
table with boot flag.

Another is to sabotage booting by some EFI implementations which refuse
if they see the boot flag at the MBR partition of type 0xEE which announces
the presence of GPT.
The situation becomes messy by some BIOS implementations which cause long
delays with GRUB if they see the boot flag at a MBR partition of type 0x00
which comes after the partition of type 0xEE.

(It is noteworthy that the Debian ISOs boot on all those mad firmwares.
Mainly because the ISOs' partitioning is even more mad than any firmware
can be.)

One could hope that EFI and GPT would wash the boot flag away.
But there is a flag bit in GPT partition slots named "Legacy BIOS bootable".
(I'm not sure whether 446 bytes of x86 code can be smart enough to
interpret GPT ... but would not bet against it.)


Have a nice day :)

Thomas

Reply via email to