5 Replies Latest reply on Jul 25, 2019 12:15 AM by jburen

    Unable to UEFI-PXE Boot Host - Getting generic parsing boot.cfg error

    drewwrobel Lurker

      I have a Linux Server running DHCP, HTTP and ATFTP that I use for supporting PXE booting hosts for automating our ESXi deployments.

       

      We have some new servers that default to UEFI PXE Boot.  I can change the BIOS to Legacy BIOS as a work-around.  But I'd lilke to get the UEFI

       

      I've read the various documenation and have the mboot.efi file setup, as well as updated dhcpd.conf.

       

      Checking the server logs, I see the host pull over the mboot.efi and the boot.cfg file.

       

      After a few seconds I get the following message on the screen.

       

      Configuration error while parsing /tftpboot/boot//boot.cfg

      Fatal error: 19 (Timeout)

       

      Here is the copy of the boot.cfg file...

       

       

      bootstate=0

      title=Loading ESXi 6.5U3 Lenovo Image 20190308

      timeout=5

      prefix=esxi65

      kernel=tboot.b00

      kernelopt=ks=http://192.168.36.1/esxi/ks6.5.cfg

      modules=b.b00 --- jumpstrt.gz --- useropts.gz --- features.gz --- k.b00 --- chardevs.b00 --- a.b00 --- user.b00 --- uc_intel.b00 --- uc_amd.b00 --- sb.v00 --- s.v00 --- lsi_mr3.v00 --- lsi_msgp.v00 --- lsi_msgp.v01 --- bnxtnet.v00 --- elx_esx_.v00 --- brcmfcoe.v00 --- elxiscsi.v00 --- elxnet.v00 --- lpfc.v00 --- i40en.v00 --- igbn.v00 --- intel_nv.v00 --- ixgben.v00 --- concrete.v00 --- filetran.v00 --- fupb.v00 --- fwupdate.v00 --- immpasst.v00 --- pciinfo.v00 --- nmlx4_co.v00 --- nmlx4_en.v00 --- nmlx4_rd.v00 --- nmlx5_co.v00 --- nmlx5_rd.v00 --- qcnic.v00 --- qedentv.v00 --- qedf.v00 --- qedrntv.v00 --- qfle3.v00 --- qfle3f.v00 --- qfle3i.v00 --- scsi_qed.v00 --- qlnative.v00 --- ata_liba.v00 --- ata_pata.v00 --- ata_pata.v01 --- ata_pata.v02 --- ata_pata.v03 --- ata_pata.v04 --- ata_pata.v05 --- ata_pata.v06 --- ata_pata.v07 --- block_cc.v00 --- char_ran.v00 --- ehci_ehc.v00 --- hid_hid.v00 --- ima_qla4.v00 --- ipmi_ipm.v00 --- ipmi_ipm.v01 --- ipmi_ipm.v02 --- lsi_msgp.v02 --- misc_cni.v00 --- misc_dri.v00 --- mtip32xx.v00 --- ne1000.v00 --- nenic.v00 --- net_bnx2.v00 --- net_bnx2.v01 --- net_cdc_.v00 --- net_cnic.v00 --- net_e100.v00 --- net_e100.v01 --- net_enic.v00 --- net_fcoe.v00 --- net_forc.v00 --- net_igb.v00 --- net_libf.v00 --- net_mlx4.v00 --- net_mlx4.v01 --- net_nx_n.v00 --- net_tg3.v00 --- net_usbn.v00 --- net_vmxn.v00 --- nhpsa.v00 --- ntg3.v00 --- nvme.v00 --- nvmxnet3.v00 --- ohci_usb.v00 --- pvscsi.v00 --- qflge.v00 --- sata_ahc.v00 --- sata_ata.v00 --- sata_sat.v00 --- sata_sat.v01 --- sata_sat.v02 --- sata_sat.v03 --- sata_sat.v04 --- scsi_aac.v00 --- scsi_adp.v00 --- scsi_aic.v00 --- scsi_bnx.v00 --- scsi_bnx.v01 --- scsi_fni.v00 --- scsi_hps.v00 --- scsi_ips.v00 --- scsi_isc.v00 --- scsi_lib.v00 --- scsi_meg.v00 --- scsi_meg.v01 --- scsi_meg.v02 --- scsi_mpt.v00 --- scsi_mpt.v01 --- scsi_mpt.v02 --- scsi_qla.v00 --- shim_isc.v00 --- shim_isc.v01 --- shim_lib.v00 --- shim_lib.v01 --- shim_lib.v02 --- shim_lib.v03 --- shim_lib.v04 --- shim_lib.v05 --- shim_vmk.v00 --- shim_vmk.v01 --- shim_vmk.v02 --- smartpqi.v00 --- uhci_usb.v00 --- usb_stor.v00 --- usbcore_.v00 --- vmkata.v00 --- vmkplexe.v00 --- vmkusb.v00 --- vmw_ahci.v00 --- xhci_xhc.v00 --- emulex_e.v00 --- btldr.t00 --- weaselin.t00 --- esx_dvfi.v00 --- esx_ui.v00 --- lsu_hp_h.v00 --- lsu_lsi_.v00 --- lsu_lsi_.v01 --- lsu_lsi_.v02 --- lsu_lsi_.v03 --- native_m.v00 --- rste.v00 --- vmware_e.v00 --- vsan.v00 --- vsanheal.v00 --- vsanmgmt.v00 --- tools.t00 --- lnvcusto.v00 --- xorg.v00 --- imgdb.tgz --- imgpayld.tgz

      build=

      updated=0

       

       

      The 'esxi65' directory is in the same location as boot.cfg.

       

      I don't know how else to get additional information to help fix the boot.cfg problem.

        • 1. Re: Unable to UEFI-PXE Boot Host - Getting generic parsing boot.cfg error
          jburen Hot Shot
          vExpert

          I'm not quite sure if its the cause of your problem but the documentation says to copy boot.cfg to /tftpboot/boot.cfg and you get an error about /tftpboot/boot/boot.cfg.

          • 2. Re: Unable to UEFI-PXE Boot Host - Getting generic parsing boot.cfg error
            drewwrobel Lurker

            The /tftpboot/boot/boot.cfg was due to the DHCP using tftpboot/boot/pxelinux.0 for the Legacy PXE Boot Process.  The process just looked in the same directory.

             

            I changed the configuration to pull the file from /tftpboot/boot.cfg and still getting the same issue.

             

            I've copied over the default ESXi 6.5 boot.cfg file over and still getting the parsing error.

             

             

            I even copied the installation media into the /tftpboot directory, leaving the prefix= stanza blank...no change.

             

            here is the copy from the system that mboot.efi and boot.cfg are pulled over successfully.

             

            Jul 15 15:11:06 imagingserver dhcpd: DHCPDISCOVER from 9c:5a:44:00:00:bb via bond0

            Jul 15 15:11:07 imagingserver dhcpd: DHCPOFFER on 192.168.36.2 to 9c:5a:44:00:00:bb via bond0

            Jul 15 15:11:10 imagingserver dhcpd: DHCPREQUEST for 192.168.36.2 (192.168.36.1) from 9c:5a:44:00:00:bb via bond0

            Jul 15 15:11:10 imagingserver dhcpd: DHCPACK on 192.168.36.2 to 9c:5a:44:00:00:bb via bond0

            Jul 15 15:11:10 imagingserver atftpd[26364]: Serving /tftpboot/mboot.efi to 192.168.36.2:1769

            Jul 15 15:11:10 imagingserver atftpd[26364]: Serving /tftpboot/mboot.efi to 192.168.36.2:1770

            Jul 15 15:11:11 imagingserver atftpd[26364]: Serving /tftpboot/01-9c-5a-44-00-00-bb/boot.cfg to 192.168.36.2:1771

            Jul 15 15:11:11 imagingserver atftpd[26364]: Serving /tftpboot/boot.cfg to 192.168.36.2:1772

            Jul 15 15:11:11 imagingserver atftpd[26364]: Serving /tftpboot/boot.cfg to 192.168.36.2:1773

            Jul 15 15:11:35 imagingserver atftpd[26364]: timeout: retrying...

            Jul 15 15:11:40 imagingserver atftpd[26364]: timeout: retrying...

            Jul 15 15:11:45 imagingserver atftpd[26364]: timeout: retrying...

            Jul 15 15:11:50 imagingserver atftpd[26364]: timeout: retrying...

            Jul 15 15:11:55 imagingserver atftpd[26364]: timeout: retrying...

             

            I wish there was a way to turn on some kind of debugging to see what ESXi is doing.

            • 3. Re: Unable to UEFI-PXE Boot Host - Getting generic parsing boot.cfg error
              jburen Hot Shot
              vExpert

              I see you're serving a specific boot.cfg in the MAC address folder but also a generic boot.cfg. I'm not sure if that will work. I think I would try to use the generic one first. So remove the 01- from the folder name.

               

              In which folder did you copy the ESXi installation files? And can you show the contents of the boot.cfg?

              • 4. Re: Unable to UEFI-PXE Boot Host - Getting generic parsing boot.cfg error
                drewwrobel Lurker

                I'm only serving up the generic boot.cfg file.  The process is checking for a MAC-Address specific boot.cfg, but there isn't any.

                 

                The ESXi Installation Files are copied into the directory /tftpboot/esxi65-hpe

                 

                Here is the boot.cfg file and the directory where the ISO image is...

                 

                pbysystemimager2:/tftpboot # cat /tftpboot/boot.cfg

                bootstate=0

                title=Loading ESXi 6.5U3 HPE Image 201906

                timeout=5

                prefix=esxi65-hpe

                kernel=tboot.b00

                kernelopt=ks=http://192.168.36.1/esxi/ks6.5-hpe.cfg

                #kernelopt=runweasel cdromBoot

                modules=b.b00 --- jumpstrt.gz --- useropts.gz --- features.gz --- k.b00 --- chardevs.b00 --- a.b00 --- user.b00 --- uc_intel.b00 --- uc_amd.b00 --- sb.v00 --- s.v00 --- lsi_mr3.v00 --- scsi_mpt.v00 --- bnxtnet.v00 --- bnxtroce.v00 --- elx_esx_.v00 --- brcmfcoe.v00 --- elxiscsi.v00 --- elxnet.v00 --- lpfc.v00 --- amsd.v00 --- bootcfg.v00 --- conrep.v00 --- cru.v00 --- fc_enabl.v00 --- hponcfg.v00 --- ilo.v00 --- oem_buil.v00 --- scsi_hpd.v00 --- scsi_hpv.v00 --- smx_prov.v00 --- ssacli.v00 --- testeven.v00 --- i40en.v00 --- igbn.v00 --- ixgben.v00 --- nmlx4_co.v00 --- nmlx4_en.v00 --- nmlx4_rd.v00 --- nmlx5_co.v00 --- nmlx5_rd.v00 --- nmst.v00 --- smartpqi.v00 --- nhpsa.v00 --- qcnic.v00 --- qedentv.v00 --- qedf.v00 --- qedrntv.v00 --- qfle3.v00 --- qfle3f.v00 --- qfle3i.v00 --- scsi_qed.v00 --- qlnative.v00 --- ata_liba.v00 --- ata_pata.v00 --- ata_pata.v01 --- ata_pata.v02 --- ata_pata.v03 --- ata_pata.v04 --- ata_pata.v05 --- ata_pata.v06 --- ata_pata.v07 --- block_cc.v00 --- char_ran.v00 --- ehci_ehc.v00 --- hid_hid.v00 --- ima_qla4.v00 --- ipmi_ipm.v00 --- ipmi_ipm.v01 --- ipmi_ipm.v02 --- lsi_msgp.v00 --- lsi_msgp.v01 --- misc_dri.v00 --- mtip32xx.v00 --- ne1000.v00 --- nenic.v00 --- net_cdc_.v00 --- net_e100.v00 --- net_e100.v01 --- net_enic.v00 --- net_fcoe.v00 --- net_forc.v00 --- net_libf.v00 --- net_nx_n.v00 --- net_tg3.v00 --- net_usbn.v00 --- net_vmxn.v00 --- ntg3.v00 --- nvme.v00 --- nvmxnet3.v00 --- ohci_usb.v00 --- pvscsi.v00 --- qflge.v00 --- sata_ahc.v00 --- sata_ata.v00 --- sata_sat.v00 --- sata_sat.v01 --- sata_sat.v02 --- sata_sat.v03 --- sata_sat.v04 --- scsi_aac.v00 --- scsi_adp.v00 --- scsi_aic.v00 --- scsi_fni.v00 --- scsi_ips.v00 --- scsi_isc.v00 --- scsi_lib.v00 --- scsi_meg.v00 --- scsi_meg.v01 --- scsi_meg.v02 --- scsi_mpt.v01 --- scsi_mpt.v02 --- scsi_qla.v00 --- shim_isc.v00 --- shim_isc.v01 --- shim_lib.v00 --- shim_lib.v01 --- shim_lib.v02 --- shim_lib.v03 --- shim_lib.v04 --- shim_lib.v05 --- shim_vmk.v00 --- shim_vmk.v01 --- shim_vmk.v02 --- uhci_usb.v00 --- usb_stor.v00 --- usbcore_.v00 --- vmkata.v00 --- vmkplexe.v00 --- vmkusb.v00 --- vmw_ahci.v00 --- xhci_xhc.v00 --- emulex_e.v00 --- btldr.t00 --- weaselin.t00 --- esx_dvfi.v00 --- esx_ui.v00 --- lsu_hp_h.v00 --- lsu_lsi_.v00 --- lsu_lsi_.v01 --- lsu_lsi_.v02 --- lsu_lsi_.v03 --- lsu_lsi_.v04 --- native_m.v00 --- rste.v00 --- vmware_e.v00 --- vsan.v00 --- vsanheal.v00 --- vsanmgmt.v00 --- tools.t00 --- xorg.v00 --- imgdb.tgz --- imgpayld.tgz

                build=

                updated=0

                 

                pbysystemimager2:/tftpboot # ls /tftpboot/esxi65-hpe/

                .discinfo     ata_pata.v05  boot.cfg-ORIG  efiboot.img   features.gz   ipmi_ipm.v00  lsi_mr3.v00   mboot.c32     net_e100.v01  nhpsa.v00     nvmxnet3.v00  qfle3f.v00    sata_sat.v00  scsi_fni.v00  scsi_mpt.v00  shim_lib.v02  ssacli.v00    usbcore_.v00             vmware_e.v00

                a.b00         ata_pata.v06  bootcfg.v00    ehci_ehc.v00  hid_hid.v00   ipmi_ipm.v01  lsi_msgp.v00  menu.c32      net_enic.v00  nmlx4_co.v00  oem_buil.v00  qfle3i.v00    sata_sat.v01  scsi_hpd.v00  scsi_mpt.v01  shim_lib.v03  tboot.b00     user.b00                 vsan.v00

                amsd.v00      ata_pata.v07  brcmfcoe.v00   elx_esx_.v00  hponcfg.v00   ipmi_ipm.v02  lsi_msgp.v01  misc_dri.v00  net_fcoe.v00  nmlx4_en.v00  ohci_usb.v00  qflge.v00     sata_sat.v02  scsi_hpv.v00  scsi_mpt.v02  shim_lib.v04  testeven.v00  useropts.gz              vsanheal.v00

                ata_liba.v00  b.b00         btldr.t00      elxiscsi.v00  i40en.v00     isolinux.bin  lsu_hp_h.v00  mtip32xx.v00  net_forc.v00  nmlx4_rd.v00  pvscsi.v00    qlnative.v00  sata_sat.v03  scsi_ips.v00  scsi_qed.v00  shim_lib.v05  tools.t00     vmkata.v00               vsanmgmt.v00

                ata_pata.v00  block_cc.v00  char_ran.v00   elxnet.v00    igbn.v00      isolinux.cfg  lsu_lsi_.v00  native_m.v00  net_libf.v00  nmlx5_co.v00  qcnic.v00     rste.v00      sata_sat.v04  scsi_isc.v00  scsi_qla.v00  shim_vmk.v00  uc_amd.b00    vmkplexe.v00             weaselin.t00

                ata_pata.v01  bnxtnet.v00   chardevs.b00   emulex_e.v00  ilo.v00       ixgben.v00    lsu_lsi_.v01  ne1000.v00    net_nx_n.v00  nmlx5_rd.v00  qedentv.v00   s.v00         sb.v00        scsi_lib.v00  shim_isc.v00  shim_vmk.v01  uc_intel.b00  vmkusb.v00               xhci_xhc.v00

                ata_pata.v02  bnxtroce.v00  conrep.v00     esx_dvfi.v00  ima_qla4.v00  jumpstrt.gz   lsu_lsi_.v02  nenic.v00     net_tg3.v00   nmst.v00      qedf.v00      safeboot.c32  scsi_aac.v00  scsi_meg.v00  shim_isc.v01  shim_vmk.v02  uhci_usb.v00  vmw_ahci.v00             xorg.v00

                ata_pata.v03  boot.cat      cru.v00        esx_ui.v00    imgdb.tgz     k.b00         lsu_lsi_.v03  net_cdc_.v00  net_usbn.v00  ntg3.v00      qedrntv.v00   sata_ahc.v00  scsi_adp.v00  scsi_meg.v01  shim_lib.v00  smartpqi.v00  upgrade       vmware-esx-base-osl.txt

                ata_pata.v04  boot.cfg      efi            fc_enabl.v00  imgpayld.tgz  lpfc.v00      lsu_lsi_.v04  net_e100.v00  net_vmxn.v00  nvme.v00      qfle3.v00     sata_ata.v00  scsi_aic.v00  scsi_meg.v02  shim_lib.v01  smx_prov.v00  usb_stor.v00  vmware-esx-base-readme

                • 5. Re: Unable to UEFI-PXE Boot Host - Getting generic parsing boot.cfg error
                  jburen Hot Shot
                  vExpert

                  So if the boot.cfg file is being served maybe the issue is with the line kernelopt=ks=http://192.168.36.1/esxi/ks6.5-hpe.cfg

                   

                  Maybe you can give it a try with the default ks= line. Did you try to open the URL manually?