USB Boot UEFI client into FOG menu (easy way)
-
@boyan-biandov This tells me the FOS linux kernel you are using is not matched to the virtual hard drive (init.xz) or you are attempting to pxe boot using pxelinux.0 both will give you this error.
-
Sorry to revive an old thread again, but like another person mentioned, I think it’s good to keep the knowledge combined into one thread. I understand that this thread was posted with the intention of supplementing an incomplete UEFI implementation on older computers that lacked UEFI PXE booting.
Is it possible to use this process for new devices (Microsoft Surface tablets, Lenovo Carbon X1 laptops, etc) that lack a built in Ethernet port? I understand that PXE requires drivers built into the computer’s firmware, which aren’t available for generic USB > Ethernet adapters. Is it possible to create the USB-booting PXE launcher, with a driver for a particular adapter wrapped into it?
-
@ckasdf said in USB Boot UEFI client into FOG menu (easy way):
I understand that PXE requires drivers built into the computer’s firmware, which aren’t available for generic USB > Ethernet adapters. Is it possible to create the USB-booting PXE launcher, with a driver for a particular adapter wrapped into it?
On UEFI systems if you use a usb ethernet adapter, that usb ethernet adapter must be supported by the uefi firmware or the uefi firmware won’t see the usb ethernet adapter. This is why you can’t use any random/generic network adapter.
Now if you can boot another OS beyond the uefi firmware that OS needs its own network drivers. In the case of what you are mentioning here, iPXE is in itself its own OS. So any network driver that iPXE has a driver for it will use. The same applies a bit later on in the FOS booting process, FOS (linux) needs to have the network driver built in to be able to access the network. SO as long as you have an ethernet network adapter supported by both iPXE and FOS then you are good to go. Its not necessary for UEFI to support that network adapter. Most mainstream usb ethernet adapters are supported by iPXE as well as FOG linux.
I have seen people take one of those mini usb hubs and install a usb stick (like sandisk fit) and usb ethernet adapter and image that way. They just move the usb hub between computers.
The only other gotcha that you need to think about is usb3 network ports (blue jacks). iPXE as well as FOG needs to have drivers for the usb3 ports. They are more common now but there was a time where some of the usb3 controllers were unique and linux drivers were not available.
After all that rambling, yes you can use iPXE and FOS to get aroound not having built in uefi support for network booting.
-
@ckasdf I can share my DELL experiences, the 2-in-1 do NOT have Ethernet port and a generic Amazon dongle did NOT work. However the 2-in-1 has “recommended DELL made Ethernet dongle” which was detected by the UEFI and network boot was possible. So I would look for (Microsoft Surface tablets, Lenovo Carbon X1 laptops, etc) recommended dongle (which will be expensive, I paid $50 for the DELL one) and I bet one would exist which then will be recognized by the device UEFI. In summary: generic dongle IMHO doesn’t work for these non-Ethernet integrated devices.
-
@Boyan-Biandov said in USB Boot UEFI client into FOG menu (easy way):
In summary: generic dongle IMHO doesn’t work for these non-Ethernet integrated devices.
You are 100% correct, however you can bypass this issue by skipping the firmware pxe roms (which need to have specific network interfaces) by usb booting iPXE (ipxe.efi) which has a larger set of supported network adapters. That is what this tutorial is showing how to do. With that said, I would still go with the manufacturers supported network adapter just so you don’t have to worry about a second boot media since everything will come over the network. But in certain circumstances its not possible to go with the hardware vendors networking kit.
-
recommended branded Ethernet dongle
Yeah, I’ve read into the MS Surface devices and how people have purchased Microsoft-branded USB to Ethernet devices to PXE boot. Problem is, if I go that route, I’d potentially need one for Surfaces, one for Carbons, etc which like you said gets expensive. If one $30 device worked on all of them, that’d be ideal.
iPXE … has a larger set of supported network adapters
I have a D-Link adapter, and I tried to do an iPXE USB boot once, but it didn’t work. I’m kind of thinking I didn’t do it properly (may have just had the iPXE file in the root of the flash drive, with the partition marked for booting). I’ll try this again and put the file under /EFI/BOOT this time. Thanks!
-
@ckasdf @george1421 guys I must also share with you that getting the expensive dongle wasn’t the end of the line for me In a mixed environment (as was my case) meaning one has legacy PXE laptops and the newer iPXE machines the tftp server needs to know which image file name to serve back the the client based on a bare metal architecture ID, and that must occur at the DHCP level, which of course only Windows 2016 supports lol
So doing the USB stick automatically solves that problem since the human knows which is which (architecture wise that is) and would pick the correct stick to boot from
-
I wanted to update you on my progress related to this question of FOG on new devices without Ethernet. I had purchased this Anker USB C hub with an Ethernet jack for use with my personal laptop, as it doesn’t have an Ethernet jack itself. Curious, I brought it to work and plugged it into a Surface Book I had in inventory at that time, and found that it actually was recognized by UEFI and FOG, so I was able to avoid needing to boot to iPXE USB or similar. I tested it on a few thin Lenovo laptops with USB C (and without Ethernet), and it worked there as well.
This is a Gigabit Ethernet device, so it definitely has some benefits over the older but “trusty” 10/100Mb USB Ethernet devices. I think there’s a device compatibility list somewhere, so if you wanted to add this to the list, you could quote me or do whatever is needed. If you need any additional info on it, let me know.
For what it’s worth, Anker also has a USB 3.0 Type A version, though I’m not sure whether the chipset or what have you is the same, and I haven’t purchased it to try.
-
@ckasdf said in USB Boot UEFI client into FOG menu (easy way):
and found that it actually was recognized by UEFI and FOG,
The key is for the uefi bios to have a driver for the network adapter. FOG will most likely support the hardware because of linux. Actually uefi is also a high level OS akin to linux with drivers and such. But to make the OS fit nicely in NVFLASH memory the hardware manufacturer doesn’t support every flavor of network adapter. So you have to be particular on which network adapter is pxe bootable. But great job locating something that works well
-
True that, George. I was just surprised, as I had a few different USB-to-Ethernet adapters provided to me at work and none of those would work, and many Google searches solidified the suggestion that there were only a few USB Ethernet chipsets (chip manufacturers, chip-somethings, whatever) which were supported by PXE.
The search was made more difficult in that even in the last few years (2016-present) people seem to continue to prefer Legacy booting over UEFI. If I ever decide to get the other device, I’ll let you know how it works so it can also be added to the list, if that’s something you guys are keeping up.
-
-