2

I'm trying to create a PXE server on my raspberry pi, but if I try to boot, the client shows the Error "Failed to load ldlinux.c32". This is my folder structure of the tftp folder: folder structure

Here is my pxelinux.cfg configuration:

DEFAULT vesamenu.c32
PROMPT 0
TIMEOUT 300
MENU TITLE PXE Network Boot Menu
LABEL local
MENU LABEL BOOT FROM LOCAL DISK
MENU DEFAULT
LOCALBOOT 0
LABEL memtest
MENU LABEL memtest86+ v4.20
KERNEL memtest

And this is my DHCP configuration:

subnet 10.0.0.0 netmask 255.255.252.0 {
option ntp-servers de.pool.ntp.org;
option domain-name ".pudding.net";
option domain-name-servers 10.0.0.5;
option broadcast-address 10.0.3.255;
option subnet-mask 255.255.252.0;
option routers 10.0.0.1;
allow client-updates;
allow unknown-clients;
max-lease-time 1814400;
default-lease-time 604800;
range 10.0.0.100 10.0.0.200;
filename "/pxelinux.0";
next-server 10.0.0.5;
}

I configured it like this tutorial: Tutorial

It doesn't worked for me, with the same error, because of this I copied the structure from a friend, it doesn't worked with the same error. But it works for him.

Has anyone an idea, how to fix this problem? I don't know very well about syslinux and I would be happy if anyone can help me!

  • Note that there's pxelinux.0 (for legacy BIOS-based PXE boot on x86) and pxelinuxEFI64.efi (for UEFI-based 64-bit x86) both in the same directory. There should be a separate set of .c32 files for each of those: even if the names are the same, the contents aren't. What does file ldlinux.c32 say? And you might also want to check the logs of your TFTP server (or increase its logging level) to see which exact files have been retrieved by the PXE client at this point. – telcoM Aug 17 at 15:43
0

For me it was my Openwrt router (18.06.1) that I use to point to the real tftpserver.

This config that works in Openwrt (19.07.2) didn't work in an other environment and resulted in the ldlinux.c32 error.

tftp-root=/tftpboot
dhcp-boot=pxelinux.0,pxeserver,x.x.x.x

After a lot of googling I finally found http://lists.thekelleys.org.uk/pipermail/dnsmasq-discuss/2014q3/008767.html and by adding this piece of code to dnsmasq.conf things started to work.

dhcp-userclass=set:ipxe-boot,iPXE
dhcp-vendorclass=set:pxe,PXECLient
pxe-service=x86PC,"Boot via PXE", pxelinux.0, x.x.x.x

I think there must be something similar with your setup....

Hope it helps you, or someone else !

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.