Chapter 13. Boot options

This section contains information about some of the boot options that you can use to modify the default behavior of the installation program. For a full list of boot options, see the upstream boot option content.

13.1. Types of boot options

There are two types of boot options; those with an equals "=" sign, and those without an equals "=" sign. Boot options are appended to the boot command line and multiple options must be separated by a single space. Boot options that are specific to the installation program always start with inst.

Options with an equals "=" sign
You must specify a value for boot options that use the = symbol. For example, the inst.vncpassword= option must contain a value, in this case, a password. The correct syntax for this example is inst.vncpassword=password.
Options without an equals "=" sign
This boot option does not accept any values or parameters. For example, the rd.live.check option forces the installation program to verify the installation media before starting the installation. If this boot option is present, the verification is performed; if the boot option is not present, the verification is skipped.

13.2. Editing boot options

This section contains information about the different ways that you can edit boot options from the boot menu. The boot menu opens after you boot the installation media.

Editing the boot: prompt in BIOS

When using the boot: prompt, the first option must always specify the installation program image file that you want to load. In most cases, you can specify the image using the keyword. You can specify additional options according to your requirements.

Prerequisites

  • You have created bootable installation media (USB, CD or DVD).
  • You have booted the installation from the media, and the installation boot menu is open.

Procedure

  1. With the boot menu open, press the Esc key on your keyboard.
  2. The boot: prompt is now accessible.
  3. Press the Tab key on your keyboard to display the help commands.
  4. Press the Enter key on your keyboard to start the installation with your options. To return from the boot: prompt to the boot menu, restart the system and boot from the installation media again.
Note

The boot: prompt also accepts dracut kernel options. A list of options is available in the dracut.cmdline(7) man page.

Editing the > prompt

You can use the > prompt to edit predefined boot options. For example, select Test this media and install Red Hat Enterprise Linux 8.0.0 from the boot menu to display a full set of options.

Note

This procedure is for BIOS-based AMD64 and Intel 64 systems.

Prerequisites

  • You have created bootable installation media (USB, CD or DVD).
  • You have booted the installation from the media, and the installation boot menu is open.

Procedure

  1. From the boot menu, select an option and press the Tab key on your keyboard. The > prompt is accessible and displays the available options.
  2. Append the options that you require to the > prompt.
  3. Press the Enter key on your keyboard to start the installation.
  4. Press the Esc key on your keyboard to cancel editing and return to the boot menu.

Editing the GRUB2 menu

The GRUB2 menu is available on UEFI-based AMD64, Intel 64, and 64-bit ARM systems.

Prerequisites

  • You have created bootable installation media (USB, CD or DVD).
  • You have booted the installation from the media, and the installation boot menu is open.

Procedure

  1. From the boot menu window, select an option and press the e key on your keyboard.
  2. When you finish editing, press F10 or Ctrl+X on your keyboard to start the installation using the specified options.

13.3. Installation source boot options

This section contains information about the various installation source boot options.

inst.repo=

The inst.repo= boot option specifies the installation source, that is, the location providing the package repositories and a valid .treeinfo file that describes them. For example: inst.repo=cdrom. The target of the inst.repo= option must be one of the following installation media:

  • an installable tree, which is a directory structure containing the installation program images, packages, and repository data as well as a valid .treeinfo file
  • a DVD (a physical disk present in the system DVD drive)
  • an ISO image of the full Red Hat Enterprise Linux installation DVD, placed on a hard drive or a network location accessible to the system.

You can use the inst.repo= boot option to configure different installation source types using different formats. The following table summarizes possible methods and formats:

Table 13.1. Installation source boot options

Source typeBoot option formatSource format

CD/DVD drive

inst.repo=cdrom[:device]

Installation DVD as a physical disk. [a]

Hard Drive

inst.repo=hd:device:/path

Image file of the installation DVD, or an installation tree, which is a complete copy of the directories and files on the installation DVD.

NFS Server

inst.repo=nfs:[options:]server:/path

Image file of the installation DVD. [b]

HTTP Server

inst.repo=http://host/path

Installation tree, which is a complete copy of the directories and files on the installation DVD.

HTTPS Server

inst.repo=https://host/path

FTP Server

inst.repo=ftp://username:password@host/path

HMC

inst.repo=hmc

 
[a] If device is left out, installation program automatically searches for a drive containing the installation DVD.
[b] The NFS Server option uses NFS protocol version 3 by default. To use a different version X, add +nfsvers=X to options.

