2016-05-23, 21:43
Hey there,
I'm completely new to network booting/iPXE, etc., and I'm having some problems getting a network boot setup working. I'm hoping somebody here can help.
Here's a quick overview of my setup:
1. I have configured a DHCP server to instruct chainloading of either ipxe.efi or undionly.kpxe depending on whether or not the boot client is UEFI or BIOS
2. The DHCP server sends the client to a TFTP server running on a QNAP TurboNAS to serve up the correct file
3. The same QNAP TurboNAS has the mini.iso for Ubuntu 16.04 mounted with read-only guest permissions and available via NFS
4. I have built iPXE w/ DOWNLOAD_PROTO_NFS enabled
Up to here is where things seem to fall apart; I Ctrl+B in to the command line to start playing with stuff but I can't seem to get the kernel to load.
I know that NFS is working, because I can get to files such as the initrd without issue:
Works just fine. But when I try to get the kernel to load, I get Exec format error. From cursory Googling I'm going to assume that the kernel image doesn't have the EFI stub compiled properly but I'm not totally sure. I have tried several different commands:
Is this an EFI issue, or am I just missing something monumentally obvious? Any help on this would be incredibly appreciated.
I'm completely new to network booting/iPXE, etc., and I'm having some problems getting a network boot setup working. I'm hoping somebody here can help.
Here's a quick overview of my setup:
1. I have configured a DHCP server to instruct chainloading of either ipxe.efi or undionly.kpxe depending on whether or not the boot client is UEFI or BIOS
2. The DHCP server sends the client to a TFTP server running on a QNAP TurboNAS to serve up the correct file
3. The same QNAP TurboNAS has the mini.iso for Ubuntu 16.04 mounted with read-only guest permissions and available via NFS
4. I have built iPXE w/ DOWNLOAD_PROTO_NFS enabled
Up to here is where things seem to fall apart; I Ctrl+B in to the command line to start playing with stuff but I can't seem to get the kernel to load.
I know that NFS is working, because I can get to files such as the initrd without issue:
Code:
dhcp
initrd nfs://guest@<server ip>/Ubuntu1604Mini/initrd.gz
Works just fine. But when I try to get the kernel to load, I get Exec format error. From cursory Googling I'm going to assume that the kernel image doesn't have the EFI stub compiled properly but I'm not totally sure. I have tried several different commands:
Code:
kernel nfs://guest@<server ip>/Ubuntu1604Mini/linux #doesn't work
kernel nfs://guest@<server ip>/Ubuntu1604Mini/linux initrd=initrd.gz #doesn't work
kernel nfs://guest@<server ip>/Ubuntu1604Mini/linux root=/dev/nfs nfsroot=guest@<server ip>:/Ubuntu1604Mini initrd=initrd.gz #doesn't work
kernel nfs://guest@<server ip>/Ubuntu1604Mini/linux root=/dev/nfs netboot=nfs nfsroot=guest@<server ip>:/Ubuntu1604Mini initrd=initrd.gz #doesn't work
Is this an EFI issue, or am I just missing something monumentally obvious? Any help on this would be incredibly appreciated.