WelcomeWelcome | FAQFAQ | DownloadsDownloads | WikiWiki

Author Topic: PXE + UEFI (64 bits)  (Read 169 times)

Offline nick65go

  • Wiki Author
  • Hero Member
  • *****
  • Posts: 1018
PXE + UEFI (64 bits)
« on: June 07, 2026, 08:27:53 AM »
Question to A:I. "UEFI pxelinux.0". The A.I. answer was like:
"- pxelinux.0 is the PXE network boot loader exclusively for Legacy BIOS architecture. It does not work on UEFI systems.
- For UEFI network booting, you must use syslinux.efi (or pxelinux.efi) combined with the appropriate architecture-aware DHCP configuration".

Setting Up UEFI PXE Boot: To support both legacy and UEFI machines, your DHCP and PXE servers must be able to recognize the client's architecture (using Option 93) and serve the correct boot file.

1. Required UEFI Boot Files: Instead of relying on pxelinux.0, you will need to download and use the UEFI-compatible syslinux files:
- 64-bit UEFI: syslinux.efi (sometimes named pxelinux.efi)
- 32-bit UEFI: syslinux.efi (32-bit)  -- (aka EFI=UEFI1 for MacOS)
These files are typically found in the syslinux installation directory on your server or can be downloaded from the Syslinux Wiki.

2. Configure Your DHCP Server: Modern DHCP servers (such as dnsmasq or ISC DHCP) can dynamically detect if a client is Legacy BIOS or UEFI and serve the correct file automatically. Example dnsmasq configuration:
Code: [Select]
# Legacy BIOS (Architecture 0)
dhcp-boot=tag:bios,pxelinux.0,server_ip,server_ip

# UEFI 64-bit (Architecture 7 or 9)
dhcp-boot=tag:uefi64,syslinux.efi,server_ip,server_ip

3. Directory Structure: (Unlike BIOS, which reads configurations directly from the pxelinux.cfg/ root), UEFI setups often require a specific directory structure for loading menus and images.
- Place your syslinux.efi in your TFTP root directory.
- Place your pxelinux.cfg/ folder in the same TFTP directory so the boot-loader can read your configuration menu (e.g., default).

FYI: this info was not in TC wiki, so I thought is worth to mention this for (modern) UEFI only machines.
« Last Edit: June 07, 2026, 08:33:33 AM by nick65go »

Offline patrikg

  • Wiki Author
  • Hero Member
  • *****
  • Posts: 847
Re: PXE + UEFI (64 bits)
« Reply #1 on: June 07, 2026, 09:06:36 AM »
Do you know you could add it to the wiki your self :)
Just use your forum credentials.
And maybe ask some forum moderator, to add you into the wiki.

Offline nick65go

  • Wiki Author
  • Hero Member
  • *****
  • Posts: 1018
Re: PXE + UEFI (64 bits)
« Reply #2 on: June 07, 2026, 09:29:57 AM »
My (2 years old) laptop does NOT have: BIOS, floppy, CDROM / DVDROM, NIC ethernet. It has just UEFI, WiFi and USB3 + USB-C

So in the case for damage of local storage (HDD/SSD/Nvme) I may boot PXE only with an adapter/dongle USB-NIC. But then will be the speed of Network 100 MB/s (max.) versus a fast USB3 (formatted with EXT4 or XFS) of 400 MB/s.
Even an external SATA storage plug-in will boot from USB port. Plus after booting, we need the (local) HTTPS server, to serve the tcz (from USB or Network) at least for my WiFi 6x + firmware etc.

Summary: I think with advanced in technologies, the PXE booting +UEFI will remain "emergency" / poor man booting for modern machines. Still PXE booting remains suitable for BIOS, where: minimal sever + 100 Clients (without HDD).
« Last Edit: June 07, 2026, 09:51:52 AM by nick65go »

Offline CentralWare

  • Retired Admins
  • Hero Member
  • *****
  • Posts: 849
Re: PXE + UEFI (64 bits)
« Reply #3 on: June 09, 2026, 02:03:08 AM »
@nick65go: Here's a semi-quick tale for you...

It's late June, 1999...  standing in the middle of NASA "Lewis" Research Center's base taking in the sunshine of a beautiful day...  standing about 5 feet from a street sign that warns if you see gas/smoke-like fumes hovering over the pavement, get out of your car and Run for It!...

