4.5.3 About Boot-Loader Configuration Files

A boot-loader configuration file for BIOS-based PXE clients uses pxelinux configuration settings, for example:

default linux
prompt 0
timeout 1
label linux
        kernel /images/ol6-x86_64:1:SpacewalkDefaultOrganization/vmlinuz
        ipappend 2
        append initrd=/images/ol6-x86_64:1:SpacewalkDefaultOrganization/initrd.img \
          ksdevice=bootif lang=en_US kssendmac text \
          ks=http://192.168.1.3/cblr/svc/op/ks/system/svr1.mydom.com

Do not use the \ line-continuation character. This character is used in the example to denote that the line has been broken for printing. The append directive and all of its arguments must be on the same line.

To allow the boot: prompt to be displayed, change the value of prompt to 1. To display the prompt, press Shift or Alt at the console.

The default directive identifies the default boot entry by its label value, ol6u6.

Pxelinux boots the client using the default boot entry after timeout/10 seconds.

The kernel directive defines the name of the kernel executable and the append directive defines any parameters that should be appended when loading the kernel, such as the name of the ram-disk image and the location of the Kickstart file.

The ipappend 2 directive specifies that the Installer should use the same network interface as the system used to boot.

For pxelinux, the kernel and ram-disk image file paths are relative to /var/lib/tftpboot. The default boot loader configuration file for pxelinux is /var/lib/tftpboot/pxelinux.cfg/default

A boot-loader configuration file for UEFI-based PXE clients uses GRUB configuration settings, for example:

default=0
hiddenmenu
timeout=0

title ol6u6-x86_64-server:1:SpacewalkDefaultOrganization
    root (nd)
    kernel /images/ol6-x86_64:1:SpacewalkDefaultOrganization/vmlinuz \
      ksdevice=bootif lang=en_US kssendmac text \
      ks=http://192.168.1.3/cblr/svc/op/ks/system/svr1.mydom.com
    initrd /images/ol6-x86_64:1:SpacewalkDefaultOrganization/initrd.img

Do not use the \ line-continuation character. This character is used in the example to denote that the line has been broken for printing. The kernel directive and all of its arguments must be on the same line.

The timeout=0 and hiddenmenu directives cause the default kernel to boot immediately without allowing you to press a key to display a menu or modify the configuration of a boot entry. The default kernel is defined as the first entry (0), which is the only entry listed in this file.

The root directive defines that the kernel and initial ram-disk image files are available on the network device (nd), indicating that the files are available using TFTP.

The kernel directive defines the name of the kernel executable and any parameters that should be appended when loading the kernel, such as the location of the installation packages, and how to access these packages. The initrd directive specifies the initial ram-disk image file.

For GRUB, the kernel and ram-disk image file paths are relative to /var/lib/tftpboot/grub. The default boot loader configuration file for GRUB is /var/lib/tftpboot/grub/efidefault

To support different types of client, a configuration file can be named for:

  • A client's UUID (for example, a8943708-c6f6-51b9-611e-74e6ac80b93d)

  • A client's MAC address prefixed by 01-, which represents the ARP hardware type for Ethernet, and using dashes to separate each byte value instead of colons (for example, 01-80-00-27-c6-a1-16)

  • A client's IP address expressed in hexadecimal without any leading 0x (for example, C0A801FD represents the IP address 192.168.1.253)

Cobbler writes client boot configuration files to both /var/lib/tftpboot/grub and /var/lib/tftpboot/pxelinux.cfg to handle both UEFI or BIOS-based PXE clients.

The boot loader looks for a configuration file in the following order until it finds a matching file name:

  • UUID (for example, a8943708-c6f6-51b9-611e-74e6ac80b93d)

  • 01-MAC_address (for example, 01-80-00-27-c6-a1-16)

  • Full 32 bits of the IP address (for example, C0A801FD)

  • Most significant 28 bits of the IP address (for example, C0A801F)

  • Most significant 24 bits of the IP address (for example, C0A801)

  • Most significant 20 bits of the IP address (for example, C0A80)

  • Most significant 16 bits of the IP address (for example, C0A8)

  • Most significant 12 bits of the IP address (for example, C0A)

  • Most significant 8 bits of the IP address (for example, C0)

  • Most significant 4 bits of the IP address (for example, C)

  • default (BIOS) or efidefault (EFI)

For more information about GRUB, enter the info grub command to access the GRUB manual.

For more information about pxelinux, see http://www.syslinux.org/wiki/index.php/PXELINUX.