Diskless network boot with NFS root
In this article we're going to build a diskless system with the root filesystem (/) as an NFS mount.
No special server requirements. 10 000 RPM disks or faster recommended, and as much RAM as you can get to get the full advantages of caching.
Needs a networkcard that supports PXE (Preboot eXecution Environment, http://en.wikipedia.org/wiki/Preboot_Execution_Environment). Most modern onboard networkcards support PXE, you just have to make sure this is enabled in the BIOS. This can be called "Option ROM" at times.
Using gigabit is highly recommended. Although this will work just fine on 100 megabit or even slower networks, performance will be drasticaly better with gigabit.
How is this supposed to work?
The principle is pretty easy. You configure your DHCP server to supply a boot filename. The client will then search this file on a TFTP server, and execute it. This file will take care of loading your linux kernel, just like grub or lilo does.
With a few kernel command lines, the kernel will recognize and configure the network card and mount the NFS root.