Questo contenuto non è disponibile nella lingua selezionata.

Chapter 3. Customizing the boot menu


You can customize the Boot menu options. For information about downloading and extracting Boot images, see Extracting Red Hat Enterprise Linux boot images.

The Boot menu customization involves the following high-level tasks:

  1. Complete the prerequisites.
  2. Customize the Boot menu.
  3. Create a custom Boot image.

3.1. Customizing the boot menu

The Boot menu is the menu which appears after you boot your system using an installation image. Normally, this menu allows you to choose between options such as Install Red Hat Enterprise Linux, Boot from local drive or Rescue an installed system. To customize the Boot menu, you can:

  • Customize the default options.
  • Add more options.
  • Change the visual style (color and background).

An installation media consists of a GRUB2 boot loader. The GRUB2 boot loader is used on systems with UEFI firmware.

Customizing the boot menu options can especially be useful with Kickstart. Kickstart files must be provided to the installer before the installation begins. Normally, this is done by manually editing one of the existing boot options to add the inst.ks= boot option. You can add this option to one of the pre-configured entries, if you edit boot loader configuration files on the media.

3.2. Systems with legacy BIOS firmware

The boot/grub2/grub.cfg configuration file on the boot media contains a list of preconfigured menu entries and other directives which controls the appearance and the Boot menu functionality. In the configuration file, the default menu entry for Red Hat Enterprise Linux (Test this media & install Red Hat Enterprise Linux 10) is defined in the following block:

menuentry 'Install Red Hat Enterprise Linux 10.0' --class fedora --class gnu-linux --class gnu --class os {
	linux /images/pxeboot/vmlinuz inst.stage2=hd:LABEL=RHEL-10-0-BaseOS-x86_64 quiet
	initrd /images/pxeboot/initrd.img
}
menuentry 'Test this media & install Red Hat Enterprise Linux 10.0' --class fedora --class gnu-linux --class gnu --class os {
	linux /images/pxeboot/vmlinuz inst.stage2=hd:LABEL=RHEL-10-0-BaseOS-x86_64 rd.live.check quiet
	initrd /images/pxeboot/initrd.img
}
Copy to Clipboard Toggle word wrap

