LinuxCommandLibrary

pxelinux-options

Configure PXELINUX boot menu entries

SYNOPSIS

Since pxelinux-options isn't a command, its "synopsis" describes how options are structured within a pxelinux.cfg file:

DEFAULT <label>
TIMEOUT <seconds>
PROMPT <0|1>
MENU TITLE <title_text>
LABEL <boot_label>
    KERNEL <path_to_kernel>
    APPEND <kernel_command_line_options>
    INITRD <path_to_initrd>
    TEXT HELP
        <description_text>

PARAMETERS

DEFAULT
    Specifies the default boot entry label to be loaded if no user input is given.

TIMEOUT
    Sets the timeout (in tenths of a second) before the default entry is automatically booted.

PROMPT
    Enables (1) or disables (0) the boot prompt, allowing user interaction.

MENU TITLE
    Sets the title displayed at the top of the boot menu.

LABEL
    Defines a specific boot entry with a unique identifier, grouping related options.

KERNEL
    Specifies the path to the kernel image or bootable executable to load for the current LABEL.

APPEND
    Passes additional command-line arguments directly to the kernel or bootable executable.

INITRD
    Specifies the path to the initial RAM disk (initrd or initramfs) to load alongside the kernel.

IPAPPEND
    Appends network information (e.g., IP address, gateway, DNS) to the kernel command line automatically.

TEXT HELP
    Defines multi-line descriptive help text displayed for a specific menu entry when selected.

DESCRIPTION

PXELinux is a component of the Syslinux project, specifically designed for booting Linux and other operating systems from a network using the Preboot eXecution Environment (PXE). The "pxelinux-options" refer to the various directives and parameters used within its configuration files, typically located in the tftpboot/pxelinux.cfg/ directory on a TFTP server.
These options control the boot process, allowing administrators to define boot menus, specify kernel images, pass kernel command-line arguments, load initial RAM disks, and manage various aspects of the network boot. Instead of being a standalone command, "pxelinux-options" are the syntax and semantics used to configure the PXELinux bootloader's behavior when a client machine requests a network boot.

CAVEATS

The term "pxelinux-options" refers to configuration directives within a file, not an executable command.
Syntax is specific to the Syslinux project and may exhibit minor variations across different versions.
Configuration files must be correctly placed in the TFTP server's root directory (e.g., tftpboot/pxelinux.cfg/) and accessible by the client.
Kernel command-line options defined with APPEND are critical for proper system boot and frequently differ based on the Linux distribution and desired boot behavior.

CONFIGURATION FILE STRUCTURE

PXELinux searches for configuration files in a specific hierarchical order, providing flexibility for different client needs:
1. Files matching the client's MAC address (e.g., 01-aa-bb-cc-dd-ee-ff).
2. Files matching the client's hexadecimal IP address (e.g., C0A80101 for 192.168.1.1).
3. Files based on the client's IP subnet (e.g., C0A80100 for 192.168.1.0/24).
4. The generic default file.
This allows administrators to apply configurations ranging from highly specific per-machine settings to broad defaults for an entire network.

MENU SYSTEM

PXELinux incorporates a comprehensive menu system, allowing users to select various boot options, operating systems, or diagnostic utilities directly from the boot prompt. This functionality is configured using a set of MENU directives (e.g., MENU LABEL, MENU DEFAULT, MENU HIDE), enabling interactive and user-friendly network booting environments.

HISTORY

PXELinux is an integral part of the Syslinux project, originally developed by H. Peter Anvin. It emerged as a crucial tool for large-scale deployments and system provisioning, enabling machines to boot over a network without requiring local storage or optical drives. Its development has focused on providing a robust and flexible framework for network-based operating system installation and recovery, evolving alongside network booting standards and PXE capabilities.

SEE ALSO

syslinux(1), isolinux(1), extlinux(1), dhcpd(8), tftp(1)

Copied to clipboard