Linucate
~ Linucate_

202.3 Alternate Bootloaders

All Levels

Introduction

GRUB is common, but specialized systems use smaller or platform-specific bootloaders. LPIC-2 expects recognition of their roles and files rather than deep administration of every implementation.

What you should be able to do after this lesson:

  • Match SYSLINUX variants to their media.
  • Describe a PXE network boot sequence.
  • Distinguish BIOS and UEFI network boot files.
  • Recognize systemd-boot and U-Boot use cases.
  • Identify common configuration and image names.

Big Idea: Match Firmware, Medium, and Loader

Alternate bootloaders are easier to remember by asking where the first executable comes from:

Environment Typical loader or family Typical first-stage asset
FAT/removable media SYSLINUX syslinux files on the filesystem
Linux filesystem EXTLINUX extlinux installation and config
ISO 9660 image ISOLINUX isolinux.bin, isolinux.cfg
Legacy BIOS network boot PXELINUX pxelinux.0, pxelinux.cfg/
UEFI system systemd-boot or EFI application .efi executable on the ESP
Embedded platform U-Boot board-specific image and environment

The SYSLINUX Family

  • SYSLINUX boots from FAT filesystems.
  • EXTLINUX supports Linux filesystems.
  • ISOLINUX boots ISO 9660 optical images.
  • PXELINUX supports network boot in legacy BIOS environments.

Common files include isolinux.bin, isolinux.cfg, pxelinux.0, and configuration below pxelinux.cfg/.

Hybrid ISO images may include isohdpfx.bin, while UEFI-capable media can include an EFI system image such as efiboot.img.

PXE Network Boot

A simplified legacy PXE flow is:

  1. Firmware obtains an address and boot information from DHCP.
  2. Firmware downloads a network boot program, traditionally by TFTP.
  3. The boot program reads its configuration.
  4. It downloads a kernel and initramfs.
  5. The kernel starts with parameters that locate installation or root resources.

UEFI firmware loads an EFI executable instead of pxelinux.0. Examples include shim.efi and grubx64.efi.

Important troubleshooting boundaries:

  • no address: DHCP or VLAN problem
  • address but no boot filename: DHCP boot options
  • timeout downloading: TFTP/firewall/path issue
  • bootloader starts but no menu: configuration lookup
  • kernel starts but cannot find root: kernel parameters or initramfs

systemd-boot

systemd-boot is a simple UEFI boot manager. It reads boot entries from the EFI System Partition or an extended boot loader partition. It does not support legacy BIOS.

bootctl status
bootctl list

Entries are normally small text files that specify the kernel, initrd, and command line.

U-Boot

U-Boot is common on embedded devices and many ARM systems. It initializes hardware and can load kernels from flash, storage, or a network. Its environment stores variables and boot commands.

Guided Practice: Trace a PXE Failure

Draw the expected path for one lab client:

DHCP address -> DHCP boot options -> TFTP/HTTP loader -> loader configuration
-> kernel and initramfs -> kernel command line -> installation or root service

For each arrow, write one observation that proves it succeeded. Examples include a DHCP lease, a TFTP request in server logs, a downloaded pxelinux.0 or EFI binary, and a kernel message showing the configured root URL.

Now compare the files supplied to a BIOS client and a UEFI client. A UEFI client cannot execute legacy pxelinux.0; it needs an EFI application such as shim.efi or grubx64.efi and may request a different DHCP filename.

Troubleshooting Scenario

A client receives an address and downloads its loader, but no menu appears. Server logs show requests for a hardware-specific file below pxelinux.cfg/ that does not exist.

Check PXELINUX's configuration lookup and provide the expected file or a valid default. Changing the client's IP address would not fix a loader that cannot find its configuration.

Exam Focus

  • Associate SYSLINUX variants with FAT, Linux filesystems, ISO images, and PXE.
  • Recognize isohdpfx.bin, efiboot.img, pxelinux.0, shim.efi, and grubx64.efi.
  • Understand why BIOS and UEFI PXE clients may need different boot files.
  • Know systemd-boot and U-Boot at awareness level.

Recap

  • Choose the bootloader family based on firmware, platform, and media.
  • PXE is a chain of DHCP, file transfer, bootloader, kernel, and initramfs stages.
  • pxelinux.0 is associated with legacy PXE; EFI systems load EFI applications.
  • systemd-boot is UEFI-focused, while U-Boot is common in embedded systems.
🎯

Test Your Knowledge

Complete the quiz to assess your understanding of this course's concepts.