The entire complex is a bit unnerved with the pending doom of Y2K.  We ordered 3,600+ Dell based computers to revamp the entire base with promises by Michael (Dell) that they all know how to tell time beyond December 31st.

Thirty-six HUNDRED computers...

Each and every one of them had to be DOWN-graded from the still-experimental Windows 98 to the government approved version of Windows 95, especially after Gates went on national television with his precious '98 and blue-screened in front of the whole world!  Ahh, Great Times!

Eight computers were lined up, two 4 foot by 8 foot tables with four machines on each...  and we're popping in the CD, spending 45+ minutes doing a complete, mindless wipe and install, ONE PC at a time per person.

Almost two weeks in and I don't think we had two pallets of machines ready to distribute. My math told me we weren't going to have the entire base done by doom's day!  I got the brainy idea that night to set up a PXE environment (which with Windows 9x -- this was bleeding-edge stuff back then!!!) and about a week later I showed up to work with a dozen 3.5" floppy disks marked "95-A-PXE1" and a tiny file server and after plugging in the server and a network hub, I hauled over a skid of JUST the machines (no monitors, etc.) and plugged in eight workstations without screens, keyboards, etc. and stacked them 4 tall... which took about half of ONE of the tables,  plugged them into the outlet strip, popped in a floppy, and hit the Power button on each...  then exclaimed "...okay then, I've been here for about 20 minutes...  it's lunch time!"

My supervisor pulled up a chair (he RARELY stepped FOOT in the server room! The data center is rather noisy and he liked it quiet!)
I spent the next few/so-many minutes explaining my evil plan on how PXE was going to actually be about 10x to 30x FASTER than installing by the floppy+CD method the engineers planned for us to endure.  By the time my lessons started coming to a close, the first Dell spit out the CD tray (it was empty, of course) which was my idea of how to tell the person running the installs "This one's done!", so I pushed the drawer back in, popped out the floppy and hit the power button and a few seconds later, the machine shut off...  was boxed back up...  and set back onto the skid with a big red sticker saying it was completed.  The supervisor's "#1" guy took the first machine over to his little desk area to "check everything over" with distrust and doubt...

It took about 20 minutes to do to eight computers by one person...  what they wanted EIGHT people to do in about 45 minutes.

We started delivering machines the following Monday.  We now had SEVEN people out setting up workstations and servers while #8 was left back at the "RAC" building doing installs and playing solitaire.  We'd switch out who babysat workstations come lunch time and run again in the afternoon.  The entire base was online by mid-August. In the entire airplane hangar I dubbed "Dell-Land" where all of those machines were stored at the start, I don't think we had more than 10 rejects and of those, probably 2-3 went back to Dell and the rest were just IDE cables that came loose or nonsense like that.  "Service calls" were almost non-existent save for the occasional "My goodness, thank you so much for the new computer!  Uh... how do I make it print something?!?!"

PXE was an awesome concept - not just a Poor Man's networking/booting solution, but it offered flexibility in what otherwise would have been a brain-destroying waste of time watching the little icon of a piece of paper "fly" across the screen from the left hand folder...  to the right hand folder...  all 2,500+ times, while Windows was copying files from 2x speed CD drives to IDE (PATA) hard drives.  (THAT level of "Patience" was never a strong suit of mine :) )

Just thought you'd get a laugh out of a tiny piece of PXE history!

Offline nick65go

  • Wiki Author
  • Hero Member
  • *****
  • Posts: 1018
Re: PXE + UEFI (64 bits)
« Reply #4 on: June 09, 2026, 03:51:06 AM »
@CentralWare: wow, you comment rarely but well/interestingly, explaining the context of the idea.
With age both man and technology change. Patience is not (anymore) my strong point (but I'm working to improve it). I'm approaching retirement and I tend to simplify things. It seems to me that linux is going in the wrong direction, yet it remains preferred for its drivers for everything.

At the moment linux is the workhorse, while Qemu + virtio-whatever tests other OSes. Linux is still far above Windows, for what I use it. But being (slightly) obsessed with pseudo- security (compiling OS + apps), I started reading with passion about FreeBSD (it seams it is so under-rated). Especially since now it knows X11/Xlibre or Wayland, XFCE or KDE, Firefox, LibreOffice, Vlc, etc.