Discussion:
[gPXE] pxe boot macbook: "exec format error (0x2e008001)"
Adrian Zaugg
2013-11-04 00:32:25 UTC
Permalink
Dear List

After some compiling adventures I managed to compile a gPXE-efi module
containing the right driver for my nic to place on my efi system
partition on my macbook pro. I can load gPXE using rEFInd, it connects,
gets an IP and then aborts with:

Could not boot from filename "pxelinux.0": Exec format error (0x2e008001)

Using a PC capable to PXE boot, I get my PXE server's menu. Could anyone
please enlight me, what is going wrong?

Thank you very much!

Regards, Adrian.



More information:
- macbook pro 5,5; nvidia mcp79 nic using forcedeth; EFI64 system
- I compiled on a 64-bit Linux from latest git
- compiling failed on pristine source, I had to edit config/general.h
and delete the line "#define PXE_CMD" as suggesed here:
http://support.etherboot.org/index.php?do=details&task_id=107
- cmd line used: make bin-x86_64-efi/forcedeth.efi

Like this I got forcedeth.efi, which I could place in my esp and start
it from rEFInd.

BTW: I was not able to cross compile on a mac, the information in the
wiki under http://etherboot.org/wiki/macbuild?s[]=efi is partially
outdated and is missing a lot of information to do so successfully. I
could overcome some problems but not all of them.
Shao Miller
2013-11-29 02:36:56 UTC
Permalink
You're trying to boot PXELINUX (pxelinux.0), which expects BIOS, in a (U)EFI
environment? I'm not sure that could ever work; the gPXE build you have
might be stating that PXE Network Bootstrap Programs are not applicable in a
(U)EFI environment. - Shao

-----Original Message-----
From: gpxe-bounces at etherboot.org [mailto:gpxe-bounces at etherboot.org] On
Behalf Of Adrian Zaugg
Sent: Sunday, November 03, 2013 19:32
To: gpxe at etherboot.org
Subject: [gPXE] pxe boot macbook: "exec format error (0x2e008001)"

Dear List

After some compiling adventures I managed to compile a gPXE-efi module
containing the right driver for my nic to place on my efi system
partition on my macbook pro. I can load gPXE using rEFInd, it connects,
gets an IP and then aborts with:

Could not boot from filename "pxelinux.0": Exec format error (0x2e008001)

Using a PC capable to PXE boot, I get my PXE server's menu. Could anyone
please enlight me, what is going wrong?

Thank you very much!

Regards, Adrian.



More information:
- macbook pro 5,5; nvidia mcp79 nic using forcedeth; EFI64 system
- I compiled on a 64-bit Linux from latest git
- compiling failed on pristine source, I had to edit config/general.h
and delete the line "#define PXE_CMD" as suggesed here:
http://support.etherboot.org/index.php?do=details&task_id=107
- cmd line used: make bin-x86_64-efi/forcedeth.efi

Like this I got forcedeth.efi, which I could place in my esp and start
it from rEFInd.

BTW: I was not able to cross compile on a mac, the information in the
wiki under http://etherboot.org/wiki/macbuild?s[]=efi is partially
outdated and is missing a lot of information to do so successfully. I
could overcome some problems but not all of them.
Adrian Zaugg
2013-11-30 11:09:22 UTC
Permalink
Dear Shao

Thank you for your answer. Do I understand it right, that this means,
one has to set up different boot menues on the PXE server for BIOS and
for UEFI clients and thus distinguish between those two systems server side?

Unfortunately I do not know with what clients the people in my network
do use the PXE service, as odd as this sounds.

Best regards and thank you again, Adrian.
Post by Shao Miller
You're trying to boot PXELINUX (pxelinux.0), which expects BIOS, in a (U)EFI
environment? I'm not sure that could ever work; the gPXE build you have
might be stating that PXE Network Bootstrap Programs are not applicable in a
(U)EFI environment. - Shao
-----Original Message-----
From: gpxe-bounces at etherboot.org [mailto:gpxe-bounces at etherboot.org] On
Behalf Of Adrian Zaugg
Sent: Sunday, November 03, 2013 19:32
To: gpxe at etherboot.org
Subject: [gPXE] pxe boot macbook: "exec format error (0x2e008001)"
Dear List
After some compiling adventures I managed to compile a gPXE-efi module
containing the right driver for my nic to place on my efi system
partition on my macbook pro. I can load gPXE using rEFInd, it connects,
Could not boot from filename "pxelinux.0": Exec format error (0x2e008001)
Using a PC capable to PXE boot, I get my PXE server's menu. Could anyone
please enlight me, what is going wrong?
Thank you very much!
Regards, Adrian.
- macbook pro 5,5; nvidia mcp79 nic using forcedeth; EFI64 system
- I compiled on a 64-bit Linux from latest git
- compiling failed on pristine source, I had to edit config/general.h
http://support.etherboot.org/index.php?do=details&task_id=107
- cmd line used: make bin-x86_64-efi/forcedeth.efi
Like this I got forcedeth.efi, which I could place in my esp and start
it from rEFInd.
BTW: I was not able to cross compile on a mac, the information in the
wiki under http://etherboot.org/wiki/macbuild?s[]=efi is partially
outdated and is missing a lot of information to do so successfully. I
could overcome some problems but not all of them.
_______________________________________________
gPXE mailing list
gPXE at etherboot.org
http://etherboot.org/mailman/listinfo/gpxe
Adrian Zaugg
2013-11-30 22:48:06 UTC
Permalink
Hi again

