• Recent
    • Unsolved
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Register
    • Login

    UEFI PXE BOOT

    Scheduled Pinned Locked Moved Solved
    FOG Problems
    3
    10
    7.1k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • P
      plegrand
      last edited by plegrand

      I’ve got some problems to make works boot PXE UEFI.
      I’ve got this problem with new dell lattitude 5580.

      BIOS configuration :

      Secure Boot - Secure Boot Enable - Disabled
      Advanced Boot Options - Enable Legacy Option ROMs
      System Configuration - Integrated NIC - Enable UEFI Network Stack - Enabled w/PXE
      Boot Sequence -
           Onboard NIC (IPV4)
           Windows Boot Manager
      

      I use FOG 1.5.0 (@IP : 192.168.39.243)
      I dont use the DHCPD server of FOG but my own DHCPD server (isc-dhcp-server).
      Before trying use UEFI PXE boot everything worked fine with only LEGACY .
      I followed this article : https://wiki.fogproject.org/wiki/index.php?title=BIOS_and_UEFI_Co-Existence#Example_1
      And then add to my dhcpd.conf these lines :

      General options

      option space PXE;
      option PXE.mtftp-ip    code 1 = ip-address;
      option PXE.mtftp-cport code 2 = unsigned integer 16;
      option PXE.mtftp-sport code 3 = unsigned integer 16;
      option PXE.mtftp-tmout code 4 = unsigned integer 8;
      option PXE.mtftp-delay code 5 = unsigned integer 8;
      option arch code 93 = unsigned integer 16; # RFC4578
      

      Subnet options :

      next-server 192.168.39.243;
       class "UEFI-32-1" {
          match if substring(option vendor-class-identifier, 0, 20) = "PXEClient:Arch:00006";
          filename "i386-efi/ipxe.efi";
          }
          class "UEFI-32-2" {
          match if substring(option vendor-class-identifier, 0, 20) = "PXEClient:Arch:00002";
           filename "i386-efi/ipxe.efi";
          }
          class "UEFI-64-1" {
          match if substring(option vendor-class-identifier, 0, 20) = "PXEClient:Arch:00007";
           filename "ipxe.efi";
          }
          class "UEFI-64-2" {
          match if substring(option vendor-class-identifier, 0, 20) = "PXEClient:Arch:00008";
          filename "ipxe.efi";
          }
          class "UEFI-64-3" {
          match if substring(option vendor-class-identifier, 0, 20) = "PXEClient:Arch:00009";
           filename "ipxe.efi";
          }
          class "Legacy" {
          match if substring(option vendor-class-identifier, 0, 20) = "PXEClient:Arch:00000";
          #filename "undionly.kkpxe";
          filename "ipxe.pxe"; 
          }
      

      The computer boot PXE correctly and i’ve got the PXE menu.
      But after that when i choose “Boot from hard disk”, i’ve got the
      “chainloading failed…” error message.
      I cant understand what is the problem.
      Does someone could help me ?

      P 1 Reply Last reply Reply Quote 0
      • P
        plegrand @plegrand
        last edited by

        As you ask sometime to give the result of this command :
        http://192.168.39.243/fog/service/ipxe/boot.php?mac=10:65:30:64:39:54

        It’s the mac address of the problematic computer
        Here is the result

        #!ipxe
        set fog-ip 192.168.39.243
        set fog-webroot fog
        set boot-url http://${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 http://192.168.39.243/fog/service/ipxe/bg.png --left 100 --right 80 && goto console_set || goto alt_console
        :MENU
        menu
        colour --rgb 0x00567a 0 ||
        cpair --foreground 1 1 ||
        cpair --foreground 0 3 ||
        cpair --foreground 4 4 ||
        item --gap Host is pending approval!
        item --gap -- -------------------------------------
        item fog.local Boot from hard disk
        item fog.memtest Run Memtest86+
        item fog.deployimage Deploy Image
        item fog.multijoin Join Multicast Session
        item fog.sysinfo Client System Information (Compatibility)
        item fog.approvehost Approve This Host
        choose --default fog.local --timeout 10000 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.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=127000 keymap=fr web=http://192.168.39.243/fog/ consoleblank=0 rootfstype=ext4 storage=192.168.39.243:/home/images/ storageip=192.168.39.243 loglevel=4 mode=sysinfo
        imgfetch init_32.xz
        boot || goto MENU
        :fog.approvehost
        login
        params
        param mac0 ${net0/mac}
        param arch ${arch}
        param username ${username}
        param password ${password}
        param approveHost 1
        isset ${net1/mac} && param mac1 ${net1/mac} || goto bootme
        isset ${net2/mac} && param mac2 ${net2/mac} || goto bootme
        param sysuuid ${uuid}
        :bootme
        chain -ar http://192.168.39.243/fog/service/ipxe/boot.php##params ||
        goto MENU
        autoboot
        
        P 1 Reply Last reply Reply Quote 0
        • P
          plegrand @plegrand
          last edited by

          As i saw that host had this message : host is pending approval
          I was able to approve it (qwerty keyboard…)
          Then i can see the dell computer in fog and see that it has more than one Mac address.
          Could it be the problem ?

          1 Reply Last reply Reply Quote 0
          • Q
            Quazz Moderator
            last edited by

            You can change the “Boot from hard disk” method globally, per group or per host.

            Change EFI Exit Type from sanboot to something like rEFInd

            P 1 Reply Last reply Reply Quote 0
            • P
              plegrand @Quazz
              last edited by

              @quazz
              Hello and thanks for your answer
              Here is actually the configuration for the host

              0_1530268484351_32ac7580-ec1e-41a1-a4b0-ad625ff62bd4-image.png

              What i have to modify ?

              Q 1 Reply Last reply Reply Quote 0
              • Q
                Quazz Moderator @plegrand
                last edited by

                @plegrand The EFI Exit Type

                1 Reply Last reply Reply Quote 0
                • S
                  Sebastian Roth Moderator
                  last edited by

                  @plegrand Clients that boot from hard disk after the menu use different mechanisms. In FOG we call this exit type. You can configure the exit type used per host and globally. Please check this host’s settings and try different types to see which one works for this client in UEFI mode.

                  Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

                  Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

                  P 2 Replies Last reply Reply Quote 0
                  • P
                    plegrand @Sebastian Roth
                    last edited by plegrand

                    @sebastian-roth @Quazz
                    I tryed
                    Sanboot : loop in menu
                    REFIND_EFI : launch a strange windows and stuck on dell logo
                    exit : chainloading failed…

                    Do i have to try GRUB option ?

                    GRUB_FIRST_HDD : loop in menu
                    GRUB_FIRST_FOUND_WINDOWS : loop in menu

                    1 Reply Last reply Reply Quote 0
                    • P
                      plegrand @Sebastian Roth
                      last edited by

                      @sebastian-roth
                      I tryed with different type without success.
                      Then i configured all computers with legacy boot.
                      Then no more problem 😉

                      1 Reply Last reply Reply Quote 0
                      • S
                        Sebastian Roth Moderator
                        last edited by

                        @plegrand UEFI implementations can be a real pain. It’s meant to be Kind of universal but everyone is just doing his/her own thing. So some UEFI clients work great while others just don’t want to play nicely. There is not much we can do about it. Well, you can try using rEFInd and start playing with the config file. If you are lucky it’s justa matter of finding the right options.

                        Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

                        Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

                        1 Reply Last reply Reply Quote 0
                        • 1 / 1
                        • First post
                          Last post

                        145

                        Online

                        12.0k

                        Users

                        17.3k

                        Topics

                        155.2k

                        Posts
                        Copyright © 2012-2024 FOG Project