LTSP - TFTP, PXE and pxelinux.0 issue

13,028

PXE boot goes from parent of tftp directory specified in xinetd or some other super server. Here is mine:

[root@sl6 dhcp]# more /etc/xinetd.d/tftp 
# default: off
# description: The tftp server serves files using the trivial file transfer \
#   protocol.  The tftp protocol is often used to boot diskless \
#   workstations, download configuration files to network-aware printers, \
#   and to start the installation process for some operating systems.
service tftp
{
    disable = no
    socket_type     = dgram
    protocol        = udp
    wait            = yes
    user            = root
    server          = /usr/sbin/in.tftpd
    server_args     = -s /var/lib/tftpboot
    per_source      = 11
    cps         = 100 2
    flags           = IPv4
}

So you either need to change the server arg path so that it is point to the location of your images or you move the image so that they are located here:

/var/lib/tftpboot/ltsp/i386/images/pxelinux.0
/var/lib/tftpboot/ltsp/i386/images/i386.img
Share:
13,028

Related videos on Youtube

sawreals
Author by

sawreals

Whoever you are whatever you do you can get lucky or can get really unlucky. Play your Game Theory Optimal game and you will not regret. What does it mean? Be a good human being Work hard Stay healthy

Updated on September 18, 2022

Comments

  • sawreals
    sawreals almost 2 years

    After my ltsp-build-client --arch i386 All went well, but for some reasons tftpd-hpa wasn't installed there were no /var/lib/tftpboot folder.

    So I had to install tftpd-hpa manually. DHCP is working well but it can't find pxelinux.0 file (it just doesn't exist).

    Here is my DHCP server conf.

    authoritative;
    
    subnet 10.10.10.0 netmask 255.255.255.0 {
        range 10.10.10.20 10.10.10.250;
        option domain-name "example.net";
        option domain-name-servers 10.10.10.1;
        option broadcast-address 10.10.10.255;
        option routers 10.10.10.1;
        option subnet-mask 255.255.255.0;
        option root-path "/opt/ltsp/i386";
        if substring( option vendor-class-identifier, 0, 9 ) = "PXEClient" {
            filename "/ltsp/i386/pxelinux.0";
        } else {
            filename "/ltsp/i386/nbi.img";
        }
    }
    

    client machines are saying:

    PXE-T01: File not found
    PXE-E3B: TFTP Error - File Not Found
    
    PXE-MOF: Exiting Intel PXE ROM.
    

    The question: How to generate the pxelinux.0 file and/or nbi.img file? There is image though in /opt/ltsp/i386/images/i386.img But I'm not sure what's that image for.

    TFTP Server is running by: /usr/sbin/in.tftpd --listen --user tftp --address 0.0.0.0:69 --secure /var/lib/tftpboot

    the /var/lib/tftpboot folder is empty.

    Or another question. How to Generate pxelinux.0 and nbi.img file again?

  • sawreals
    sawreals almost 13 years
    Thank you for the answer. In the system there is no /etc/xinetd.d at all. BTW I have copied the contents from /opt/ltsp/i386/boot folder to the /var/lib/tftpboot/ltsp/i386. And things are now working fine.