Dell 7010 Lenovo L530 with UEFI enabled, won't network boot.


  • Senior Developer

    Do you have the ipxescriptfile in the src directory?



  • It’s still failing for me… This is what I did…

    [CODE][root@localhost ~]# git clone git://git.ipxe.org/ipxe.git
    Cloning into ‘ipxe’…
    remote: Counting objects: 45298, done.
    remote: Compressing objects: 100% (12084/12084), done.
    remote: Total 45298 (delta 34119), reused 42536 (delta 31587)
    Receiving objects: 100% (45298/45298), 10.89 MiB | 539.00 KiB/s, done.
    Resolving deltas: 100% (34119/34119), done.
    Checking connectivity… done.
    [root@localhost ~]# cd ipxe/scr
    -bash: cd: ipxe/scr: No such file or directory
    [root@localhost ~]# cd ipxe/src
    [root@localhost src]# ls
    arch core doxygen.cfg image libgcc net util
    bin crypto drivers include Makefile tests
    config doc hci interface Makefile.housekeeping usr
    [root@localhost src]# cd config
    [root@localhost config]# ls
    branding.h config_romprefix.c dhcp.h nap.h timer.h
    colour.h config_route.c entropy.h reboot.h umalloc.h
    config.c config_usb.c general.h sanboot.h usb.h
    config_ethernet.c console.h ioapi.h serial.h vbox
    config_fc.c crypto.h isa.h settings.h
    config_infiniband.c defaults local sideband.h
    config_net80211.c defaults.h named.h time.h
    [root@localhost config]# vi general.h
    [root@localhost config]# cd
    [root@localhost ~]# ls
    anaconda-ks.cfg ipxe
    [root@localhost ~]# cd ipxe
    [root@localhost ipxe]# ls
    contrib COPYING COPYING.GPLv2 COPYING.UBDL README src
    [root@localhost ipxe]# cd src
    [root@localhost src]# ls
    arch config crypto doxygen.cfg hci include libgcc Makefile.housekeeping tests util
    bin core doc drivers image interface Makefile net usr
    [root@localhost src]# cd config
    [root@localhost config]#
    [root@localhost config]# ls
    branding.h config_romprefix.c dhcp.h nap.h timer.h
    colour.h config_route.c entropy.h reboot.h umalloc.h
    config.c config_usb.c general.h sanboot.h usb.h
    config_ethernet.c console.h ioapi.h serial.h vbox
    config_fc.c crypto.h isa.h settings.h
    config_infiniband.c defaults local sideband.h
    config_net80211.c defaults.h named.h time.h
    [root@localhost config]# vi console.h
    [root@localhost config]# make bin-x86_64-efi/ipxe.efi EMBED=ipxescriptfile DEBUG=efi_init,efi_snp
    make: *** No rule to make target ‘bin-x86_64-efi/ipxe.efi’. Stop.
    [root@localhost config]# make bin-x86_64-efi/ipxe.efi EMBED=ipxescriptfile DEBUG=efi_init,efi_snp
    make: *** No rule to make target ‘bin-x86_64-efi/ipxe.efi’. Stop.
    [root@localhost config]# ls
    branding.h config_romprefix.c dhcp.h nap.h timer.h
    colour.h config_route.c entropy.h reboot.h umalloc.h
    config.c config_usb.c general.h sanboot.h usb.h
    config_ethernet.c console.h ioapi.h serial.h vbox
    config_fc.c crypto.h isa.h settings.h
    config_infiniband.c defaults local sideband.h
    config_net80211.c defaults.h named.h time.h
    [root@localhost config]# cd
    [root@localhost ~]# ls
    anaconda-ks.cfg ipxe
    [root@localhost ~]# cd ipxe
    [root@localhost ipxe]# ls
    contrib COPYING COPYING.GPLv2 COPYING.UBDL README src
    [root@localhost ipxe]# cd src
    [root@localhost src]# ls
    arch core doxygen.cfg image libgcc net util
    bin crypto drivers include Makefile tests
    config doc hci interface Makefile.housekeeping usr
    [root@localhost src]# make bin-x86_64-efi/ipxe.efi EMBED=ipxescriptfile DEBUG=efi_init,efi_snp[/CODE]

    It starts building… stuff is happening… then…

    [CODE][BUILD] bin-x86_64-efi/elf.o
    [BUILD] bin-x86_64-efi/script.o
    [BUILD] bin-x86_64-efi/png.o
    [BUILD] bin-x86_64-efi/efi_image.o
    [BUILD] bin-x86_64-efi/segment.o
    make: *** No rule to make target ‘ipxescriptfile’, needed by ‘bin-x86_64-efi/embedded.o’. Stop.
    [root@localhost src]# [/CODE]


  • Senior Developer

    I guess you are best off following the step by step instructions in Tom’s post (‘Build iPXE from source’). The first part is about building normal BIOS iPXE binaries (undionly.kpxe). So after cloning the repository (step one) and changing into the source directory (step two) you better skip 3, 4, 5 and 6 and jump straight to step one of building an EFI binary!

    Make the changes in config/general.h (config/console.h is ok as it is for EFI) according to Tom’s example and then run the make command to build the binary:
    [CODE]$ make bin-x86_64-efi/ipxe.efi EMBED=ipxescriptfile DEBUG=efi_init,efi_snp

    [FINISH] bin-x86_64-efi/ipxe.efi
    rm bin-x86_64-efi/version.ipxe.efi.o
    $ sudo cp bin-x86_64-efi/ipxe.efi /tftpboot
    $ make bin-x86_64-efi/snponly.efi EMBED=ipxescriptfile DEBUG=efi_init,efi_snp

    [FINISH] bin-x86_64-efi/snponly.efi
    rm bin-x86_64-efi/version.snponly.efi.o
    $ sudo cp bin-x86_64-efi/snponly.efi /tftpboot
    $ sudo chown root:root /tftpboot/*.efi[/CODE]



  • [CODE]make: *** No rule to make target ‘ipxe.efi’. Stop.[/CODE]

    [CODE]make: *** No rule to make target ‘…’. Stop.[/CODE]

    Also, I have zero idea what I’m doing with this… it’s all totally foreign territory.

    I tried following these:
    [url]http://fogproject.org/forum/threads/build-ipxe-from-source.10152/[/url]
    [url]http://fogproject.org/wiki/index.php/Building_undionly.kpxe[/url]
    [url]http://fogproject.org/forum/threads/elitepad-1000.12596/page-2#post-44071[/url]
    [url]http://fogproject.org/wiki/index.php/Filename_Information[/url]

    I think I’m going to need a little more help doing this…


  • Senior Developer

    Well then, pack the Lenovo thing away for a minute. We need to focus on one thing and as it seems we are way closer with Dell than we are with Lenovo here in this case. Please compile iPXE with debugging on to see what goes wrong…



  • Just tried ipxe.efi with the Lenovo L530 using my home FOG server using dnsmasq.

    It seems like it didn’t even get the file.

    I did make a copy of ipxe.efi to ipxe.0
    I did change the ltsp.conf file to point to ipxe.0
    I did restart dnsmasq.

    Also, this particular FOG server I just tested with works fine on other computers in the house using undionly.kpxe


  • Senior Developer

    [quote=“Wayne Workman, post: 45233, member: 28155”]They just sit there for a minute or two saying “Initializing devices…” and then fail.[/quote]
    AFAIK this should definitely be iPXE already! So file is being loaded via TFTP fine. Then we get to the interesting part. (U)EFI support in iPXE. Still a bit of a riddle to me. I think you need to look into compiling your own binaries to be able to take this to the next level!

    See my post here: [url]http://fogproject.org/forum/threads/pxe-boot-from-yoga-2s-using-usb-to-ethernet-adapter.12638/#post-44486[/url]
    Try ‘DEBUG=efi_init,efi_snp’ as a start and work your way from this point. Let us know about your findings!



  • Just ran a capture on our DHCP server and the underlying NICs for our virtualized FOG server.

    I’ve confirmed it gets the right options in DHCP, asks for the ipxe.efi file, and it looks like it gets the file.

    So… This comes down to the files themselves.

    [url="/_imported_xf_attachments/1/1856_UEFI_Communications.zip?:"]UEFI_Communications.zip[/url]


Log in to reply
 

282
Online

7.1k
Users

14.3k
Topics

135.2k
Posts