PXEboot: Difference between revisions
Brian Wilson (talk | contribs) |
Brian Wilson (talk | contribs) |
||
Line 20: | Line 20: | ||
tftp client: (useful for testing the server) '''tftp-hpa''' | tftp client: (useful for testing the server) '''tftp-hpa''' | ||
You have to dig up a copy of the debian-installer file tree and put it in /var/lib/tftpboot. Then make | You have to dig up a copy of the debian-installer file tree and put it in /var/lib/tftpboot. Then make symlinks from /var/lib/tftpboot/pxelinux.0 and pxelinux.cfg to the real ones lurk in the debian_installer tree. | ||
=== Configuration === | === Configuration === | ||
Line 39: | Line 39: | ||
This tells the client what file to grab via tftp. | This tells the client what file to grab via tftp. | ||
The files for tftp | The files for tftp should be installed in '''/var/lib/tftpboot''' (see comment above on symlinks) | ||
Many Linux distributions have network install support. You just have to poke around to find the files. | Many Linux distributions (including Redhat, Debian, Trustix, Ubuntu, and SuSe) have network install support. You just have to poke around to find the files. | ||
== Booting the client == | == Booting the client == |
Revision as of 00:58, 24 June 2006
I set up my Via EPIA 800 to run Debian using this method. I use it to configure servers at remote locations with just a little bit of help from local people. ("...Now push the reset button. Thanks.")
Using PXEboot with Debian
- Client requests network information from BOOTP / DHCP server
- Client requests kernel via TFTP
On the Debian server
Install these packages
dhcp server: dhcp3-server
tftp server: tftpd-hpa
When the installer asks "Should it be started from inet?", say 'yes'
tftp client: (useful for testing the server) tftp-hpa
You have to dig up a copy of the debian-installer file tree and put it in /var/lib/tftpboot. Then make symlinks from /var/lib/tftpboot/pxelinux.0 and pxelinux.cfg to the real ones lurk in the debian_installer tree.
Configuration
Generally I put a configuration for each machine into /etc/dhcp3/dhcpd.conf so that I have control over what happens when a given machine connects. The critical lines to add to dhcpd.conf are
# PXE-specific configuration directives... next-server 192.168.123.130; # that's this server or could be elsewhere... filename "/pxelinux.0";
host clientname { hardware ethernet mac-address; fixed-address ip address of your chosing; filename "pxelinux.0"; }
This tells the client what file to grab via tftp. The files for tftp should be installed in /var/lib/tftpboot (see comment above on symlinks)
Many Linux distributions (including Redhat, Debian, Trustix, Ubuntu, and SuSe) have network install support. You just have to poke around to find the files.
Booting the client
Set the client to boot from LAN or Network. Then boot it. If you are near the client and can look at the console,
- you should see the "UNDI" boot stuff. Notably you should see the client get the IP address that you set up for it in dhcpd.conf.
- next you should see it connect to the tftp server. It will show a series lines as it tries to find a pxelinux.cfg file; it will uses its MAC address piece by piece and then give up and load pxelinux.cfg/default