GPT boot has less features than legacy MBR-based one (Was: UEFI, loader.efi and /boot.config)

Lev Serebryakov lev at FreeBSD.org
Fri Jan 18 19:44:36 UTC 2019


On 18.01.2019 22:27, Warner Losh wrote:

>     > errm.. you press a key and enter device and or loader path. if it
>     is not working - the code is there to be fixed.
>      And loader looks to "bootme" attribute and try to boot from partition
>     which has one, even if it is loaded from other partition itself.
> Correct.
 And system crashes, because "bootme" partition has broken installation.

 With MBR + boot0/boot0sio it is solved with one keypress.

>     > GPT does not have the concept of active partition.
>      It has "bootme" / "bootonce" attributes. And [zfs]gptboot doesn't have
>     any tools to set these attributes, AFAIK. Same for UEFI boot code.
> 
> gpart can set these.
 You need live, booted system (at least single-user) to use gpart.

> UEFI completely ignores them, though, because getting to that data is
> hard in the UEFI environment. But in UEFI, you're supposed to use
> BootXXXX and BootOrder/BootNext as managed by efibootmgr.
 Again, you need booted system to use efibootmgr.

  boot0/boot0sio works before system and could switch boot partition in
case of MBR. It is why I write, that GPT/Legacy and GPT/UEFI miss
important feature which is present for MBR boot for ages. Which is sad &
funny at same time, as GPT/UEFI has much more code than 512 bytes of boot0.

-- 
// Lev Serebryakov

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 963 bytes
Desc: OpenPGP digital signature
URL: <http://lists.freebsd.org/pipermail/freebsd-current/attachments/20190118/185fe0ad/attachment.sig>


More information about the freebsd-current mailing list