iPXE discussion forum

Full Version: HTTP ISO boot fails when iSCSI target sanhooked, works otherwise
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Hello-

If I do this I get the failure shown at the end:
iPXE> ifconf
Configuring (net0 c4:54:44:23:e7:99)...... ok
iPXE> sanhook --drive 0x80 --no-describe http://10.0.0.1/ubuntu-14.04-server-amd64.iso
Registered SAN device 0x80
iPXE> sanhook --drive 0x81 iscsi:10.0.0.3:::1:rbd_base
Registered SAN device 0x81
iPXE> sanboot
Booting from SAN device 0x80
Boot from SAN device 0x80 failed: Exec format error (http://ipxe.org/2e852001)

However, if I only hoot the first target (the ISO) and never hook the second target (iSCSI target) I can boot the ISO just fine. I can even get the failure shown above, then just unhook the second target, and it boots just fine from the ISO:
iPXE> sanunhook --drive 0x81
Unregistered SAN device 0x81
iPXE> sanboot

Is this expected? Is there some restriction on having different types of targets mapped at the same time?

Ideally what I want to do is connect the Ubuntu ISO and an iSCSI target a the same time, then boot, to see if the Ubuntu installer will pick up the iSCSI target through iBFT. Thanks!
You can only hook one drive at a time. There is a thread on the mailing-list talking about removing this limitation, but no solution has been reached yet.

You should instead hook the target you plan to install to and use Ubuntu netboot features to start the installer. I'm sure that the details you find at https://gist.github.com/robinsmidsrod/22...-ipxe-L318 should get you started, together with the additional details in the attached preseed file in the same gist. I'm not sure if the preseed is usable without changes on 14.04. It was created for 12.04. I had to modify it a bit when I upgraded from 10.04 to 12.04, so I assume you might need to tweak it a bit for 14.04.
Ah, thanks for clarifying! It would indeed be interesting if that limitation could be removed. Thanks for the pointer on alternate approaches.
You can try and boot Ubuntu installer another way. I use

initrd http://serverip:8080/ubuntu1404/casper/initrd.lz
chain http://serverip:8080/ubuntu1404/casper/vmlinuz.efi boot=casper netboot=nfs nfsroot=serverip:/pxe/ubuntu1404/ quiet splash --
boot
Reference URL's