I configured isc-dhcp, ipxe and tftpboot so I can boot over network via PXE. It works the ubuntu netinstall image is booting nice with pxelinux.0.
I created a custom live cd with this tutorial https://help.ubuntu.com/community/LiveCDCustomizationFromScratch. It boots nicely in an VM.
Now I wan't to connect this image to my pxe environment. The best would be to boot and append the disk via http. There are plenty of tutorials. But I can't get the squashfs mounted. What is the best way to do this. Do I need pxelinux, do I need NFS? I'm confused about all the different bootloaders.
Help is highly appreciated. Thank you.
part of dhcpd.conf
next-server 10.1.1.1;
if exists user-class and option user-class = "iPXE" {
filename "menu.ipxe";
} else {
filename "undionly.kpxe";
}
and menu.ipxe
#!ipxe
set smartos-build 20121004T212912Z
######## MAIN MENU ###################
:start
menu Welcome
item
item --gap -- ------------------------- Operating systems ------------------------------
item cellos-storage Boot CellOS
item smartos Boot SmartOS (${smartos-build})
item ubuntu Boot Ubuntu Precise 12.04 netinstall
item --gap -- ------------------------------ Utilities ---------------------------------
item shell Enter iPXE shell
item reboot Reboot
item
item exit Exit (boot local disk)
choose --default cellos-storage --timeout 5000 target && goto ${target}
########## UTILITY ITEMS ####################
:shell
echo Type exit to get the back to the menu
shell
set menu-timeout 0
goto start
:reboot
reboot
:exit
exit
########## MENU ITEMS #######################
:cellos-storage
kernel /cellos/storage/cellos-latest/casper/vmlinuz
initrd /cellos/storage/cellos-latest/casper/initrd.lz
#chain http://10.1.1.1/boot/cellos/storage/cellos-latest.iso
boot
# SmartOS Root shadow is "root"
:smartos
kernel /smartos/${smartos-build}/platform/i86pc/kernel/amd64/unix -B root_shadow='$5$2HOHRnK3$NvLlm.1KQBbB0WjoP7xcIwGnllhzp2HnT.mDO7DpxYA'
initrd /smartos/${smartos-build}/platform/i86pc/amd64/boot_archive
boot
:ubuntu
kernel /ubuntu/precise/netinstall/ubuntu-installer/amd64/linux
initrd /ubuntu/precise/netinstall/ubuntu-installer/amd64/initrd.gz
boot
goto start