Post Reply 
 
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
UEFI Network Boot: loop and exec format error
2016-01-06, 22:09 (This post was last modified: 2016-01-06 22:38 by NiKiZe.)
Post: #2
RE: UEFI Network Boot: loop and exec format error
(2016-01-06 22:01)altsysrq Wrote:  Is there a resource I am overlooking for compiling and setting up a UEFI network boot through PXE? Otherwise, I am not sure what I am doing wrong. Any ideas?

Compiling myself:
When attempting to compile iPXE I don't get any errors, but when booting to the ipxe.efi file on the client I get a loop where it tries to download the file, succeeds and then tries to download again. There does not seem to be an error message or I am missing it. Compiled master from last change (Wed, 6 Jan 2016 12:55:08 -0600 (18:55 +0000)). Changing the config in config/general.h does not seem to make a difference, although, I have tried with changes and without. I may be missing something there.

Precompiled:
ipxe.efi downloaded from the bottom of the page here: http://ipxe.org/howto/chainloading

When I ctrl-b and run chain ipxe/menu.ipxe, then select CentOS 6.5 I get "Could not select: Exec format error (http://ipxe.org/2e008081)." Searching for the error I did not find anything. I tried this with a test CentOS menu item with http:// and nfs://.


The boot loop sounds like the one described at http://ipxe.org/howto/chainloading#break...inite_loop

How does the precompiled ipxe.efi behave differently from the one you compiled yourself?

Efi environment only supports booting efi executables. To boot a Linux kernel in EFI mode it needs to be compiled with EFI_STUB enabled. A recent thread with this issue on CentOS 6.5: http://forum.ipxe.org/showthread.php?tid=7726

Edit: Sorry, missed part of your dhcpd.conf
you want something like this :
Code:
next-server 10.10.10.1;
if exists user-class and option user-class = "iPXE" {
      filename "ipxe/menu.ipxe";
  } elsif option architecture-type = 00:09 {
....

First we move out next-server since it is set to the same for all cases.
Next we add an if at the top that runs if it is iPXE that starts, and in that case we send the path to the script instead of the ipxe executable itself.
That way it will stop loop booting

Use GitHub Discussions
VRAM bin
Visit this user's website Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
RE: UEFI Network Boot: loop and exec format error - NiKiZe - 2016-01-06 22:09
initrd - MultimediaMan - 2016-01-07, 23:53
RE: initrd - altsysrq - 2016-01-08, 01:39



User(s) browsing this thread: 1 Guest(s)