iPXE
TLDR
Boot from iPXE command line
$ dhcp && chain http://server/boot.ipxe
Boot specific kernel$ kernel http://server/vmlinuz initrd=initrd.img
Load initrd$ initrd http://server/initrd.img
Boot loaded kernel$ boot
Show network configuration$ ifstat
SYNOPSIS
iPXE command-line or script commands
DESCRIPTION
iPXE is an open-source network boot firmware. It replaces or extends PXE (Preboot Execution Environment), supporting HTTP, iSCSI, FCoE, and many other protocols for network booting.
iPXE can be embedded in BIOS/UEFI, burned to ROM, or chainloaded from existing PXE. It enables flexible network-based system installation and diskless booting.
COMMANDS
dhcp
Obtain IP via DHCP.ifopen
Open network interface.ifstat
Show interface statistics.kernel url
Load kernel image.initrd url
Load initial ramdisk.boot
Boot loaded kernel.chain url
Load and execute script.imgfree
Free loaded images.shell
Enter iPXE shell.exit
Exit iPXE.
BOOT SCRIPT EXAMPLE
$ #!ipxe
dhcp
kernel http://server/vmlinuz ip=dhcp
initrd http://server/initrd.img
boot
dhcp
kernel http://server/vmlinuz ip=dhcp
initrd http://server/initrd.img
boot
CAVEATS
Requires network boot support. HTTPS needs certificates. UEFI and BIOS need different builds. Some NICs may lack driver support.
HISTORY
iPXE evolved from Etherboot and gPXE projects. It provides advanced network booting beyond standard PXE, supporting modern protocols and scripting capabilities.


