Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: iPXE geeft Exec format error  (gelezen 606 keer)

Offline RayRay

  • Lid
iPXE geeft Exec format error
« Gepost op: 2017/02/28, 14:57:10 »
Hola!

Laat ik me eerst even snel voorstellen:
Ik ben Ray, 15 jaar ervaring met ICT en sinds 5 jaar met Linux.
Alles geleerd door fora als dit en uiteraard met YouTube  8-)

Een maand of 2 geleden heb ik een iPXE server opgezet met Ubuntu 14.04 LTS en dat werkte perfect, gisteren weer geprobeerd en loop nu tegen een probleem aan. Hopelijk dat iemand mij kan helpen.

Ter info: ik heb 14.04 LTS en 16.04 LTS geprobeerd

Wat heb ik gedaan/geinstalleerd :
- isc-dhcp-server
- tftpd-hpa
- apache2
- mysql-server
- Java 8  (add-apt-repository ppa:webupd8team/java -y + apt-get update + apt-get install oracle-java8-installer)
- Static IP (10.10.1.1)
- Interface toegevoegd aan /etc/default/isc-dhcp-server
- gedit /etc/dhcp/dhcpd.conf 
    En dat ziet er zo uit:
ddns-update-style none;
ddns-update-style none;
log-facility local7;
default-lease-time 600;
max-lease-time 7200;

allow booting;
allow bootp;

option space ipxe;
option ipxe-encap-opts code 175 = encapsulate ipxe;
option ipxe.priority code 1 = signed integer 8;
option ipxe.keep-san code 8 = unsigned integer 8;
option ipxe.skip-san-boot code 9 = unsigned integer 8;
option ipxe.syslogs code 85 = string;
option ipxe.cert code 91 = string;
option ipxe.privkey code 92 = string;
option ipxe.crosscert code 93 = string;
option ipxe.no-pxedhcp code 176 = unsigned integer 8;
option ipxe.bus-id code 177 = string;
option ipxe.bios-drive code 189 = unsigned integer 8;
option ipxe.username code 190 = string;
option ipxe.password code 191 = string;
option ipxe.reverse-username code 192 = string;
option ipxe.reverse-password code 193 = string;
option ipxe.version code 235 = string;
option iscsi-initiator-iqn code 203 = string;
# Feature indicators
option ipxe.pxeext code 16 = unsigned integer 8;
option ipxe.iscsi code 17 = unsigned integer 8;
option ipxe.aoe code 18 = unsigned integer 8;
option ipxe.http code 19 = unsigned integer 8;
option ipxe.https code 20 = unsigned integer 8;
option ipxe.tftp code 21 = unsigned integer 8;
option ipxe.ftp code 22 = unsigned integer 8;
option ipxe.dns code 23 = unsigned integer 8;
option ipxe.bzimage code 24 = unsigned integer 8;
option ipxe.multiboot code 25 = unsigned integer 8;
option ipxe.slam code 26 = unsigned integer 8;
option ipxe.srp code 27 = unsigned integer 8;
option ipxe.nbi code 32 = unsigned integer 8;
option ipxe.pxe code 33 = unsigned integer 8;
option ipxe.elf code 34 = unsigned integer 8;
option ipxe.comboot code 35 = unsigned integer 8;
option ipxe.efi code 36 = unsigned integer 8;
option ipxe.fcoe code 37 = unsigned integer 8;
option ipxe.vlan code 38 = unsigned integer 8;
option ipxe.menu code 39 = unsigned integer 8;
option ipxe.sdi code 40 = unsigned integer 8;
option ipxe.nfs code 41 = unsigned integer 8;

option ipxe.no-pxedhcp 1;

subnet 10.10.1.0 netmask 255.255.255.0 {
option subnet-mask 255.255.255.0;
option broadcast-address 10.10.1.255;
option routers 10.10.1.1;
option domain-name-servers 10.10.1.1;
   range 10.10.1.5 10.10.1.240;
   if exists user-class and option user-class = "iPXE" {
   filename "boot.ipxe";
   } else {
   filename "undionly.kpxe";
   }
   }

- boot.ipxe staat juist ingesteld

- menu.ipxe ziet er zo uit

set server 10.10.1.1

console --picture background.png

colour --basic 1 7

:start
Klantnaam Start menu

item --gap --             
item --key a example1     name1
item --key b example2     name2
item --key c example3 name2
item reboot               Reboot computer
item --gap --
item --key x exit         Exit iPXE and continue BIOS boot
choose --timeout ${menu-timeout} --default ${menu-default} selected || goto cancel
set menu-timeout 0
goto ${selected}

:cancel
echo You cancelled the menu, dropping you to a shell

:shell
echo Type 'exit' to get the back to the menu
shell
set menu-timeout 0
goto start

:failed
echo Booting failed, dropping to shell
goto shell

:reboot
reboot

:exit
exit

:config
config
goto start

:back
set submenu-timeout 0
clear submenu-default
goto start

############ MAIN MENU ############

:example1
initrd http://${server}/Images/file.iso
chain http://${server}/Images/memdisk iso stack=80000 || goto failed
goto start


:example2
initrd http://${server}/Images/file.iso
chain http://${server}/Images/memdisk iso stack=80000 || goto failed
goto start


:example3
initrd http://${server}/Images/file.iso
chain http://${server}/Images/memdisk iso stack=80000 || goto failed
goto start


Alle servers werken gewoon, Cliƫnt krijgt een IP, chainload werkt tot na menu.ipxe
dan komt het volgende:

http://10.10.1.1/Images/menu.ipxe... OK
console: command not found
could not boot image: Exec format error (http://ipxe.org/2e022001)
No more network devices

Ik heb alle scrips nagelopen en heb geen fout kunnen vinden, de laatste server werkte gewoon alleen nu ineens heb ik dit.
Wel merk ik dat de tftp server soms niet vanzelf start, maar als ik hem start blijft hij gewoon werken.

Hopelijk is er iemand die me kan helpen.

Alvast super bedankt!