2019-08-27, 04:09
I'm on the latest master of ipxe and am able to get a script running pulling from a public version of Centos. Here's what runs successfully for me:
This works great but now I want to iterate on pulling from a https url. I changed the url and enabled HTTPS by adding the #define for DOWNLOAD_PROTO_HTTPS in config/general.h.
This is the script as it looks now:
When I run this script, I can see HTTPS in the enabled protocols so I believe I did that right. And on the kernel, initrd calls I get URL ... ok so I believe I'm pulling those down correctly. Unfortunately, the script hangs on boot after printing 'Booting now...'. I tried swapping the order of the initrd and kernel calls as well as adding a sleep as recommended in an another thread but I'm still seeing the same hanging. I'm running this from a usb image using bin/ipxe.usb EMBED=my_file.
Any ideas as to what may be going on? Any debug flags I can set? I'm on the latest ipxe but if there's any other information I can provide, I'd be very happy to.
I'm new to ipxe so there may be something I fundamentally am misunderstanding.
Code:
#!ipxe
# Running this example on machine from USB to prove that boot from iPXE USB image works
echo Starting Script
dhcp
echo After dhcp
set base http://mirror.centos.org/centos/7/os/x86_64
prompt -k 0x197e -t 2000 Press F12 to install CentOS... || exit
kernel ${base}/images/pxeboot/vmlinuz initrd=initrd.img repo=${base}
initrd ${base}/images/pxeboot/initrd.img
boot
This works great but now I want to iterate on pulling from a https url. I changed the url and enabled HTTPS by adding the #define for DOWNLOAD_PROTO_HTTPS in config/general.h.
This is the script as it looks now:
Code:
#!ipxe
echo Booting OS v66
dhcp
initrd https://<MY_URL>/initrd.img
kernel https://<MY_URL>/vmlinuz initrd=initrd.img
echo Sleeping after kernel and initrd ...
sleep 60
echo Booting now ...
boot
When I run this script, I can see HTTPS in the enabled protocols so I believe I did that right. And on the kernel, initrd calls I get URL ... ok so I believe I'm pulling those down correctly. Unfortunately, the script hangs on boot after printing 'Booting now...'. I tried swapping the order of the initrd and kernel calls as well as adding a sleep as recommended in an another thread but I'm still seeing the same hanging. I'm running this from a usb image using bin/ipxe.usb EMBED=my_file.
Any ideas as to what may be going on? Any debug flags I can set? I'm on the latest ipxe but if there's any other information I can provide, I'd be very happy to.
I'm new to ipxe so there may be something I fundamentally am misunderstanding.