You can set disk device names with the following formats:

  • Kernel device name, for example /dev/sda1 or sdb2
  • File system label, for example LABEL=Flash or LABEL=RHEL8
  • File system UUID, for example UUID=8176c7bf-04ff-403a-a832-9557f94e61db

Non-alphanumeric characters must be represented as \xNN, where NN is the hexadecimal representation of the character. For example, \x20 is a white space (" ").

Further notes for inst.repo:

  • When the inst.stage2= option for installation program runtime images is not specified, the location supplied with inst.repo is searched also for installation program images. This fallback does not depend on the .treeinfo file.
  • You do not have to use inst.repo with an installation DVD.
  • To add custom repositories to the installation, use the inst.addrepo boot option or repo Kickstart command. inst.repo should be used only for the default data supplied with the installation program.
inst.stage2=

The inst.stage2= boot option specifies the location of the installation program runtime image. This option expects a path to a directory containing a valid .treeinfo file. The location of the runtime image is read from the .treeinfo file. If the .treeinfo file is not available, the installation program attempts to load the image from LiveOS/squashfs.img.

When the inst.stage2 option is not specified, the installation program attempts to use the location specified with inst.repo option.

You should specify this option only for PXE boot. The installation DVD and Boot ISO already contain a correct inst.stage2 option to boot the installation program from themselves.

Note

By default, the inst.stage2= boot option is used on the installation media and is set to a specific label, for example, inst.stage2=hd:LABEL=RHEL-8-0-0-BaseOS-x86_64. If you modify the default label of the file system containing the runtime image, or if you use a customized procedure to boot the installation system, you must verify that the inst.stage2= boot option is set to the correct value.

inst.stage2.all

You can use the inst.stage2.all boot option to specify several HTTP, HTTPS, or FTP sources by using the inst.stage2= boot option multiple times. The sources are tried sequentially until one succeeds. For example:

inst.stage2.all
inst.stage2=http://hostname1/path_to_install_tree/
inst.stage2=http://hostname2/path_to_install_tree/
inst.stage2=http://hostname3/path_to_install_tree/
inst.dd=
The inst.dd= boot option is used to perform a driver update during the installation. See the Performing an advanced RHEL installation document for information on how to update drivers during installation.
inst.repo=hmc
When booting from a Binary DVD, the installation program prompts you to enter additional kernel parameters. To set the DVD as an installation source, append inst.repo=hmc to the kernel parameters. The installation program then enables SE and HMC file access, fetches the images for stage2 from the DVD, and provides access to the packages on the DVD for software selection. This option eliminates the requirement of an external network setup and expands the installation options.

Additional resources

13.4. Network boot options

This section contains information about commonly used network boot options.

Note

Initial network initialization is handled by dracut. For a complete list, see the dracut.cmdline(7) man page.

ip=

Use the ip= boot option to configure one or more network interfaces. To configure multiple interfaces, you can use the ip option multiple times, once for each interface; to do so, you must use the rd.neednet=1 option, and you must specify a primary boot interface using the bootdev option. Alternatively, you can use the ip option once, and then use Kickstart to set up further interfaces. This option accepts several different formats. The following tables contain information about the most common options.

Note

In the following tables:

  • The ip parameter specifies the client IP address. You can specify IPv6 addresses in square brackets, for example, [2001:DB8::1].
  • The gateway parameter is the default gateway. IPv6 addresses are also accepted.
  • The netmask parameter is the netmask to be used. This can be either a full netmask (for example, 255.255.255.0) or a prefix (for example, 64).
  • The hostname parameter is the host name of the client system. This parameter is optional.

Table 13.2. Network interface configuration boot option formats

Configuration methodBoot option format

Automatic configuration of any interface

ip=method

Automatic configuration of a specific interface

ip=interface:method

Static configuration

ip=ip::gateway:netmask:hostname:interface:none

Automatic configuration of a specific interface with an override

ip=ip::gateway:netmask:hostname:interface:method:mtu

Note

The method automatic configuration of a specific interface with an override brings up the interface using the specified method of automatic configuration, such as dhcp, but overrides the automatically-obtained IP address, gateway, netmask, host name or other specified parameters. All parameters are optional, so specify only the parameters that you want to override.

The method parameter can be any of the following:

Table 13.3. Automatic interface configuration methods

Automatic configuration methodValue

