netboot from NFS in an UEFI environment

Lucian Carata lc525 at cam.ac.uk
Wed Mar 20 17:21:45 UTC 2019


I am setting a number of x86_64 FreeBSD machines for running experiments and would like to netboot FreeBSD from an UEFI environment. 

On UEFI, the configuration I have at the moment allows me to pick whether to run iPXE or boot from local drives, depending on choices made centrally (with configuration management tools). When booting iPXE, I would like to chainload a bootloader that netboots a FreeBSD image from NFS. Unfortunatelly, being in UEFI mode, I can't just use boot/pxeboot. 

I've tried chainloading boot/loader.efi but without success. The loader starts but doesn't make much progress:

Setting currdev to net0:
Setting currdev to net0:
Failed to find bootable partition
Press any key to interrupt reboot in 3 seconds
/
can't load 'kernel'

Looking through the source code (stand/efi/loader/main.c) I see that there is an attempt to list devices, with a comment saying "this handle list is only for netboot" -- which shows that at least netbooting on UEFI has been considered, but I'm not sure how to pass the path of the NFS root so that the boot continues.

Any ideas on how to do this (or something equivalent) would be greatly appreciated.

===
Lucian


More information about the freebsd-hackers mailing list