Where:

  • menuentry - Defines the title of the entry. It is specified in single or double quotes (' or "). You can use the --class option to group menu entries into different classes, which can then be styled differently using GRUB2 themes.

    Note

    You must enclose each menu entry definition in curly braces ({}).

  • linux - Defines the kernel that boots (/images/pxeboot/vmlinuz in the example) and the other additional options, if any. You can customize these options to change the behavior of the boot entry. For details about the options that are applicable to Anaconda, see Automatically installing RHEL. One of the notable options is inst.ks= that allows you to specify a location of a Kickstart file. You can place a Kickstart file on the boot ISO image and use the inst.ks= option to specify its location; for example, you can place a kickstart.ks file into the image’s root directory and use inst.ks=hd:LABEL=RHEL-10-0-BaseOS-x86_64:/kickstart.ks. You can also use dracut options which are listed on the dracut.cmdline(7) man page.

    Important

    When using a disk label to refer to a certain drive, for example, inst.stage2=hd:LABEL=RHEL-10-0-BaseOS-x86_64, replace all spaces with \x20.

  • initrd - Location of the initial RAM disk (initrd) image to be loaded. Other options used in the grub.cfg configuration file are:

    • set timeout - determines how long is the boot menu displayed before the default menu entry is automatically used. The default value is 60, which means the menu is displayed for 60 seconds. Setting this value to -1 disables the timeout completely.

      Note

      Setting the timeout to 0 is useful when performing a headless installation, because this setting immediately activates the default boot entry.

  • submenu - A submenu block allows you to create a sub-menu and group some entries under it, instead of displaying them in the main menu. The Troubleshooting submenu in the default configuration contains entries for rescuing an existing system. The title of the entry is in single or double quotes (' or "). The submenu block contains one or more menuentry definitions as described above, and the entire block is enclosed in curly braces ({}). For example:

    submenu 'Submenu title' {
      menuentry 'Submenu option 1' {
        linux /images/pxeboot/vmlinuz inst.stage2=hd:LABEL=RHEL-10-0-BaseOS-x86_64 nomodeset quiet
        initrd /images/pxeboot/initrd.img
      }
      menuentry 'Submenu option 2' {
        linux /images/pxeboot/vmlinuz inst.stage2=hd:LABEL=RHEL-10-0-BaseOS-x86_64 inst.rescue quiet
        initrd /images/pxeboot/initrd.img
      }
    }
    Copy to Clipboard Toggle word wrap
  • set default - Determines the default entry. The entry numbers start from 0. If you want to make the third entry the default one, use set default=2 and so on.
  • theme - Determines the directory which contains GRUB2 theme files. You can use the themes to customize visual aspects of the boot loader - background, fonts, and colors of specific elements.

3.3. Systems with UEFI firmware

The EFI/BOOT/grub.cfg configuration file on the boot media contains a list of preconfigured menu entries and other directives which controls the appearance and the Boot menu functionality. In the configuration file, the default menu entry for Red Hat Enterprise Linux (Test this media & install Red Hat Enterprise Linux 10) is defined in the following block:

menuentry 'Test this media & install Red Hat Enterprise Linux 10.0' --class fedora --class gnu-linux --class gnu --class os {
	linuxefi /images/pxeboot/vmlinuz inst.stage2=hd:LABEL=RHEL-10-0-BaseOS-x86_64 rd.live.check quiet
	initrdefi /images/pxeboot/initrd.img
}
Copy to Clipboard Toggle word wrap

Where:

  • menuentry - Defines the title of the entry. It is specified in single or double quotes (' or "). You can use the --class option to group menu entries into different classes, which can then be styled differently by using GRUB2 themes.

    Note

    As shown in the above example, you must enclose each menu entry definition in curly braces ({}).

  • linuxefi - Defines the kernel that boots (/images/pxeboot/vmlinuz from the example) and the other additional options, if any.

    You can customize these options to change the behavior of the boot entry.

    One of the notable options is inst.ks=, which allows you to specify a location of a Kickstart file. You can place a Kickstart file on the boot ISO image and use the inst.ks= option to specify its location; for example, you can place a kickstart.ks file into the image’s root directory and use inst.ks=hd:LABEL=RHEL-10-0-BaseOS-x86_64:/kickstart.ks.

    You can also use dracut options which are listed on the dracut.cmdline(7) man page on your system.

    Important

    When using a disk label to refer to a certain drive, for example, inst.stage2=hd:LABEL=RHEL-10-BaseOS-x86_64, replace all spaces with \x20.

  • initrdefi - Location of the initial RAM disk (initrd) image to be loaded.

Other options used in the grub.cfg configuration file are:

  • set timeout - Determines how long is the boot menu displayed before the default menu entry is automatically used. The default value is 60, which means the menu is displayed for 60 seconds. Setting this value to -1 disables the timeout completely.

    Note

    Setting the timeout to 0 is useful when performing a headless installation, because this setting immediately activates the default boot entry.

  • submenu - A submenu block allows you to create a sub-menu and group some entries under it, instead of displaying them in the main menu. The Troubleshooting submenu in the default configuration contains entries for rescuing an existing system.

    The title of the entry is in single or double quotes (' or ").

    The submenu block contains one or more menuentry definitions as described above, and the entire block is enclosed in curly braces ({}) For example:

    submenu 'Submenu title' {
      menuentry 'Submenu option 1' {
        linuxefi /images/pxeboot/vmlinuz inst.stage2=hd:LABEL=RHEL-10-0-BaseOS-x86_64 nomodeset quiet
        initrdefi /images/pxeboot/initrd.img
      }
      menuentry 'Submenu option 2' {
        linuxefi /images/pxeboot/vmlinuz inst.stage2=hd:LABEL=RHEL-10-0-BaseOS-x86_64 inst.rescue quiet
        initrdefi /images/pxeboot/initrd.img
      }
    }
    Copy to Clipboard Toggle word wrap
  • set default - Determines the default entry. The entry numbers start from 0. If you want to make the third entry the default one, use set default=2 and so on.
  • theme - Determines the directory which contains GRUB2 theme files. You can use the themes to customize visual aspects of the boot loader - background, fonts, and colors of specific elements.
Torna in cima
Red Hat logoGithubredditYoutubeTwitter

Formazione

Prova, acquista e vendi

Community

Informazioni sulla documentazione di Red Hat

Aiutiamo gli utenti Red Hat a innovarsi e raggiungere i propri obiettivi con i nostri prodotti e servizi grazie a contenuti di cui possono fidarsi. Esplora i nostri ultimi aggiornamenti.

Rendiamo l’open source più inclusivo

Red Hat si impegna a sostituire il linguaggio problematico nel codice, nella documentazione e nelle proprietà web. Per maggiori dettagli, visita il Blog di Red Hat.

Informazioni su Red Hat

Forniamo soluzioni consolidate che rendono più semplice per le aziende lavorare su piattaforme e ambienti diversi, dal datacenter centrale all'edge della rete.

Theme

© 2025 Red Hat