DHCP

dhcp

IPv6 DHCP

dhcp6

IPv6 automatic configuration

auto6

iSCSI Boot Firmware Table (iBFT)

ibft

Note
  • If you use a boot option that requires network access, such as inst.ks=http://host:/path, without specifying the ip option, the installation program uses ip=dhcp.
  • To connect to an iSCSI target automatically, you must activate a network device for accessing the target. The recommended way to activate a network is to use the ip=ibft boot option.
nameserver=
The nameserver= option specifies the address of the name server. You can use this option multiple times.
rd.neednet=
Typically, ip= options are applied only if the network is required by the installation (based on any other boot options that are used). You can use rd.neednet=1 to explicitly force the application of ip= options.
bootdev=
The bootdev= option specifies the boot interface. This option is mandatory if you use more than one ip option.
ifname=

The ifname= options assigns an interface name to a network device with a given MAC address. You can use this option multiple times. The syntax is ifname=interface:MAC. For example:

ifname=eth0:01:23:45:67:89:ab
Note

The ifname= option is the only supported way to set custom network interface names during installation.

inst.dhcpclass=
The inst.dhcpclass= option specifies the DHCP vendor class identifier. The dhcpd service sees this value as vendor-class-identifier. The default value is anaconda-$(uname -srm).
inst.waitfornet=
Using the inst.waitfornet=SECONDS boot option causes the installation system to wait for network connectivity before installation. The value given in the SECONDS argument specifies the maximum amount of time to wait for network connectivity before timing out and continuing the installation process even if network connectivity is not present.
vlan=

Use the vlan= option to configure a Virtual LAN (VLAN) device on a specified interface with a given name. The syntax is vlan=name:interface. For example:

vlan=vlan5:em1

This configures a VLAN device named vlan5 on the em1 interface. The name can take the following forms:

Table 13.4. VLAN device naming conventions

Naming schemeExample

VLAN_PLUS_VID

vlan0005

VLAN_PLUS_VID_NO_PAD

vlan5

DEV_PLUS_VID

em1.0005

DEV_PLUS_VID_NO_PAD

em1.5

bond=

Use the bond= option to configure a bonding device with the following syntax: bond=name[:slaves][:options]. Replace name with the bonding device name, slaves with a comma-separated list of physical (ethernet) interfaces, and options with a comma-separated list of bonding options. For example:

bond=bond0:em1,em2:mode=active-backup,tx_queues=32,downdelay=5000

For a list of available options, execute the modinfo bonding command. Using this option without any parameters assumes bond=bond0:eth0,eth1:mode=balance-rr.

team=

Use the team= option to configure a team device with the following syntax: team=master:slaves. Replace master with the name of the master team device and slaves with a comma-separated list of physical (ethernet) devices to be used as slaves in the team device. For example:

team=team0:em1,em2

Additional resources

13.5. Console boot options

This section contains information about configuring boot options for your console, monitor display, and keyboard.

console=
Use the console= option to specify a device that you want to use as the primary console. For example, to use a console on the first serial port, use console=ttyS0. Use this option in conjunction with the inst.text option. You can use the console= option multiple times. If you do, the boot message is displayed on all specified consoles, but only the last one is used by the installation program. For example, if you specify console=ttyS0 console=ttyS1, the installation program uses ttyS1.
noshell
Use the noshell option to disable access to the root shell during installation. This is useful with Kickstart installations.
inst.lang=
Use the inst.lang= option to set the language that you want to use during the installation. locale -a | grep _ or localectl list-locales | grep _ returns a list of locales.
inst.geoloc=

Use the inst.geoloc= option to configure geolocation usage in the installation program. Geolocation is used to preset the language and time zone, and uses the following syntax: inst.geoloc=value. The value can be any of the following parameters:

Table 13.5. Values for the inst.geoloc boot option

ValueBoot option format

Disable geolocation

inst.geoloc=0

Use the Fedora GeoIP API

inst.geoloc=provider_fedora_geoip

Use the Hostip.info GeoIP API

inst.geoloc=provider_hostip

If you do not specify the inst.geoloc= option, the installation program uses provider_fedora_geoip.

