Creating a [legacy & EFI] PXE server using pxelinux

Legacy (i.e., BIOS-based) PXE imaging is not new. It's been around since 1999.

PXE imaging via UEFI boot is not new. UEFI boot has been around since 2005 and certain Linux-based bootloaders (like grub2) have been able to EFI PXE boot for a couple of year.

However, what is brand new -- as of 2014 -- is working EFI PXE support in pxelinux.

Pxelinux is one of the lightweight bootloaders offered by the syslinux project ( As such, it supports the full rich menuing language of syslinux & friends. So Pxelinux is a premier PXE bootloader, allowing an architect to develop full professional-looking boot menus.

First a simple (legacy) PXE client-only configuration is presented. Then this configuration is progressively made more and more complex; first adding regular DHCP clients and finally adding EFI PXE boot clients.

This final configuration would be suitable for a small business or lab, where older computers (capable of BIOS boot only) as well as new computers co-exist on the same subnets.

Experience level: