EFI, UEFI, PXE: FreeBSD-12.1-RELEASE-amd64-bootonly.iso boot from SAN device failed, error 0x7f22208e

Victor Sudakov vas at sibptus.ru
Tue Dec 29 07:40:27 UTC 2020

Dave Hayes wrote:
> > > > Was this happening over network (PXE boot) or from a physical medium
> > > > like USB drive/CD-ROM ?  
> > > 
> > > Actually both. However, this thread implied that the mfsBSD/ramdisk
> > > techniques did not work, and I wanted to provide a datapoint to the
> > > contrary.
> > > 
> > > We have one installation which gets the ISO image over FTP and boots from
> > > that,  
> > 
> > Can you please elaborate on that? Is this installation using UEFI or
> > legacy mode loader? What tools are used? pxelinux/memdisk or anything else?
> This particular installation is a Dell DRAC that has the capability of booting
> given an http url for a bootable iso. There actually is still some problem
> booting the hybrid disk in BIOS mode, but UEFI works just fine. Highly
> effective on an isolated network. 

Ah, is this more like IPMI booting, where you can attach an ISO image to
the IPMI console which has its own networking stack, management
interface etc?

> I don't think this is quite what you are after, though I could be mistaken. 
> I did try the PXEBOOT idea on the exact same hardware platform and
> was unable to get it to work, back at FreeBSD 10->11. 

I have pxelinux+pxeboot+mfsBSD working fine, but with legacy BIOS.

> Do you know of any technical reading that can get one up to speed on the low
> level details of UEFI booting and how it is different from BIOS? One problem in
> debugging all these methods is the ever-present lack of documentation. :/ 

No, I don't. My knowledge of the thing is very rudimentary. I know that
the UEFI "BIOS" looks for the "efi" type partition in the GPT, or for
the EF partition in the MBR, finds a EFI executable under some special
path like /EFI/BOOT/BOOTX64.EFI, and this EFI executable is supposed to
know how to load the main OS.

Therefore my cheat sheet for making a UEFI bootable freebsd UFS volume is
like this:

gpart create -s gpt ada1 # will become ada0
gpart add -s200M -t efi ada1
gpart add -s2G -t freebsd-swap ada1
gpart add -t freebsd-ufs ada1
gpart bootcode -p /boot/boot1.efifat -i 1 ada1    

Instead of "gpart bootcode -p /boot/boot1.efifat -i 1 ada1" we can just
as well run 
"newfs_msdos /dev/ada1p1 ; mount_msdosfs /dev/ada1p1 /mnt ; rsync -r ... /mnt"

Victor Sudakov,  VAS4-RIPE, VAS47-RIPN
2:5005/49 at fidonet http://vas.tomsk.ru/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 455 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/freebsd-questions/attachments/20201229/5aecf1ca/attachment.sig>

More information about the freebsd-questions mailing list