inst.keymap=
Use the inst.keymap= option to specify the keyboard layout that you want to use for the installation.
inst.text
Use the inst.text option to force the installation program to run in text mode instead of graphical mode.
inst.cmdline
Use the inst.cmdline option to force the installation program to run in command-line mode. This mode does not allow any interaction, and you must specify all options in a Kickstart file or on the command line.
inst.graphical
Use the inst.graphical option to force the installation program to run in graphical mode. This mode is the default.
inst.resolution=
Use the inst.resolution= option to specify the screen resolution in graphical mode. The format is NxM, where N is the screen width and M is the screen height (in pixels). The lowest supported resolution is 1024x768.
inst.xdriver=
Use the inst.xdriver= option to specify the name of the X driver that you want to use both during installation and on the installed system.
inst.usefbx
Use the inst.usefbx option to prompt the installation program to use the frame buffer X driver instead of a hardware-specific driver. This option is equivalent to inst.xdriver=fbdev.
modprobe.blacklist=

Use the modprobe.blacklist= option to blacklist or completely disable one or more drivers. Drivers (mods) that you disable using this option cannot load when the installation starts, and after the installation finishes, the installed system retains these settings. You can find a list of the blacklisted drivers in the /etc/modprobe.d/ directory. Use a comma-separated list to disable multiple drivers. For example:

modprobe.blacklist=ahci,firewire_ohci
inst.sshd=0
By default, the sshd option is automatically started only on the IBM Z architecture. On other architectures, sshd is not started unless you use the inst.sshd option. Use the inst.sshd=0 option to prevent sshd from starting automatically on IBM Z.
inst.sshd

Use the inst.sshd option to start the sshd service during installation, so that you can connect to the system during the installation using SSH, and monitor the installation progress. For more information about SSH, see the ssh(1) man page. By default, the sshd option is automatically started only on the IBM Z architecture. On other architectures, sshd is not started unless you use the inst.sshd option.

Note

During installation, the root account has no password by default. You can set a root password during installation with the sshpw Kickstart command.

inst.kdump_addon=
Use the inst.kdump_addon= option to enable or disable the Kdump configuration screen (add-on) in the installation program. This screen is enabled by default; use inst.kdump_addon=off to disable it. Disabling the add-on disables the Kdump screens in both the graphical and text-based interface as well as the %addon com_redhat_kdump Kickstart command.

Additional resources

13.6. Debug boot options

This section contains information about the options that you can use when debugging issues.

inst.rescue=
Use the inst.rescue= option to run the rescue environment. The option is useful for trying to diagnose and fix systems.
inst.updates=

Use the inst.updates= option to specify the location of the updates.img file that you want to apply during installation. There are a number of sources for the updates.

Updates from a network

The easiest way to use inst.updates= is to specify the network location of updates.img. This does not require any modification to the installation tree. To use this method, edit the kernel command line to include inst.updates, for example:

inst.updates=http://some.website.com/path/to/updates.img
Updates from a disk image

You can also save an updates.img on a floppy drive or a USB key. This can be done only with an ext2 filesystem type of updates.img. To save the contents of the image on your floppy drive, insert the floppy disc and run the following command:

dd if=updates.img of=/dev/fd0 bs=72k count=20

To use a USB key or flash media, replace /dev/fd0 with the device name of your USB key.

Updates from an installation tree

If you are using a CD, hard drive, HTTP, or FTP install, you can save the updates.img in the installation tree so that all installations can detect the .img. Save the file in the images/ directory. The file name must be updates.img.

For NFS installs, there are two options: You can either save the image in the images/ directory, or in the RHupdates/ directory in the installation tree.

inst.loglevel=
Use the inst.loglevel= option to specify the minimum level of messages logged on a terminal. This concerns only terminal logging; log files always contain messages of all levels. Possible values for this option from the lowest to highest level are: debug, info, warning, error and critical. The default value is info, which means that by default, the logging terminal displays messages ranging from info to critical.
inst.syslog=
When installation starts, the inst.syslog= option sends log messages to the syslog process on the specified host. The remote syslog process must be configured to accept incoming connections.
inst.virtiolog=
Use the inst.virtiolog= option to specify the virtio port (a character device at /dev/virtio-ports/name) that you want to use for forwarding logs. The default value is org.fedoraproject.anaconda.log.0; if this port is present, it is used.
inst.nokill
The inst.nokill option is a debugging option that prevents the installation program from rebooting when a fatal error occurs, or at the end of the installation process. Use the inst.nokill option to capture installation logs which would be lost upon reboot.

Additional resources

13.7. Kickstart boot options

This section contains information about the Kickstart boot options.

inst.ks=

