Linux – PXE boot Linux – what goes where

bootlinuxpxe-boot

I have an x86-64 machine that can boot via PXE, and want to boot a live Fedora 17. I do not want to install it, I just want to run as though booting the live CD.

For a server I have (read: am stuck with) a windows XP SP 3 host with a DHCP and TFTP server on it. Not optimal. Did I mention I'm stuck with it yet?

Googling has turned up too much information regarding installing over the net, or configuring linux based servers for me to find the signal I need in the noise.

I just need to know (1) what files to place in the TFTP server's directory, and (2) what to name as the boot file in DHCP.

I have the live CD iso on hand, and a burned image of it as well. If some of the CD files need to be tweaked a bit to make the system look to the network instead of the CD, I need a way to do it from windows (or a link to pre-tweaked files) if possible.

Best Answer

OK, first let's clear up a few misconceptions:

As MailQ has pointed out, most diskless server configurations require NFS (since you mentioned ubuntu in the comments, check out their instructions). It doesn't HAVE to be NFS (the Network File System from Sun), but it does have to be A Network File System -- you can't PXE load a whole OS image over the network1, and TFTP is there just to hand you a kernel that can boot.
Your kernel then looks to the network for the resources it needs (like a root filesystem, typically mounted over NFS) -- In the immortal slogan of Sun, pioneer of the diskless workstation, The Network is The Computer, or in the modern parlance Your data is in the cloud - in this case your local ethernet cloud...

A LiveCD by contrast is a completely different animal - you are booting off the CD, not over the network, and you have the CD's Filesystem to contain your OS (usually in a magic "squashFS" format these days). That's 600MB to 4GB of space - substantially more than you'd want to be shoving around over ethernet.

Now as you pointed out, there are NFS servers available for Windows (Services for Unix / Subsystem for Unix Applications has one, and it's quite adequate and easy to configure. Technet has further details). If you want to set this up in a production environment you would need a Server installation of Windows, with SFU/SUA installed and properly configured.

Assuming the requirements above have not discouraged you, The Fedora folks have a guide on how to set up diskless Fedora systems. Translating the UNIXisms to their equivalent configuration details on your Windows TFTP and NFS servers is left as an exercise for the reader.


1 - Technically you probably can PXE load the whole OS disk image, but you certainly shouldn't: The volume of traffic would be sheer insanity, you wouldn't be able to save data anywhere permanently, and I've never seen such a beast in the wild.