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

USB Boot UEFI client into FOG menu (harder way)

Scheduled Pinned Locked Moved
Tutorials
5
35
18.9k
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.
  • G
    george1421 Moderator
    last edited by george1421 Jun 10, 2020, 8:50 AM Dec 28, 2015, 8:09 PM

    WARNING: this tutorial is no longer relevant since the rom-o-matic site has been shutdown since Dec 2019. These instructions are no longer valid and can be followed. I'm leaving these instructions here for historical reasons. No additional support on this topic can be provided since they depend on an external web site working

    You may has why do we need this?

    UEFI PXE booting is a bit different than BIOS based PXE booting. Some of the early UEFI systems like the Dell Latitude e6420 and the OptiPlex 790 do not support PXE booting in UEFI mode. But through testing they do support USB booting in PXE mode. So knowing this I’m going to create the harder solution (see easier solution if this method is too complicated for your needs) to PXE boot these devices in UEFI mode. This method we will create a new efi boot kernel to install on our usb flash drive to boot into the FOG environment. Building linux kernels are not extremely difficult using the rom-o-matic, but because of the number of options you can choose, you can run into problems if not created correctly. I can say for sure this method works with the previous mentioned systems. YMMV with other hardware platforms.

    The process steps are not that hard, its a bit like giving your self a root canal without medicine. It will hurt like crazy while you are doing it, but once its over you will have the satisfaction of not wanting to ever do it again <jk>. Its not really that hard, the rom-o-matic does all of the work.

    You will need to acquire these things.

    1. A 2GB (min) flash drive
    2. A UEFI pxe boot image we will create from the rom-o-matic web site

    iPXE UEFI boot kernel creation process

    1. From a browser access the rom-o-matic web site at https://rom-o-matic.eu/
    2. Select Advanced, for experienced users radio button
    3. In the drop down list for the output format select EFI PXE bootstrap 64-bit (.efi) selection.
    4. Ensure that NIC type is set to all-drivers (default)
      Since there are a ton of settings that could be changed here, I'm only going to post the changes from the default settings for the PXE boot. HINT: You may want to search in your browser for the variable names I used below to locate the exact setting in question.
    5. Section: Download protocols.
      DOWNLOAD_PROTO_HTTPS = checked
      DOWNLOAD_PROTO_FTP = checked
      DOWNLOAD_PROTO_NFS = checked
    6. Section: SAN boot protocols
      All checked in this section except HTTP_ENC_PEERDIST = unchecked
    7. Section: Image types
      All unchecked except IMAGE_PNG = checked
    8. Section: Command-line commands to include
      All checked except IWMGMT_CMD = unchecked, PXE_CMD = unchecked, PROFSTAT_CMD, = unchecked
    9. Section: Console options
      All unchecked except CONSOLE_FRAMEBUFFER = checked
    10. Section: Embedded script add in the following script
    #!ipxe
    
    set fogserver 192.168.1.88
    
    isset ${net0/mac} && dhcp net0 || goto dhcpnet1
    echo Received DHCP answer on interface net0 && goto netboot
    
    :dhcpnet1
    isset ${net1/mac} && dhcp net1 || goto dhcperror
    echo Received DHCP answer on interface net1 && goto netboot
    
    :dhcperror
    prompt --key s --timeout 10000 DHCP Failed, hit 's' for the iPXE shell; reboot in 10 seconds && shell || reboot
    
    :netboot
    cpuid --ext 29 && set arch x86_64 || set arch i386
    params
    param mac0 ${net0/mac}
    param arch ${arch}
    param platform ${platform}
    param product ${product}
    param ipxever ${version}
    isset ${net1/mac} && param mac1 ${net1/mac} || goto bootme
    
    :bootme
    chain http://${fogserver}/fog/service/ipxe/boot.php##params
    

    Be sure to change the ip address above for next-server to the IP address of your FOG server. You must use an IP address and not the conical name of your fog server.

    1. Section: Which revision should be set to Master (default)
    2. Press the Proceed >> button. After a bit you will be prompted to download a file called **ipxe.efi ** be sure to save it. We will need this file in the section below.

    Boot drive creation process

    1. Insert your flash drive into a Windows based computer and format it with FAT32 disk format
    2. On that flash drive create a folder called EFI
    3. On that same flash drive create a folder called BOOT in the EFI folder creating this path “x:\EFI\BOOT”. Note: I have not tested if case is important or not, I used upper case for everything and it worked. That is as far as I tested.
    4. Copy the ipxe.efi kernel created in the previous section to the flash drive in the EFI\BOOT folder. That file MUST BE RENAMED to bootx64.efi (note the case difference. I did not test to see if case is important)
    5. At this point remove the usb thumb drive from the build up computer and insert the drive into a target computer
    6. Power on the target computer and press F10 or F12 (depending on the mfg) to call up the EFI boot menu.
    7. Select the USB boot device under the EFI section of the EFI menu
    8. You should see the iPXE boot banner and then after about 30 seconds it should be prompted for the IP address of your FOG server. Key in the IP ADDRESS of your FOG server and press Enter.
    9. At this point you should boot into the FOG iPXE menu.

    Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG!

    W 1 Reply Last reply Jan 16, 2016, 1:55 AM Reply Quote 3
    • W
      Wayne Workman
      last edited by Wayne Workman Jan 15, 2016, 7:54 PM Dec 29, 2015, 1:27 AM

      Tagging this for the wiki

      Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG!
      Daily Clean Installation Results:
      https://fogtesting.fogproject.us/
      FOG Reporting:
      https://fog-external-reporting-results.fogproject.us/

      1 Reply Last reply Reply Quote 0
      • W
        Wayne Workman @george1421
        last edited by Wayne Workman Jan 15, 2016, 7:55 PM Jan 16, 2016, 1:55 AM

        @george1421 This has been added to the wiki here: https://wiki.fogproject.org/wiki/index.php?title=USB_Bootable_Media

        FYI, George, all that formatting was a PITA.

        Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG!
        Daily Clean Installation Results:
        https://fogtesting.fogproject.us/
        FOG Reporting:
        https://fog-external-reporting-results.fogproject.us/

        1 Reply Last reply Reply Quote 1
        • P
          Psycholiquid Testers
          last edited by Jan 20, 2016, 3:03 PM

          I am trying this and for the most part it is seeing my USB drive and starting, however once it hits the Open Source Network Boot Firmware it closes and goes into windows. Am I missing something here. It never asks me for the server IP.

          Here is the script I used in the ROM-o-matic site:

          #!ipxe

          dhcp
          set next-server 10.20.60.14
          set filename ipxe.efi
          chain tftp://${next-server}/${filename}

          I have tested and the file is easily grabbable form all VLANs, so I am not sure what might be happening, unless the network card I am using just isn’t working. Is there anyway to tell. I am not seeing a IP being assigned.

          T W 2 Replies Last reply Jan 20, 2016, 3:23 PM Reply Quote 0
          • T
            Tom Elliott @Psycholiquid
            last edited by Jan 20, 2016, 3:23 PM

            @Psycholiquid I’d think you need to chain to the default.ipxe file of fog, not the ipxe.efi. The ipxe.efi should be already started by the usb stick, or at least how I’m seeing it.

            Maybe I’m misunderstanding.

            Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG! Get in contact with me (chat bubble in the top right corner) if you want to join in.

            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 1
            • T
              Tom Elliott
              last edited by Tom Elliott Jan 20, 2016, 9:42 AM Jan 20, 2016, 3:28 PM

              I guess what I’m trying to say, if you’re using the usb, you’re already IN ipxe in some way, why would you want to redirect to another ipxe file. Why not make the config the same AS the default.ipxe file, or just load the file itself.

              Load the file itself directly

              #!ipxe
              dhcp
              chain tftp://${next-server}/default.ipxe
              

              Just boot directly to what you need:

              #!ipxe
              isset ${net0/mac} && dhcp net0 || goto dhcpnet1
              echo Received DHCP answer on interface net0 && goto netboot
              
              :dhcpnet1
              isset ${net1/mac} && dhcp net1 || goto dhcperror
              echo Received DHCP answer on interface net1 && goto netboot
              
              :dhcperror
              prompt --key s --timeout 10000 DHCP Failed, hit 's' for the iPXE shell; reboot in 10 seconds && shell || reboot
              
              :netboot
              cpuid --ext 29 && set arch x86_64 || set arch i386
              params
              param mac0 ${net0/mac}
              param arch ${arch}
              param platform ${platform}
              param product ${product}
              param ipxever ${version}
              isset ${net1/mac} && param mac1 ${net1/mac} || goto bootme
              
              :bootme
              chain http://fogserverip/fog/service/ipxe/boot.php##params
              

              Then again, i may be grossly misunderstanding the purpose of all of this.

              Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG! Get in contact with me (chat bubble in the top right corner) if you want to join in.

              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

              G 1 Reply Last reply Jan 20, 2016, 4:11 PM Reply Quote 0
              • P
                Psycholiquid Testers
                last edited by Psycholiquid Jan 20, 2016, 9:30 AM Jan 20, 2016, 3:29 PM

                @Tom Elliott Let me give that a try. I tried just loading the ipxe.efi directly form the server I get the same result. I hate these Dell XPS 12s

                T 1 Reply Last reply Jan 20, 2016, 3:30 PM Reply Quote 0
                • W
                  Wayne Workman @Psycholiquid
                  last edited by Jan 20, 2016, 3:29 PM

                  @Psycholiquid Let us know about anything you needed to do differently.

                  Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG!
                  Daily Clean Installation Results:
                  https://fogtesting.fogproject.us/
                  FOG Reporting:
                  https://fog-external-reporting-results.fogproject.us/

                  1 Reply Last reply Reply Quote 0
                  • T
                    Tom Elliott @Psycholiquid
                    last edited by Jan 20, 2016, 3:30 PM

                    @Psycholiquid I believe the point of these usb files is for the cases where you do have problems. If you’re having problems with the files from PXE, booting “BACK” to them from the usb side would yield, I would imagine, the exact same results.

                    Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG! Get in contact with me (chat bubble in the top right corner) if you want to join in.

                    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 1
                    • P
                      Psycholiquid Testers
                      last edited by Jan 20, 2016, 3:32 PM

                      What I am trying to do is boot from USB pxe because the laptop has no NIC or UEFI is not cooperating like it should.and Wireless wont boot from network. So basically trying to make a live USB drive so I can boot to FOG on machine where there is no nic or the docking station wont show up.

                      W T G 3 Replies Last reply Jan 20, 2016, 3:33 PM Reply Quote 0
                      • W
                        Wayne Workman @Psycholiquid
                        last edited by Wayne Workman Jan 20, 2016, 9:34 AM Jan 20, 2016, 3:33 PM

                        @Psycholiquid said:

                        What I am trying to do is boot from USB pxe because the laptop has no NIC or UEFI is not cooperating like it should.and Wireless wont boot from network. So basically trying to make a live USB drive so I can boot to FOG on machine where there is no nic or the docking station wont show up.

                        This method requires a wired network connection still. Look into getting a USB to Ethernet adapter.

                        Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG!
                        Daily Clean Installation Results:
                        https://fogtesting.fogproject.us/
                        FOG Reporting:
                        https://fog-external-reporting-results.fogproject.us/

                        P 1 Reply Last reply Jan 20, 2016, 3:34 PM Reply Quote 0
                        • P
                          Psycholiquid Testers @Wayne Workman
                          last edited by Jan 20, 2016, 3:34 PM

                          @Wayne-Workman Right I have a USB network card that seems to be showing up when I boot to the ipxe.efi just trying to get into FOG now

                          W 1 Reply Last reply Jan 20, 2016, 3:35 PM Reply Quote 0
                          • W
                            Wayne Workman @Psycholiquid
                            last edited by Jan 20, 2016, 3:35 PM

                            @Psycholiquid What is it’s make and model ?

                            Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG!
                            Daily Clean Installation Results:
                            https://fogtesting.fogproject.us/
                            FOG Reporting:
                            https://fog-external-reporting-results.fogproject.us/

                            1 Reply Last reply Reply Quote 0
                            • T
                              Tom Elliott @Psycholiquid
                              last edited by Jan 20, 2016, 3:35 PM

                              @Psycholiquid You still need a network for fog to operate. I don’t include wireless drivers in the kernel, nor do I include the wireless utilities.

                              Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG! Get in contact with me (chat bubble in the top right corner) if you want to join in.

                              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 1 Reply Last reply Jan 20, 2016, 3:35 PM Reply Quote 1
                              • P
                                Psycholiquid Testers @Tom Elliott
                                last edited by Jan 20, 2016, 3:35 PM

                                @Tom-Elliott See below. LOL we are all over this today.

                                1 Reply Last reply Reply Quote 0
                                • P
                                  Psycholiquid Testers
                                  last edited by Jan 20, 2016, 3:39 PM

                                  From what I can tell I may have to do this same procedure for the MS Surfaces

                                  Haven’t really tried it yet but it is looking like another UEFI nightmare. I havent seen any of my Surfaces boot to network yet.

                                  W 1 Reply Last reply Jan 20, 2016, 3:41 PM Reply Quote 0
                                  • W
                                    Wayne Workman @Psycholiquid
                                    last edited by Jan 20, 2016, 3:41 PM

                                    @Psycholiquid What is the make and model of the USB adapter you’re using?

                                    Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG!
                                    Daily Clean Installation Results:
                                    https://fogtesting.fogproject.us/
                                    FOG Reporting:
                                    https://fog-external-reporting-results.fogproject.us/

                                    P 1 Reply Last reply Jan 20, 2016, 3:42 PM Reply Quote 0
                                    • P
                                      Psycholiquid Testers @Wayne Workman
                                      last edited by Psycholiquid Jan 20, 2016, 9:42 AM Jan 20, 2016, 3:42 PM

                                      @Wayne-Workman StarTech USB31000SPTB

                                      W 1 Reply Last reply Jan 20, 2016, 3:45 PM Reply Quote 1
                                      • W
                                        Wayne Workman @Psycholiquid
                                        last edited by Wayne Workman Jan 20, 2016, 9:53 AM Jan 20, 2016, 3:45 PM

                                        @Psycholiquid Ok… I don’t think that these instructions by the OP are going to help in your situation. We need to get your USB to Ethernet adapter going the regular way. Can you please start a new thread for the issue and post a screen shot of what you’re seeing when you try to network boot?

                                        Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG!
                                        Daily Clean Installation Results:
                                        https://fogtesting.fogproject.us/
                                        FOG Reporting:
                                        https://fog-external-reporting-results.fogproject.us/

                                        P 1 Reply Last reply Jan 20, 2016, 3:45 PM Reply Quote 0
                                        • P
                                          Psycholiquid Testers @Wayne Workman
                                          last edited by Jan 20, 2016, 3:45 PM

                                          @Wayne-Workman Will do

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

                                          209

                                          Online

                                          12.0k

                                          Users

                                          17.3k

                                          Topics

                                          155.2k

                                          Posts
                                          Copyright © 2012-2024 FOG Project