iPXE menu error
-
Hi !
First of all thanks to all the fog team and contributors fog rocks and is so useful to many people.
I have a problem i wish someone give me a clue how to solve it.
Recently i noticed a problem in iPXE advanced menu.
I try to boot iso from fog and manipulate a lot the iPXe menu entries .When i select an entry as Default Item i can no longer see the iPXE advanced menu correctly.
I have this screen :
Maybe i can debug with iPXE commands by i’m a noob concerning iPXE syntax.
Can someone help me with this ?
In advance thanks.
EDIT : I went to this page :
https://ipxe.org/err/461620 -
@fogman4 Well When I’ve seen the iPXE menu not right is when the FOG Admin creates a custom menu item that has a minus ( - ) in the title, and iPXE thinks its a command option.
So if you just created a new advanced menu item that has a space minus text " -Xxxxxxx"sequence that is probably the problem.
To debug this issue use a web browser and connect to
http://<fog_server_ip>/fog/service/ipxe/boot.php?mac=00:00:00:00:00
That will print out the text of the fog iPXE menu. Post that here and I will try to see if I find the problem. Its a bit like hunting for a needle in a haystack. So if you know what you added last that would help narrow it down. -
Thank you @george1421 for those suggestions . I removed all characters which could cause troubles and it didn’t solve this problem.
Here is the printed output of the iPXE menu . I have many entries because of tests.
#!ipxe set fog-ip 192.168.100.10 set fog-webroot fog set boot-url https://${fog-ip}/${fog-webroot} cpuid --ext 29 && set arch x86_64 || set arch i386 goto get_console :console_set colour --rgb 0x00567a 1 || colour --rgb 0x00567a 2 || colour --rgb 0x00567a 4 || cpair --foreground 7 --background 2 2 || goto MENU :alt_console cpair --background 0 1 || cpair --background 1 2 || goto MENU :get_console console --picture https://192.168.100.10/fog/service/ipxe/bg.png --left 100 --right 80 && goto console_set || goto alt_console :MENU menu colour --rgb 0xff0000 0 || cpair --foreground 1 1 || cpair --foreground 0 3 || cpair --foreground 4 4 || item --gap Host is NOT registered! item --gap -- ------------------------------------- item fog.local Boot from hard disk item fog.memtest Run Memtest86+ item fog.reginput Perform Full Host Registration and Inventory item fog.reg Quick Registration and Inventory item fog.deployimage Deploy Image item fog.multijoin Join Multicast Session item fog.sysinfo Client System Information (Compatibility) item os.Ubuntu.20.04 Ubuntu Desktop 20.04 item os.Ubuntu.20.04.EFI Ubuntu 20.04 EFI item os.Ubuntu.20.04.1.HTTP_AUTOINSTALL Ubuntu 20.04.1 HTTP autoinstall Method item os.Ubuntu.Desktop.20.04.FTP os.Ubuntu.20.04 FTP item os.Ubuntu.20_04D.auto.HTTPS AUTO 20.04 VIa HTTPS item os.Debian.10.9_Live_via_ftp Debian 10 9 Live via ftp squashfs item os.Debian.10.9_PRESEED Debian 10 9 Live BIOSBOOT Luks item os.debian.10.9.HTTPS debian over https Preseed item os.debian.tftp via full tftp choose --default os.Debian.10.9 Live via ftp --timeout 3000 target && goto ${target} :fog.local sanboot --no-describe --drive 0x80 || goto MENU :fog.memtest kernel memdisk initrd=memtest.bin iso raw initrd memtest.bin boot || goto MENU :fog.reginput kernel bzImage32 loglevel=4 initrd=init_32.xz root=/dev/ram0 rw ramdisk_size=375000 keymap=fr web=https://192.168.100.10/fog/ consoleblank=0 debug rootfstype=ext4 storage=192.168.100.10:/images/ storageip=192.168.100.10 nvme_core.default_ps_max_latency_us=0 loglevel=4 mode=manreg imgfetch init_32.xz boot || goto MENU :fog.reg kernel bzImage32 loglevel=4 initrd=init_32.xz root=/dev/ram0 rw ramdisk_size=375000 keymap=fr web=https://192.168.100.10/fog/ consoleblank=0 debug rootfstype=ext4 storage=192.168.100.10:/images/ storageip=192.168.100.10 nvme_core.default_ps_max_latency_us=0 loglevel=4 mode=autoreg imgfetch init_32.xz boot || goto MENU :fog.deployimage login params param mac0 ${net0/mac} param arch ${arch} param username ${username} param password ${password} param qihost 1 isset ${net1/mac} && param mac1 ${net1/mac} || goto bootme isset ${net2/mac} && param mac2 ${net2/mac} || goto bootme param sysuuid ${uuid} :fog.multijoin login params param mac0 ${net0/mac} param arch ${arch} param username ${username} param password ${password} param sessionJoin 1 isset ${net1/mac} && param mac1 ${net1/mac} || goto bootme isset ${net2/mac} && param mac2 ${net2/mac} || goto bootme param sysuuid ${uuid} :fog.sysinfo kernel bzImage32 loglevel=4 initrd=init_32.xz root=/dev/ram0 rw ramdisk_size=375000 keymap=fr web=https://192.168.100.10/fog/ consoleblank=0 debug rootfstype=ext4 storage=192.168.100.10:/images/ storageip=192.168.100.10 nvme_core.default_ps_max_latency_us=0 loglevel=4 mode=sysinfo imgfetch init_32.xz boot || goto MENU :os.Ubuntu.20.04 kernel tftp://${fog-ip}/os/ubuntu/20.04/vmlinuz initrd tftp://${fog-ip}/os/ubuntu/20.04/initrd imgargs initrd=initrd root=/dev/nfs ro ip=dhcp auto=true keymap=fr hostname=ubuntu vga=normal nfsroot=${fog-ip}:/images/os/ubuntu/20.04/ boot || goto MENU param sysuuid ${uuid} :os.Ubuntu.20.04.EFI kernel http://${fog-ip}/ubuntu/20.04/vmlinuz ip=dhcp hostname=ubuntu20TESTdomain=local initrd http://${fog-ip}/ubuntu/20.04/initrd imgargs ip=dhcp autoinstall url=http://${fog-ip}/ubuntu/20.04/ubuntu-20.04.1-desktop-amd64.iso ds=nocloud-net;s=http://${fog-ip}/ubuntu/20.04/autoinstall boot || goto MENU param sysuuid ${uuid} :os.Ubuntu.20.04.1.HTTP_AUTOINSTALL kernel tftp://${fog-ip}/os/ubuntu/20.04D/vmlinuz initrd tftp://${fog-ip}/os/ubuntu/20.04D/initrd imgargs vmlinuz initrd=initrd root=/dev/ram0 ramdisk_size=1800000 ip=dhcp url=ftp://${fog-ip}/fog/autoinstall/ubuntu-20.04.1-desktop-amd64.iso ro autoinstall net.ifnames=0 biosdevname=0 ipv6.disable=1 ds=nocloud-net\;s=https://192.168.100.10/fog/autoinstall/ boot param sysuuid ${uuid} :os.Ubuntu.Desktop.20.04.FTP kernel tftp://${fog-ip}/os/ubuntu/20.04D/vmlinuz initrd tftp://${fog-ip}/os/ubuntu/20.04D/initrd imgargs vmlinuz initrd=initrd ip=dhcp root=/dev/ram0 ramdisk_size=1800000 url=ftp://192.168.100.10/ubuntu-20.04.2.0-desktop-amd64.iso net.ifnames=0 biosdevname=0 ipv6.disable=1 locale=fr_FR.UTF-8 keyboard-configuration/layoutcode=fr hostname=TESTX-L ro automatic-ubiquity url=ftp://192.168.100.10/preseed.cfg DEBCONF_DEBUG=5 boot || goto MENU param sysuuid ${uuid} :os.Ubuntu.20_04D.auto.HTTPS kernel tftp://${fog-ip}/os/ubuntu/20.04D/vmlinuz initrd tftp://${fog-ip}/os/ubuntu/20.04D/initrd imgargs vmlinuz initrd=initrd ip=dhcp root=/dev/ram0 ramdisk_size=1800000 ip=dhcp url=https://192.168.100.10/fog/autoinstall/ubuntu-20.04.2.0-desktop-amd64.iso.orig ro boot param sysuuid ${uuid} :os.Debian.10.9_Live_via_ftp kernel tftp://${fog-ip}/os/debian/vmlinuz initrd tftp://${fog-ip}/os/debian/initrd imgargs vmlinuz initrd=initrd boot=live components fetch=ftp://${fog-ip}/filesystem.squashfs boot || goto MENU param sysuuid ${uuid} :os.Debian.10.9_PRESEED kernel tftp://${fog-ip}/os/debian/linux initrd tftp://${fog-ip}/os/debian/initrd.gz imgargs linux initrd=initrd.gz boot=live url=ftp://${fog-ip}/debian-live-10.9.0-amd64-standard.iso auto=true url=ftp://${fog-ip}/debseed.cfg boot || goto MENU param sysuuid ${uuid} :os.debian.10.9.HTTPS kernel tftp://${fog-ip}/os/debian/vmlinuz initrd tftp://${fog-ip}/os/debian/initrd imgargs vmlinuz initrd=initrd ip=dhcp root=/dev/ram0 ramdisk_size=1800000 ip=dhcp url=https://192.168.100.10/fog/autoinstall/debian-live-10.9.0-amd64-standard.iso ro boot param sysuuid ${uuid} :os.debian.tftp kernel tftp://${fog-ip}/os/debian/linux auto=true url=tftp://${fog-ip}/os/debian/debseed.cfg interface=auto hostname=debian-10 domain=local initrd=initrd.gz vga=788 noprompt quiet imgfetch tftp://${fog-ip}/os/debian/initrd.gz boot || goto MENU param sysuuid ${uuid} :bootme chain -ar https://192.168.100.10/fog/service/ipxe/boot.php##params || goto MENU autoboot
-
@fogman4 This looks suspicious.
choose --default os.Debian.10.9 Live via ftp --timeout 3000 target && goto ${target}
The tag name should not have spaces. Looking at the actual menu item
param sysuuid ${uuid} :os.Debian.10.9_Live_via_ftp kernel tftp://${fog-ip}/os/debian/vmlinuz initrd tftp://${fog-ip}/os/debian/initrd imgargs vmlinuz initrd=initrd boot=live components fetch=ftp://${fog-ip}/filesystem.squashfs
I wonder if the underscores are breaking the default option.
:os.Debian.10.9_Live_via_ftp
They are translating to white space characters. Use dashes or dots in the tag name and see if that fixes it.
-
@george1421 : Right !
I removed all offending spaces and voilà !
Thank you very much .
PS : By the way i noticed the error also occurs when i select multiple entries as : default item.