First, download the webconverger ISO - I used version 8.0 since I already had it kicking around.
You need a DHCP server, a TFTP server and an NFS server. Of course, the workstation has to support PXE booting, and be on the same network as these 3 servers.
You can use one physical machine for all three services, but in my scenario I have two machines, one acts as DHCP server, and the other is both the TFTP and NFS server.
DHCP
Using dhcp3-server.. entry in /etc/dhcp3/dhcpd.conf:
host temp {Note: Here the "next-server" is required to redirect to the TFTP server.. obviously change the MAC and ip addresses according to your workstation and servers. Be sure to restart your DHCP server.
hardware ethernet 00:14:c2:c4:5f:38;
fixed-address temp.abc.com;
option host-name "temp";
option root-path "192.168.202.4:/tftpboot/webc/";
if substring (option vendor-class-identifier, 0, 9) = "PXEClient" {
next-server 192.168.202.4;
filename "webc/pxelinux.0"; }
}
Ok - thats the easy part.. now you have to prep for the TFTP/NFS server setup:
For PXE booting, you need syslinux, nfs-kernel-server, and tftpd-hpa.
TFTP
First, make root tftpboot directory for webconverger, then mount the ISO and copy files into the root dir:
mkdir -p /var/lib/tftpboot/webc/webconverger/8.0
mount -o loop webc8.iso /mnt
cp -a /mnt/* /var/lib/tftpboot/webc/webconverger/8.0
umount /mnt
cp /usr/lib/syslinux/pxelinux.0 /var/lib/tftpboot/webc
cp /usr/lib/syslinux/vesamenu.c32 /var/lib/tftpboot/webc
mkdir /var/lib/tftpboot/webc/pxelinux.cfg
In /var/lib/tftpboot/webc/pxelinux.cfg create a file called "default" with the following contents:
DEFAULT vesamenu.c32
TIMEOUT 10
ONTIMEOUT wc
PROMPT 0
NOESCAPE 1
MENU BEGIN Webconverger
MENU TITLE Webconverger
MENU INCLUDE webconverger/webconverger.menu
MENU END
NOTE: The TIMEOUT 10 is basically allowing no time to show menu.. I just want it booting "wc" entry (ONTIMEOUT wc) - adjust accordingly.
Last thing needed is the file /var/lib/tftpboot/webc/webconverger/webconverger.menu:
# nfsroot ip is pxe server's address
LABEL wc
MENU LABEL Webconverger 8
KERNEL /webconverger/8.0/live/vmlinuz
APPEND initrd=/webconverger/8.0/live/initrd.img boot=live config homepage=http://www.google.com hostname=webconverger nonetworking nopersistent quickreboot nomodeset noroot splash username=webc vga=current quiet netboot=nfs nfsroot=192.168.202.4:/var/lib/tftpboot/webc/webconverger/8.0
TEXT HELP
Boot Webconverger 8.0
ENDTEXT
NFS
Essentially you just need one entry /etc/exports:
/var/lib/tftpboot/webc *(ro,sync,no_subtree_check)
Then do: exportfs -a
Workstation
Enter BIOS and configure station to boot from network.
You can customize by workstation, by creating additional entries in pxelinux.cfg.. a file called "01-00-14-c2-c4-5f-38" for example, will be used for workstation with MAC of 00:14:c2:c4:5f:38. Essentially you just copy the "default" file and adjust the ONTIMEOUT to point to a LABEL in webconverger.menu.