Will installation on BIOS systems with no ESP be supported in 21.04?

Liam Proven lproven at gmail.com
Tue Apr 13 13:29:45 UTC 2021


 if none was foundOn Tue, 13 Apr 2021 at 14:39, Bo Berglund
<bo.berglund at gmail.com> wrote:
> >
> Question:
> How can I find out if my computer(s) use BIOS/UEFI/both?
> I have seen these discussions before and now I worry that I will break/brick an
> installation if I run a distribution upgrade...
>
> So what are the caveats here?

https://itsfoss.com/check-uefi-or-bios/

https://superuser.com/questions/304004/how-to-know-if-my-bios-supports-uefi

BIOS PCs traditionally use MBR hard disk partitioning. With DOS, OS/2
and Windows, the BIOS looks for the first primary partition on the
first hard disk and boots whatever is in its boot sector.

Linux had to work around this, so Linux (and other PC Unix-type OSes)
write some code into the Master Boot Record of the 1st hard disk,
which then causes the PC to load a bootloader (in the early days LILO,
then GRUB, now GRUB2), normally from the root partition.

This is simple and it works. It is a bit of a kludge but it has been
working for about 40 years now.

There are many other firmware systems on other computers. Old Motorola
680x0 Macs had their own system, and a variant in the early PowerPC
Macs. Then Apple adopted Open Firmware, a FOSS industry standard also
used on Sun workstations and other RISC computers. OpenFirmware was
free, open, cross-platform, widely-used, and there was already an
Intel x86 version.

So, after AMD invented x86-64, Intel executed a strategic move to keep
control of the PC industry: it adapted its own closed-source
proprietary firmware for Itanium computers, called EFI, to x86 and
called it Universal EFI – UEFI.

UEFI booting is different.

It supports the new GPT partitioning system that Intel Macs also use.
On the 1st hard disk must be a hidden FAT32 partition, called the EFI
System Partition. In there is a directory structure. In that, each OS
writes its own boot loader, in a file, which is loaded by the UEFI
mini operating system in the computer's firmware and then executed.
These can be cryptographically signed so only signed OSes will boot at
all, although that feature can be turned off on x86 computers. (On ARM
computers with UEFI it is permanently on.)

This boot loader stub then loads the OS from the assigned partition.
The UEFI may have its own setup program with its own user interface
that may let you choose the order in which the stubs are loaded, or
whether legacy boot media work, and if one has priority over the other
– but all this is optional and not all systems do it.

Some UEFI implementations check for legacy boot structures in the MBR
of the hard disk first, and then *if* no legacy boot data was found,
the firmware progresses on to loading native UEFI ones.

Some only removable media.

Some check both types of media, legacy first then UEFI.

Some check, but for UEFI first *then* legacy.

Some check both but in an order you set... Some check both but don't
let you choose.

Some ask you every boot.

Some let you disable one or the other, or set the order. It depends on
the vendor and the version. Sometimes this functionality is not there
when the hardware ships and is added later. Sometimes it is present
but does not work. Sometimes it gets fixed later.

If this sounds like a big mess... well, it is.

Welcome to the 21st century. :-(

-- 
Liam Proven – Profile: https://about.me/liamproven
Email: lproven at cix.co.uk – gMail/gTalk/gHangouts: lproven at gmail.com
Twitter/Facebook/LinkedIn/Flickr: lproven – Skype: liamproven
UK: +44 7939-087884 – ČR (+ WhatsApp/Telegram/Signal): +420 702 829 053




More information about the ubuntu-users mailing list