iPXE discussion forum

Full Version: Building Menus with iPXE?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
I want to use iPXE as a replacement to my existing PXE installation with syslinux stuff.

However I can't figure out the building of menus. The wiki doesn't show me any samples, the screenshot there contains all I would need.

This is what happens when I try to use the menus:

http://pwnhofer.at/screenshots/2013-01-27_18-13-00.png

I use the latest git repository.
As I mentioned to you on IRC, the image is unreachable, I end up in an HTTP redirect loop.

If you need an extensive iPXE menu example you could use this script I use at home: https://gist.github.com/2234639

It should give you a good overview of how to do a bunch of things...
Link works for me, but I added an attachment here.
Also uploading with Chrome doesn't work for me.

I found your script prior to posting here and it failed due to the error messages in the screenshot.

If I remember correctly this ipxe-image has been created with the rom-o-matic.
If you look in the banner message you can see that your binary doesn't have the word "Menu" listed together with AoE, iSCSI, HTTP and such. I'm going to assume that however that binary was assembled, it was assembled without the menu feature. That is not surprising, as the rom-o-matic available in the contrib dir has not been updated to take the menu feature into account. I would suggest that you create yourself a Linux virtual machine (if you don't already have a Linux system available) and compile ipxe from source. It should be fairly straight-forward. If not, you can also download a prebuilt ipxe.usb/ipxe.iso or undionly.kpxe from http://ipxe.org/download. It should include the menu feature.
Yeah I already created a VM to use the rom-o-matic. I tried a few different scripts to embed and I thought it would be easier with the rom-o-matic I set up there.
I'm gonna try compiling directly.

Edit: Solved it, now I can make those menus, which leads to my next question:

Is it possible to let ipxe boot clonezilla?

Code:
MENU LABEL Clonezilla Live 32-bit
kernel /czilla/vmlinuz
append initrd=/czilla/initrd.img boot=live live-config noswap nolocales edd=on nomodeset ocs_live_run="ocs-live-general" ocs_live_extra_param="" ocs_live_keymap="/usr/share/keymaps/i386/qwertz/de-latin1-nodeadkeys.kmap.gz" ocs_live_batch="no" ocs_lang="en_US.UTF-8" vga=788 nosplash fetch=tftp://192.168.0.9/czilla/filesystem.squashfs
this was the old pxe code, I can replace tftp which http in every occasion.

Edit2: Did it!
This is my ipxe entry:

Code:
:cz32
kernel http://192.168.0.9/clonezilla/x86/vmlinuz
initrd http://192.168.0.9/clonezilla/x86/initrd.img
imgargs vmlinuz boot=live live-config noswap nolocales edd=on nomodeset ocs_live_run="ocs-live-general" ocs_lang="en_US.UTF-8" ocs_live_keymap="/usr/share/keymaps/i386/qwertz/de-latin1-nodeadkeys.kmap.gz" vga=788 nosplash fetch=http://192.168.0.9/clonezilla/x86/filesystem.squashfs
boot
This isn't iPXE related, you should chainload into the iPXE ROM, and then have that download your PXELinux as you normally would. From there you just use PXE Linux menus.
Reference URL's