Bootable USB Key - Partition Table Format?

Can anyone confirm for me that I am not obliged to use msdos for partition table on a USB key in order to have it recognized as bootable by an “ancient” BIOS?

BIOS Information
	Vendor: American Megatrends Inc.
	Version: 2603   
	Release Date: 04/13/2011

Can it be done using a GPT-formated disk?

IF so, how?

I do mean hownot requesting any suggestions for tools that will do it all for me.

I would like to know if this is possible before burning two different ISOs, fresh images for each of xubuntu and ubuntu-server 26.04 LTS.


Full report from dmidecode

3 Likes

It might be interesting to dig up some old posts from ubuntu-mate.community.

First of all, @lah7 's warning

For a BIOS machine, the most compatible and simplest solution is to use a MBR formatted disk. GPT may have worked, but it’s a hit-and-miss and I don’t think it’s worth the trouble. Booting from a GPT drive is geared more for towards a (U)EFI system.

Also, I tried this some time ago on some BIOS machines and I would advise against using GPT on old BIOS. It is not worth the trouble.

In my experience it is indeed ‘hit and miss’ because BIOSss that don’t follow the BIOS standard will fail to boot, and quite some BIOSes do not adhere to the standard. (SONY is notorious in that aspect)

In that thread I also linked to this which does a good explanation about the why and how.
Here an excerpt:

The BIOS generally doesn’t care anything about your hard drives. It simply loads the MBR and transfer control to the boot loader in MBR. Therefore technically it’ll be possible to boot a GPT drive in BIOS mode, because the GPT drive still has a protective MBR at the beginning. You just need a bootloader that supports GPT disks (such as Grub and many other Linux bootloaders)

However, here a small problem arises. On MBR drives the boot loaders often cheat a bit by storing a part of them in the next sectors called “MBR gap”, “boot track”, or “embedding area” which are often left empty by disk partitioning tools. On a GPT disk the sectors right after the MBR are GPT data structures, hence can’t be used for that purpose and you need to create a small BIOS Boot Partition for Grub to store its data.

Some more things I experienced can be found here:

8 Likes

As @tkn has pointed out legacy MBR format is preferable for bootable USB drives, esp. on older machines.

At the same time:

AFAIK, burning ISO to USB replaces the whole drive contents (incl. partition table) by definition. I.e. there is actually no choice.

6 Likes

I forgot to answer this question, sorry:

Yes, it is possible to install GPT-only distros on legacy BIOS.
It depends on how bugfree your BIOS is.

It worked on my Asus F3T and on my Toshiba Craptop

It did not work on two other laptops so your milage may vary.

Also, you can always add GPT formatted (non-boot) drives, regardless of the BIOS.

3 Likes

Thank you, Thom and Eugene!

I guess I’ll stick with what I have been doing, using msdos MBR.

4 Likes

It is possible to have a hybrid MBR/GPT - for the best of both worlds. One of my bootable USBs had this to boot ISOs for either BIOS/UEFI natively, but it was many years ago that I can’t remember how I did it, but could be worth exploring.

6 Likes

Yeah, hybrid MBR/GPT is doable but it’s kind of a rough road these days. Tools like gdisk can create one with the recovery menu (r then h), and that’s how a lot of those old multi-boot USBs were made.

But look the hybrid setups aren’t really supported by the spec, and modern firmware is increasingly picky about them. Some UEFI implementations will refuse to boot. :downcast_face_with_sweat:

For ISO booting specifically, Ventoy basically solved this problem by handling the BIOS/UEFI dual-boot logic for you. Worth a look.

6 Likes