[ipxe-devel] Generating a BIOS/UEFI hybrid ISO image

Geert Stappers stappers at stappers.nl
Tue Oct 19 20:42:30 UTC 2021


On Tue, Oct 12, 2021 at 11:18:00AM +0000, Dean Westhead wrote:
> From: "Geert Stappers" <stappers at stappers.nl>
> Sent: Thursday, 7 October, 2021 20:07:38
> > On Thu, Oct 07, 2021 at 03:03:06PM +0100, Michael Brown wrote:
> > > On 07/10/2021 14:52, Dean Westhead wrote:
> > > > Sorry ... I didnt want to take lots of your time if it is only me
> > > > having this issue and everyone else is working fine.
> > 
> > It is not important how much "works for me" exists.
> > Interesting is exploring what can be improved.
> >  
> > > > In the old "working" ISO, there is the following files :
> > > > 
> > > > boot.cat
> > > > efiboot.img
> > > > ipxe.krn
> > > > isolinux.bin
> > > > isolinux.cfg
> > > > 
> > > > The new one that isnt seen as a EFI bootable disk has :
> > > > 
> > > > boot.catalog
> > > > esp.img
> > > > ipxe.lkrn
> > > > isolinux.big
> > > > isolinux.cfg
> > > > 
> > > > I will open the EFI image too and see what is in that as soon as i
> > > > can and let you know about that too.
> > > 
> > > Thanks!  Most of those files are for BIOS booting: the relevant ones for
> > > UEFI are efiboot.img/esp.img, which should both be FAT filesystem images
> > > containing a file \EFI\Boot\BootX64.efi (which should be the ipxe.efi
> > > binary).
> > 
> > I think a "directory tree" will help.
> > 
> 
> Hi,
> 
> The directory tree's for each ISO :
> 
> New ( non working ) ISO :
> 
> /new_iso/
> ├── boot.catalog
> ├── esp.img
> ├── ipxe.lkrn
> ├── isolinux.bin
> └── isolinux.cfg
> 
> 0 directories, 5 files
> 
> And the esp.img file on the non working ISO :
> 
> /new_esp.img/
> └── EFI
>     └── BOOT
>         ├── BOOTIA32.EFI
>         └── BOOTX64.EFI
> 
> 2 directories, 2 files
> 
> The old ( working ) ISO :
> 
> /old_iso/
> ├── boot.cat
> ├── efiboot.img
> ├── ipxe.krn
> ├── isolinux.bin
> └── isolinux.cfg
> 
> 0 directories, 5 files
> 
> And the efiboot.img file on the working ISO :
> 
> /old_efiboot.img/
> └── EFI
>     └── BOOT
>         ├── BOOTIA32.EFI
>         └── BOOTX64.EFI
> 
> 2 directories, 2 files
> 
> When the ISO file is loaded into RUFUS to write to a USB I get :
> 
> New ( non working ) ISO :
> 
> RUFUS "sees" the ISO as only being for a target system of "BIOS (or UEFI-CSM)"
> 
> Old ( working ) ISO :
> 
> RUFUS "sees" the ISO as being for a target system of "BIOS or UEFI"
> 
> Dean.
> 
> 

Today (my timezone) there was this on the iPXE  IRC channel:

3:28 < mcb30> Alice: I've just updated the hourly build so that ipxe.iso works as a HDD or CD-ROM image for BIOS,
               x86_64 UEFI, and arm64 UEFI
13:58 < Bob> :-)
14:05 < Charlie> One image to rule them all? Great!
14:44 < Debora> mcb30: does that mean than we can just dd if=ipxe.iso of=/dev/usbkey and that will boot everything
                 (bios/uefi)(x86_64/arm64) ?
14:56 < mcb30> Debora: yes, that should work
15:00 < mcb30> https://twitter.com/ipxe/status/1450446741292167178
15:29 < Erick> mcb30:   ... redacted ...
15:29 < Erick> and congrats on the "fat ipxe multiboot" thats amazing!
17:59 < Debora> mcb30: bravo!!!!
17:59  * Debora now waiting to the recipe to add embedded script to rule the world :D
18:08 < Felice> great!

 


More information about the ipxe-devel mailing list