Use the inst.ks= boot option to define the location of a Kickstart file that you want to use to automate the installation. You can then specify locations using any of the inst.repo formats. You can use the option multiple times to specify multiple HTTP, HTTPS and FTP sources. If you specify multiple HTTP, HTTPS and FTP locations, and add the inst.ks.all option, the locations are tried sequentially until one succeeds, for example:

inst.ks.all inst.ks=host1/directory/ks.cfg inst.ks=host2/directory/ks.cfg inst.ks=host3/directory/ks.cfg

If you specify a device and not a path, the installation program looks for the Kickstart file in /ks.cfg on the device that you specify. If you use this option without specifying a device, the installation program uses the following option:

inst.ks=nfs:next-server:/filename

In the previous example, next-server is the DHCP next-server option or the IP address of the DHCP server itself, and filename is the DHCP filename option, or /kickstart/. If the given file name ends with the / character, ip-kickstart is appended. The following table contains an example.

Table 13.6. Default Kickstart file location example

DHCP server addressClient addressKickstart file location

192.168.122.1

192.168.122.100

192.168.122.1:/kickstart/192.168.122.100-kickstart

If a volume with a label of OEMDRV is present, the installation program attempts to load a Kickstart file named ks.cfg. If your Kickstart file is in this location, you do not need to use the inst.ks= boot option.

inst.ks.all
Specify this option to sequentially try multiple Kickstart file locations provided by multiple inst.ks options. The first successful location is used. This applies only to locations of type http, https or ftp, other locations are ignored.
inst.ks.sendmac

Use the inst.ks.sendmac option to add headers to outgoing HTTP requests that contain the MAC addresses of all network interfaces. For example:

X-RHN-Provisioning-MAC-0: eth0 01:23:45:67:89:ab

This can be useful when using inst.ks=http to provision systems.

inst.ks.sendsn

Use the inst.ks.sendsn option to add a header to outgoing HTTP requests. This header contains the system serial number, read from /sys/class/dmi/id/product_serial. The header has the following syntax:

X-System-Serial-Number: R8VA23D

Additional resources

13.8. Advanced installation boot options

This section contains information about advanced installation boot options.

inst.kexec

The inst.kexec option allows the installation program to use the kexec system call at the end of the installation, instead of performing a reboot. The inst.kexec option loads the new system immediately, and bypasses the hardware initialization normally performed by the BIOS or firmware.

Important

This option is deprecated and available as a Technology Preview only. For information on Red Hat scope of support for Technology Preview features, see the Technology Preview Features Support Scope document.

When kexec is used, device registers which would normally be cleared during a full system reboot, might stay filled with data, which could potentially create issues for some device drivers.

inst.multilib

Use the inst.multilib boot option to configure the system for multilib packages, that is, to allow installing 32-bit packages on a 64-bit AMD64 or Intel 64 system. Normally, on an AMD64 or Intel 64 system, only packages for this architecture (marked as x86_64) and packages for all architectures (marked as noarch) are installed. When you use the inst.multilib boot option, packages for 32-bit AMD or Intel systems (marked as i686) are automatically installed.

This applies only to packages directly specified in the %packages section. If a package is installed as a dependency, only the exact specified dependency is installed. For example, if you are installing the bash package which depends on the glibc package, the former is installed in multiple variants, while the latter is installed only in variants that the bash package requires.

selinux=0

By default, the selinux=0 boot option operates in permissive mode in the installation program, and in enforcing mode in the installed system. The selinux=0 boot option disables the use of SELinux in the installation program and the installed system.

Note

The selinux=0 and inst.selinux=0 options are not the same. The selinux=0 option disables the use of SELinux in the installation program and the installed system. The inst.selinux=0 option disables SELinux only in the installation program. By default, SELinux operates in permissive mode in the installation program, so disabling SELinux has little effect.

inst.zram
The inst.zram option controls the usage of zRAM swap during installation. The option creates a compressed block device inside the system RAM and uses it for swap space instead of the hard drive. This allows the installation program to run with less available memory than is possible without compression, and it might also make the installation faster. By default, swap on zRAM is enabled on systems with 2 GiB or less RAM, and disabled on systems with more than 2 GiB of memory. You can use this option to change this behavior; on a system with more than 2 GiB RAM, use inst.zram=1 to enable the feature, and on systems with 2 GiB or less memory, use inst.zram=0 to disable the feature.

Additional resources