Revision 5 as of 2006-03-27 21:00:13

Clear message

Introduction

This will guide you through running an Ubuntu server as PXE install server. You'll need to run a DHCP server on your network, not necessarily this server but you do need one. Some of the packages we'll install come from universe, so make sure you have it listed as a repository.

This document is work in progress, I'm typing it as I do this myself.

Installing needed packages

You'll need to install a few packages

sudo apt-get install atftpd syslinux inetutils-inetd

If this is also going to be your DHCP server, install DHCPD

sudo apt-get install dhcp3-server

Configure dhcpd

If your pxe server is also your dhcp server, you'll need something like this in /etc/dhcp3/dhcpd.conf

subnet 192.168.0.0 netmask 255.255.255.0 {
        range 192.168.0.100 192.168.0.200;
        filename "/tftpboot/pxelinux.0";
}

If you have an existing dhcp server, you should point it to your pxe server by doing something like the following

subnet 192.168.0.0 netmask 255.255.255.0 {
    <other config here>
    filename "pxelinux.0"
    next-server <pxe host>;
}

Configure atftpd

atftpd has a config file in /etc/default/atftpd which by default states that it should use inetd. The options passed to atftpd when it starts are thus found in /etc/inetd.conf

The defaults should be fine for us.

Create the tftpboot directory and it's needed files

sudo mkdir /tftpboot
sudo ln /usr/lib/syslinux/pxelinux.0 /tftpboot/