It took a bunch of time, but I was able to, finally, get this to work on my network.
I have: DDWRT router (dnsMasq), Freenas Server (9.2.1 for tftp and NFS)
- unpack the CD into a directory on the server
- Share the directory via NFS
- Set up tftp server
- put pxelinux.0 and appropriate config file in the tftp directory
The troubles I was having were with ddwrt/freenas being a bit different than using linux server for everything (this underpins many of the howtos on the net)
In ddwrt, you need to make sure you put the appropriate DNSMasq commands in the correct box in its configuration
DDWRT: Under 'Services', there is a box labeled DNSMasq. Under "Additional DNSMasq Options" put the appropriate TFTP info
"dhcp-boot=pxelinux.0,<server_name>,<server_IP>" If yours does not have a name, just leave it blank and put in the IP after 2 commas.
on Freenas, you turn on the tftp service and select the directory where pxelinux.0 is. I suggest that you put the extracted iso contents in a folder in the tftp directory as it keeps things together.
Under freenas, all shared directories are all under '/mnt/<nas_pool_name>' in my case it is called 'first_NAS', and my pxe directory is called 'pxelinux'
so my tftp directory is "/mnt/first_NAS/pxe_linux"
I unpacked the full iso into the directory '/mnt/first_NAS/pxe_linux/ubuntu'. There are a bunch of howtos on this step.
In the NFS shares section, you have to export this directory with the full CD contents and make sure it is 'Maproot user = root' and 'Maproot group = wheel'
At this point, you need to make sure that the command in pxelinux.cfg will boot the live CD. I have a menu of a number of images, but the 13.10 live CD boots with this (edit to your configuration - key edits are in bold):
This is a minor edit to the command that boots the iso found in /isolinux/txt.cfg ('try Ubuntu without installing').
label xubuntu 13.10 -64 menu label xubuntu -64 Live - NFS
kernel xubuntu/casper/vmlinuz # the directory under the tftp server where the kernel is same directory where initrd.lz lives
append initrd=xubuntu/casper/initrd.lz file=/cdrom/preseed/xubuntu.seed boot=casper vga=1 netboot=nfs nfsroot=192.168.2.198:/mnt/first_NAS/pxe_linux/xubuntu nosplash --
Hope this helps someone. I beat my head against the monitor until I figured out that the biggest problem I was facing was a buggy network card driver that caused a kernel panic at every boot! Now I am trying to put this fixed driver in the xubuntu directory on my server. I have been unsuccessful, so far, as it seems that many howtos are also out of date with the current iso.