DRBL Package makes it much easier to implement Linux diskless client environment than setting up TFTP, DHCP, NFS, NAT-router, netboot-enabled kernels, and so on individually.
For complete steps, refer to http://drbl.sourceforge.net/ .
Here’s the step-by-step record of mine.
I used Xubuntu 9.10 as a host, however, other Ubuntu 9.10 (Karmic) should be very similar, unless identical.
DRBL is also available for other distributions such as Fedora, Debian, etc.
———————————————
If you need to use proxy, set $http_proxy and $ftp_proxy.
$ export http_proxy=http://proxy.yourdomain.com:3128
$ export ftp_proxy=http://proxy.yourdomain.com:3128
$ sudo apt-get remove network-manager
$ sudo cp /etc/network/interfaces /etc/network/interfaces.backup
$ sudo vi /etc/network/interfaces
$ cat /etc/network/interfaces
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.168.1.4
netmask 255.255.255.0
gateway 192.168.1.1
auto eth1
iface eth1 inet static
address 192.168.100.254
netmask 255.255.255.0
$ wget -q http://drbl.sourceforge.net/GPG-KEY-DRBL -O- | sudo apt-key add –
$ sudo vi /etc/apt/sources.list
## add following lines
deb http://archive.ubuntu.com/ubuntu karmic main restricted universe multiverse # (Or any Ubuntu mirror site near you)
deb http://drbl.sourceforge.net/drbl-core drbl stable
## end
$ sudo apt-get update
$ apt-get install drbl
$ sudo /opt/drbl/sbin/drblsrv -i
## Selecting the default values worked.
$ sudo /opt/drbl/sbin/drblpush -i
## Selecting default values worked.
## When the server gets updated packages, the step above needs to be done again, according to the instruction.
Now, the server is ready for PXE-booting the clients.