Sorry, I completely forgot, that I do serve different files for efi and
bios clients. I have the following in my dhcpd.conf:

option arch code 93 = unsigned integer 16;
option space pxelinux;
option pxelinux.magic code 208 = string;
option pxelinux.configfile code 209 = text;
option pxelinux.pathprefix code 210 = text;
option pxelinux.reboottime code 211 = unsigned integer 32;
#filename "pxelinux.0";
# see http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=720589
class "pxeclients" {
match if substring (option vendor-class-identifier, 0, 9) =
"PXEClient";

# the gateway is DHCPD + TFTPD
next-server 192.168.10.12;
site-option-space "pxelinux";
if exists dhcp-parameter-request-list {
# Always send the PXELINUX options (specified in
hexadecimal)
option dhcp-parameter-request-list = concat(option
dhcp-parameter-request-list,d0,d1,d2,d3);
}
if option arch = 00:06 {
filename "pxelinux/bootia32.efi";
option pxelinux.configfile "pxelinux.cfg/efi32";
} else if option arch = 00:07 {
filename "pxelinux/bootx64.efi";
option pxelinux.configfile "pxelinux.cfg/efi64";
} else {
filename "pxelinux/pxelinux.0";
option pxelinux.configfile "pxelinux.cfg/bios";
}
}

And on the TFTP Server it looks like:
drwxr-xr-x 12 root root 4096 Nov 6 00:49 .
drwxr-xr-x 4 root root 4096 Nov 28 15:54 ..
drwxr-xr-x 2 root root 4096 Nov 5 22:58 bios
-rw-r--r-- 1 root root 155560 Nov 6 00:16 bootia32.efi
-r--r--r-- 1 root root 162744 Nov 6 00:16 bootx64.efi
drwxrwxr-x 3 root root 4096 Feb 11 2013 debian-installer
drwxr-xr-x 2 root root 4096 Nov 5 22:59 efi32
drwxr-xr-x 2 root root 4096 Nov 5 22:59 efi64
-rw-r--r-- 1 root root 106837 Nov 5 22:40 gpxelinux.0
drwxr-xr-x 4 root root 4096 Feb 21 2013 grml
-rw-r--r-- 1 root root 115540 Oct 15 09:01 ldlinux.c32
-rw-r--r-- 1 root root 117396 Oct 15 09:02 ldlinux.e32
-rw-r--r-- 1 root root 134872 Oct 15 09:02 ldlinux.e64
-rw-r--r-- 1 root root 75356 Nov 5 22:40 lpxelinux.0
-rw-r--r-- 1 root root 25628 Nov 5 23:00 memdisk
drwxr-xr-x 4 root root 4096 Mar 1 2013 mint
drwxr-xr-x 2 root root 4096 Feb 21 2013 pmagic
-rw-r--r-- 1 root root 42744 Nov 5 22:40 pxelinux.0
drwxr-xr-x 2 root root 4096 Nov 5 22:31 pxelinux.cfg
drwxrwxrwx 4 root root 4096 Apr 12 2011 trinity


Regards, Adrian.
Post by Adrian Zaugg
Dear Shao
Thank you for your answer. Do I understand it right, that this means,
one has to set up different boot menues on the PXE server for BIOS and
for UEFI clients and thus distinguish between those two systems server side?
Unfortunately I do not know with what clients the people in my network
do use the PXE service, as odd as this sounds.
Best regards and thank you again, Adrian.
Post by Shao Miller
You're trying to boot PXELINUX (pxelinux.0), which expects BIOS, in a (U)EFI
environment? I'm not sure that could ever work; the gPXE build you have
might be stating that PXE Network Bootstrap Programs are not applicable in a
(U)EFI environment. - Shao
-----Original Message-----
From: gpxe-bounces at etherboot.org [mailto:gpxe-bounces at etherboot.org] On
Behalf Of Adrian Zaugg
Sent: Sunday, November 03, 2013 19:32
To: gpxe at etherboot.org
Subject: [gPXE] pxe boot macbook: "exec format error (0x2e008001)"
Dear List
After some compiling adventures I managed to compile a gPXE-efi module
containing the right driver for my nic to place on my efi system
partition on my macbook pro. I can load gPXE using rEFInd, it connects,
Could not boot from filename "pxelinux.0": Exec format error (0x2e008001)
Using a PC capable to PXE boot, I get my PXE server's menu. Could anyone
please enlight me, what is going wrong?
Thank you very much!
Regards, Adrian.
- macbook pro 5,5; nvidia mcp79 nic using forcedeth; EFI64 system
- I compiled on a 64-bit Linux from latest git
- compiling failed on pristine source, I had to edit config/general.h
http://support.etherboot.org/index.php?do=details&task_id=107
- cmd line used: make bin-x86_64-efi/forcedeth.efi
Like this I got forcedeth.efi, which I could place in my esp and start
it from rEFInd.
BTW: I was not able to cross compile on a mac, the information in the
wiki under http://etherboot.org/wiki/macbuild?s[]=efi is partially
outdated and is missing a lot of information to do so successfully. I
could overcome some problems but not all of them.
_______________________________________________
gPXE mailing list
gPXE at etherboot.org
http://etherboot.org/mailman/listinfo/gpxe
Loading...