PxeBooting (often pronounced "pixie boot") is a way of booting a server off of a network server. It requires support at the BIOS level though I have heard that it's possible to configure the Linux boot loader GRUB to do PxeBooting.
As I understand it the basic flow goes like this (there are *many* details missing in this):
- On boot the BIOS (if configured correctly) requests a DHCP/bootp IP address.
- The computer then trys to connect to a tftp server (by default the same as the responding DHCP server).
- It looks for a boot image in the root of the tftp server, downloads it and boots off of it.
This then starts off some other installation process (such as a RedhatLinux KickStart).
There seems to be more good information in a fairly, understandable format, here.
See also: ClusterSoftwareResearch, SystemImager
Notes
Finding the Config File
> Can i have different /pxelinux.cfg/default files so that i can define
> different locations for my boot files.
Answer One
I think you can. From pxelinux.doc:
PXELINUX will search for its config file on the boot server in the following way:
First, it will search for the config file using its own IP address in upper case hexadecimal, e.g. 192.0.2.91 -> C000025B (you can use the included progam "gethostip" to compute the hexadecimal IP address for any host.)
Answer Two
You can't have multiple 'default' files (that's why it's called default ...).
What you can do is group them by IP address (e.g. the '10.1.*.*' net would be referenced via pxelinux.cfg/0A01) or give the dhcp server the filename with the pxelinux special options (options 211-214 AFAIR, but see the manpage for this). Both work like a charm.
BTW: You can also work with symlinks in the tftp server directory, since the tftp server dereferences the symlinks to the actual file. So symlinking '0A01 -> default' would get the 10.1.*.* net to use the default config,