UEFI network boot



  • I just received a new machine that I’m trying to boot into fog with no luck. It’s an AMD-A10 box with an MSI A78-E45 motherboard. Everything looks fine until it does the tftpboot. Then it just ignores the tftp, and proceeds to boot its other devices. Dhcpd is working and the system is getting an IP address.

    I turned on as much debugging as I could but did not get much info. Here is what is being reported in syslog.

    [CODE]Apr 14 11:30:39 striker dhcpd[9002]: DHCPDISCOVER from 44:8a:5b:64:f7:cb via eth1
    Apr 14 11:30:40 striker dhcpd[9002]: DHCPOFFER on 192.168.1.21 to 44:8a:5b:64:f7:cb via eth1
    Apr 14 11:30:43 striker dhcpd[9002]: DHCPREQUEST for 192.168.1.21 (192.168.1.1) from 44:8a:5b:64:f7:cb via eth1
    Apr 14 11:30:43 striker dhcpd[9002]: DHCPACK on 192.168.1.21 to 44:8a:5b:64:f7:cb via eth1
    Apr 14 11:30:43 striker in.tftpd[22026]: RRQ from 192.168.1.21 filename undionly.kpxe
    Apr 14 11:30:43 striker in.tftpd[22026]: tftp: client does not accept options
    Apr 14 11:30:43 striker in.tftpd[22027]: RRQ from 192.168.1.21 filename undionly.kpxe
    [/CODE]

    I’m really baffled by the tftp: client does not accept options. Is it just that in.tftpd isn’t ready for UEFI?

    Any ideas. I’m stumped on this one.


  • Moderator

    I follow. So you would either have to do some odd multiple boot/reboot thing to set a task from the host or set tasks from the server which could then do its musical kernel dance. That’s a bit more than I have the time or knowledge for right now, but its good to know the support is out there.


  • Senior Developer

    My kernels have been UEFI “enabled” kernels for quite a long time. Booting to UEFI PXE is a little more difficult. There’s no menu access quite yet for iPXE, so the only way to “UEFI” boot from PXE is to point at a specific kernel after the snponly.efi file.


  • Moderator

    I see, so it is included in the FOG 0.33 kernels. I’ll get back to poking about then.


  • Senior Developer

    See the link in my signature. Then you have tell ipxe to boot directly to that kernel.


  • Moderator

    So… that UEFI kernel… where might one find that lovely build of yours?


  • Senior Developer

    FOG UEFI Kernel has already been created.

    To truly perform a Legacy Network Boot, you have to disable the Network Stack on the BIOS as well. Just telling it to Legacy boot isn’t always enough.



  • Thanks for the quick reply Tom. I tried legacy boot and it just ignored me. For some reason, what looks like a legacy network boot option in bios must be buggy. It always falls into a UEFI IP4 network boot. It also has UEFI IP6 booting too.

    I was reading up on network UEFI booting and Red-hat has an excellent discussion on how to configure dhcp to load an efi boot kernel.

    [url]https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Installation_Guide/s1-netboot-pxe-config-efi.html[/url]

    The dhcpd.conf has an option to tell if it’s an efi boot request, and if so which arch it is, otherwise it uses a default.
    That may be an option for getting a fog UEFI kernel started.


  • Senior Developer

    The “client does not accept options” issue isn’t a problem on its own. It’s actually a normal message even for systems that successfully pxe boot.

    The UEFI pxe boot does not work at the moment. No system works properly yet. There are methods to get UEFI to pxe boot, but they’re very limited. As in, you have to boot to a kernel, not to a menu, and that doesn’t work for our methods.

    I’d recommend changing the UEFI Network stack to a legacy Oprom and pxe boot that way. Once complete you will have to change order of the boot up other wise it will try to boot from legacy to UEFI which doesn’t work either.


Log in to reply
 

346
Online

39.3k
Users

11.0k
Topics

104.4k
Posts

Looks like your connection to FOG Project was lost, please wait while we try to reconnect.