The CentOS installation system includes a range of boot options for administrators, which modify the default behavior of the installation program by enabling (or disabling) certain functions. To use boot options, append them to the boot command line, as described in Configuring the Installation System at the Boot Menu. Multiple options added to the boot line need to be separated by a single space.
There are two basic types of options described in this chapter:
Options presented as ending with an "equals" sign (
=) require a value to be specified - they cannot be used on their own. For example, the
inst.vncpassword=option must also contain a value (in this case, a password). The correct form is therefore
inst.vncpassword=password. On its own, without a password specified, the option is invalid.
Options presented without the "
=" sign do not accept any values or parameters. For example, the
rd.live.checkoption forces Anaconda to verify the installation media before starting the installation; if this option is present, the check will be performed, and if it is not present, the check will be skipped.
The exact way to specify custom boot options is different on every system architecture. For architecture-specific instructions about editing boot options, see:
There are several different ways to edit boot options at the boot menu (that is, the menu which appears after you boot the installation media):
boot:prompt, accessed by pressing the Esc key anywhere in the boot menu. When using this prompt, the first option must always specify the installation program image file to be loaded. In most cases, the image can be specified using the
linuxkeyword. After that, additional options can be specified as needed.
Pressing the Tab key at this prompt will display help in the form of usable commands where applicable. To start the installation with your options, press the Enter key. To return from the
boot:prompt to the boot menu, restart the computer and boot from the installation media again.
>prompt on BIOS-based AMD64 and Intel 64 systems, accessed by highlighting an entry in the boot menu and pressing the Tab key. Unlike the
boot:prompt, this prompt allows you to edit a predefined set of boot options. For example, if you highlight the entry labeled
Test this media & install CentOS 7.6.1810, a full set of options used by this menu entry will be displayed on the prompt, allowing you to add your own options.
Pressing Enter will start the installation using the options you specified. To cancel editing and return to the boot menu, press the Esc key at any time.
The GRUB2 menu on UEFI-based 64-bit AMD, Intel and ARM systems. If your system uses UEFI, you can edit boot options by highlighting an entry and pressing the e key. When you finish editing, press F10 or Ctrl+X to start the installation using the options you specified.
In addition to the options described in this chapter, the boot prompt also accepts dracut kernel options. A list of these options is available as the
dracut.cmdline(7) man page.
Boot options specific to the installation program always start with
Specifies the installation source - that is, a location where the installation program can find the images and packages it requires. For example:
The target must be either:
an installable tree, which is a directory structure containing the installation program’s images, packages and repodata as well as a valid
a DVD (a physical disk present in the system’s DVD drive)
an ISO image of the full CentOS installation DVD, placed on a hard drive or a network location accessible from the installation system
This option allows for the configuration of different installation methods using different formats. The syntax is described in the table below.
Table 1. Installation Sources Installation source Option format
Any CD/DVD drive
Specific CD/DVD drive
In previous releases of CentOS, there were separate options for an installable tree accessible by NFS (the
nfsoption) and an ISO image located on an NFS source (the
nfsisooption). In CentOS 7.6.1810, the installation program can automatically detect whether the source is an installable tree or a directory containing an ISO image, and the
nfsisooption is deprecated.
Disk device names can be set using the following formats:
Kernel device name, for example
File system label, for example
File system UUID, for example
Non-alphanumeric characters must be represented as
\xNN, where NN is the hexadecimal representation of the character. For example,
\x20is a white space ("").
Specifies the location of the installation program runtime image to be loaded. The syntax is the same as in Specifying the Installation Source. This option expects a path to a directory containing a valid
.treeinfofile; the location of the runtime image will be read from this file if found. If a
.treeinfofile is not available, Anaconda will try to load the image from
Use the option multiple times to specify multiple HTTP, HTTPS or FTP sources.
inst.stage2=host1/install.img inst.stage2=host2/install.img inst.stage2=host3/install.img
By default, the
inst.stage2=boot option is used on the installation media and set to a specific label (for example,
inst.stage2=hd:LABEL=CentOS\x20Server.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 ensure this option is set to the correct value.
If you need to perform a driver update during the installation, use the
inst.dd=option. It can be used multiple times. The location of a driver RPM package can be specified using any of the formats detailed in Specifying the Installation Source. With the exception of the
inst.dd=cdromoption, the device name must always be specified. For example:
Using this option without any parameters (only as
inst.dd) will prompt the installation program to ask you for a driver update disk with an interactive menu.
Driver disks can also be loaded from a hard disk drive or a similar device instead of being loaded over the network or from
initrd. Follow this procedure:
Load the driver disk on a hard disk drive, a USB or any similar device.
Set the label, for example, DD, to this device.
Start the installation with:
as the boot argument.
Replace DD with a specific label and replace dd.rpm with a specific name. Use anything supported by the
inst.repocommand instead of LABEL to specify your hard disk drive.
For more information about driver updates during the installation, see Updating Drivers During Installation on AMD64 and Intel 64 Systems for AMD64 and Intel 64 systems and Updating Drivers During Installation on IBM Power Systems for IBM Power Systems servers.
Gives the location of a Kickstart file to be used to automate the installation. Locations can be specified using any of the formats valid for
inst.repo. See Specifying the Installation Source for details.
Use the option multiple times to specify multiple HTTP, HTTPS and FTP sources. If multiple HTTP, HTTPS and FTP locations are specified, the locations are tried sequentially until one succeeds:
inst.ks=host1/directory/ks.cfg inst.ks=host2/directory/ks.cfg inst.ks=host3/directory/ks.cfg
If you only specify a device and not a path, the installation program will look for the Kickstart file in
/ks.cfgon the specified device. If you use this option without specifying a device, the installation program will use the following:
In the above example, next-server is the DHCP
next-serveroption or the IP address of the DHCP server itself, and filename is the DHCP
/kickstart/. If the given file name ends with the
ip-kickstartis appended. For example:
Table 2. Default Kickstart File Location DHCP server address Client address Kickstart file location
Additionally, the installer will attempt to load a Kickstart file named
ks.cfgfrom a volume with a label of
OEMDRVif present. If your Kickstart file is in this location, you do not need to use the
inst.ks=boot option at all.
Adds headers to outgoing
HTTPrequests with 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=httpto provision systems.
Adds a header to outgoing
HTTPrequests. This header will contain the system’s serial number, read from
/sys/class/dmi/id/product_serial. The header has the following syntax:
This kernel option specifies a device to be used as the primary console. For example, to use a console on the first serial port, use
console=ttyS0. This option should be used along with the
You can use this option multiple times. In that case, the boot message will be displayed on all specified consoles, but only the last one will be used by the installation program afterwards. For example, if you specify
console=ttyS0 console=ttyS1, the installation program will use
Disables access to the root shell during the installation. This is useful with automated (Kickstart) installations - if you use this option, a user can watch the installation progress, but they cannot interfere with it by accessing the root shell by pressing Ctrl+Alt+F2.
Sets the language to be used during the installation. Language codes are the same as the ones used in the
langKickstart command as described in Kickstart Commands and Options. On systems where the system-config-language package is installed, a list of valid values can also be found in
Configures geolocation usage in the installation program. Geolocation is used to preset the language and time zone, and uses the following syntax:
The value parameter can be any of the following:
Table 3. Valid Values for the inst.geoloc Option
Use the Fedora GeoIP API
Use the Hostip.info GeoIP API
If this option is not specified, Anaconda will use
Specifies the keyboard layout to be used by the installation program. Layout codes are the same as the ones used in the
keyboardKickstart command as described in Kickstart Commands and Options.
Forces the installation program to run in text mode instead of graphical mode. The text user interface is limited, for example, it does not allow you to modify the partition layout or set up LVM. When installing a system on a machine with a limited graphical capabilities, it is recommended to use VNC as described in Enabling Remote Access.
Forces the installation program to run in command line mode. This mode does not allow any interaction, all options must be specified in a Kickstart file or on the command line.
Forces the installation program to run in graphical mode. This mode is the default.
Specifies 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
Specifies that the machine being installed onto does not have any display hardware. In other words, this option prevents the installation program from trying to detect a screen.
Specifies the name of the
Xdriver to be used both during the installation and on the installed system.
Tells the installation program to use the frame buffer
Xdriver instead of a hardware-specific driver. This option is equivalent to
Blacklists (completely disables) one or more drivers. Drivers (mods) disabled using this option will be prevented from loading when the installation starts, and after the installation finishes, the installed system will keep these settings. The blacklisted drivers can then be found in the
Use a comma-separated list to disable multiple drivers. For example:
sshdservice during the installation, which allows you to connect to the system during the installation using
SSHand monitor its progress. For more information on SSH, see the
ssh(1)man page and the corresponding chapter in the Red Hat Enterprise Linux 7 System Administrator’s Guide.
During the installation, the
rootaccount has no password by default. You can set a root password to be used during the installation with the
sshpwKickstart command as described in Kickstart Commands and Options.
Enables or disables the Kdump configuration screen (add-on) in the installer. This screen is enabled by default; use
inst.kdump_addon=offto disable it. Note that disabling the add-on will disable the
Kdumpscreens in both the graphical and text-based interface as well as the
%addon com_redhat_kdumpKickstart command.
Initial network initialization is handled by dracut. This section only lists some of the more commonly used options; for a complete list, see the
dracut.cmdline(7) man page. Additional information on networking is also available in Red Hat Enterprise Linux 7 Networking Guide.
Configures one or more network interfaces. To configure multiple interfaces, you can use the
ipoption multiple times - once for each interface. If multiple interfaces are configured, you must also use the option
rd.neednet=1, and you must specify a primary boot interface using the
bootdevoption, described below. Alternatively, you can use the
ipoption once, and then use Kickstart to set up further interfaces.
This option accepts several different formats. The most common are described in Network Interface Configuration Formats.
Table 4. Network Interface Configuration Formats Configuration Method Option format
Automatic configuration of any interface
Automatic configuration of a specific interface
Automatic configuration of a specific interface with an override 
methodparameter can be any the following:
Table 5. Automatic Interface Configuration Methods Automatic configuration method Value
IPv6 automatic configuration
iBFT (iSCSI Boot Firmware Table)
If you use a boot option which requires network access, such as
inst.ks=http://host:/path, without specifying the
ipoption, the installation program will use
To connect automatically to an iSCSI target, a network device for accessing the target needs to be activated. The recommended way to do so is to use
In the above tables, the ip parameter specifies the client’s IP address.
IPv6addresses can be specified by putting them in square brackets, for example,
The gateway parameter is the default gateway. IPv6 addresses are accepted here as well.
The netmask parameter is the netmask to be used. This can either be a full netmask (for example
255.255.255.0) or a prefix (for example
The hostname parameter is the host name of the client system. This parameter is optional.
Specifies the address of the name server. This option can be used multiple times.
You must use the option
rd.neednet=1if you use more than one
ipoption. Alternatively, to set up multiple network interfaces you can use the
iponce, and then set up further interfaces using Kickstart.
Specifies the boot interface. This option is mandatory if you use more than one
Assigns a given interface name to a network device with a given MAC address. Can be used multiple times. The syntax is
ifname=interface:MAC. For example:
ifname=option is the only supported way to set custom network interface names during installation.
Specifies the DHCP vendor class identifier. The
dhcpdservice will see this value as
vendor-class-identifier. The default value is
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 maximum amount of time to wait for network connectivity before timing out and continuing the installation process even if network connectivity is not present.
Sets up a Virtual LAN (VLAN) device on a specified interface with a given name. The syntax is
vlan=name:interface. For example:
The above will set up a VLAN device named
em1interface. The name can take the following forms:
Table 6. VLAN Device Naming Conventions Naming scheme Example
Set up 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:
For a list of available options, execute the
Using this option without any parameters will assume
Set up 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:
If this option is specified, the installer will use the kexec system call at the end of the installation, instead of performing a reboot. This loads the new system immediately, and bypasses the hardware initialization normally performed by the BIOS or firmware.
Due to the complexities involved with booting systems using kexec, it cannot be explicitly tested and guaranteed to function in every situation.
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.
Force the installation program to install partition information into a GUID Partition Table (GPT) instead of a Master Boot Record (MBR). This option is meaningless on UEFI-based systems, unless they are in BIOS compatibility mode.
Normally, BIOS-based systems and UEFI-based systems in BIOS compatibility mode will attempt to use the MBR schema for storing partitioning information, unless the disk is 232 sectors in size or larger. Most commonly, disk sectors are 512 bytes in size, meaning that this is usually equivalent to 2 TiB. Using this option will change this behavior, allowing a GPT to be written to disks smaller than this.
Configure the system for multilib packages (that is, to allow installing 32-bit packages on a 64-bit AMD64 or Intel 64 system) and install packages specified in this section as such.
Normally, on an AMD64 or Intel 64 system, only packages for this architecture (marked as
x86_64) and packages for all architectures (marked as
noarchwould be installed. When you use this option, packages for 32-bit AMD or Intel systems (marked as
i686) will be automatically installed as well if available.
This only applies to packages directly specified in the
%packagessection. If a package is only installed as a dependency, only the exact specified dependency will be installed. For example, if you are installing package bash which depends on package glibc, the former will be installed in multiple variants, while the latter will only be installed in variants specifically required.
By default, SELinux operates in
permissivemode in the installer, and in
enforcingmode in the installed system. This option disables the use of SELinux in the installer and the installed system entirely.
inst.selinux=0options are not the same. The
selinux=0option disables the use of SELinux in the installer and the installed system, whereas
inst.selinux=0disables SELinux only in the installer. By default, SELinux is set to operate in
permissivemode in the installer, so disabling it has little effect.
This option controls which Kickstart files and installation logs are saved to the installed system. It can be especially useful to disable saving such data when performing OEM operating system installations, or when generating images using sensitive resources (such as internal repository URLs), as these resources might otherwise be mentioned in kickstart files, or in logs on the image, or both. Possible values for this option are:
input_ks- disables saving of the input Kickstart file (if any).
output_ks- disables saving of the output Kickstart file generated by Anaconda.
all_ks- disables saving of both input and output Kickstart files.
logs- disables saving of all installation logs.
all- disables saving of all Kickstart files and all installation logs.
Multiple values can be combined as a comma separated list, for example:
This option controls the usage of zRAM swap during the installation. It creates a compressed block device inside the system RAM and uses it for swap space instead of the hard drive. This allows the installer to essentially increase the amount of memory available, which makes the installation faster on systems with low memory.
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=1to enable it, and on systems with 2 GiB or less memory, use
inst.zram=0to disable this feature.
The following options are necessary to configure Anaconda for remote graphical installation. See Using VNC for more details.
Specifies that the installation program’s graphical interface should be run in a
VNCsession. If you specify this option, you will need to connect to the system using a VNC client application to be able to interact with the installation program. VNC sharing is enabled, so multiple clients can connect to the system at the same time.
A system installed using VNC will start in text mode by default.
Sets a password on the VNC server used by the installation program. Any VNC client attempting to connecting to the system will have to provide the correct password to gain access. For example,
inst.vncpassword=testpwdwill set the password to
testpwd. The VNC password must be between 6 and 8 characters long.
If you specify an invalid password (one that is too short or too long), you will be prompted to specify a new one by a message from the installation program:
VNC password must be six to eight characters long. Please enter a new one, or leave blank for no password. Password:
Connect to a listening VNC client at a specified host and port once the installation starts. The correct syntax is
inst.vncconnect=host:port, where host is the address to the VNC client’s host, and port specifies which port to use. The port parameter is optional, if you do not specify one, the installation program will use
Specifies the location of the
updates.imgfile to be applied to the installation program runtime. The syntax is the same as in the
inst.repooption - see Installation Sources for details. In all formats, if you do not specify a file name but only a directory, the installation program will look for a file named
Specifies the minimum level for messages to be logged on a terminal. This only concerns terminal logging; log files will always contain messages of all levels.
Possible values for this option from the lowest to highest level are:
critical. The default value is
info, which means that by default, the logging terminal will display messages ranging from
Once the installation starts, this option sends log messages to the syslog process on the specified host. The remote syslog process must be configured to accept incoming connections. For information on how to configure a syslog service to accept incoming connections, see the Red Hat Enterprise Linux 7 System Administrator’s Guide.
virtioport (a character device at
/dev/virtio-ports/name) to be used for forwarding logs. The default value is
org.fedoraproject.anaconda.log.0; if this port is present, it will be used.
If this option is specified, the stage 2 image will be copied into RAM. When the stage2 image on NFS repository is used, this option may make the installation proceed smoothly, since the installation is sometimes affected by reconfiguring network in an environment built upon the stage 2 image on NFS.
Note that using this option when the stage 2 image is on an NFS server will increase the minimum required memory by the size of the image - roughly 500 MiB.
A debugging option that prevents anaconda from and rebooting when a fatal error occurs or at the end of the installation process. This allows you to capture installation logs which would be lost upon reboot.
Options in this list are deprecated. They will still work, but there are other options which offer the same functionality. Using deprecated options is not recommended and they are expected to be removed in future releases.
Note that as Configuring the Installation System at the Boot Menu describes, options specific to the installation program now use the
Configured the installation method. Use the
In NFS installations, specified that the target is an ISO image located on an NFS server instead of an installable tree. The difference is now detected automatically, which means this option is the same as
Configured the Domain Name Server (DNS). Use the
These options have been consolidated under the
Select network device to be used at early stage of installation. Different values have been replaced with different options; see the table below.
Table 7. Automatic Interface Configuration Methods Value Current behavior
Activation of all devices is attempted using
dhcp, unless the desired device and configuration is specified by the
ip=option or the
Similar to the above, with the difference that network will always be activated in the initramfs, whether it is needed or not. The supported
rd.neednetdracut option should be used to achieve the same result.
Ignored (the BOOTID= option is used by default when specified)
Replaced with the
Replaced by specifying the device name using the
Used to disable specified drivers. This is now handled by the
Disabled support for the FireWire interface. You can disable the FireWire driver (
firewire_ohci) by using the
Used to indicate the delay after which the network was considered active; the system waited until either the gateway was successfully pinged, or until the amount of seconds specified in this parameter passed. In CentOS 7.6.1810, network devices are configured and activated during the early stage of installation by the dracut modules which ensure that the gateway is accessible before proceeding. For more information about dracut, see the
Used to configure how long anaconda should wait for a link on a device before activating it. This functionality is now available in the dracut modules where specific
rd.net.timeout.*options can be configured to handle issues caused by slow network device initialization. For more information about [application]*dracut*, see the
The following options are removed. They were present in previous releases of CentOS, but they cannot be used anymore.
The installation program’s
initramfsis now completely non-interactive, which means that these options are not available anymore. Instead, use the
inst.repo=to specify the installation method and
ip=to configure network settings.
This option forced Anaconda to use the
/dev/ttyS0console as the output. Use the
console=/dev/ttyS0(or similar) instead.
Specified the location of updates for the installation program. Use the
Configured wireless network access. Network configuration is now being handled by dracut, which does not support wireless networking, rendering these options useless.
Used in the past to configure additional low-level network settings. All network settings are now handled by the
Allowed you to debug the loader. Use
Verified the installation media before starting the installation. Replaced with the
Specified a 3.5 inch diskette as the Kickstart file source. These drives are not supported anymore.
Configured a remote display. Replaced with the
Added UTF8 support when installing in text mode. UTF8 support now works automatically.
Used to disable IPv6 support in the installation program. IPv6 is now built into the kernel so the driver cannot be blacklisted; however, it is possible to disable IPv6 using the
Upgrades are done in a different way in CentOS 7.6.1810.
Used to configure Virtual LAN (802.1q tag) devices. Use the
vlan=dracut option instead.
Faults in memory (RAM) modules can cause your system to freeze or crash unpredictably. In certain situations, memory faults might only cause errors with particular combinations of software. For this reason, you should test the memory of a computer before you install CentOS for the first time, even if it has previously run other operating systems.
CentOS includes the Memtest86+ memory testing application. To start memory testing mode, choose Troubleshooting >
Memory test at the boot menu. Testing will begin immediately. By default, Memtest86+ carries out ten tests in every pass; a different configuration can be specified by accessing the configuration screen using the c key. After the first pass completes, a message will appear at the bottom informing you of the current status, and another pass will start automatically.
Memtest86+ only works on BIOS systems. Support for UEFI systems is currently unavailable.
The main screen displayed while testing is in progress is divided into three main areas:
The upper left corner shows information about your system’s memory configuration - the amount of detected memory and processor cache and their throughputs and processor and chipset information. This information is detected when Memtest86+ starts.
The upper right corner displays information about the tests - progress of the current pass and the currently running test in that pass as well as a description of the test.
The central part of the screen is used to display information about the entire set of tests from the moment when the tool has started, such as the total time, the number of completed passes, number of detected errors and your test selection. On some systems, detailed information about the installed memory (such as the number of installed modules, their manufacturer, frequency and latency) will be also displayed here. After the each pass completes, a short summary will appear in this location. For example:
Pass complete, no errors, press Esc to exit
If Memtest86+ detects an error, it will also be displayed in this area and highlighted red. The message will include detailed information such as which test detected a problem, the memory location which is failing, and others.
In most cases, a single successful pass (that is, a single run of all 10 tests) is sufficient to verify that your RAM is in good condition. In some rare circumstances, however, errors that went undetected on the first pass might appear on subsequent passes. To perform a thorough test on an important system, leave the tests running overnight or even for a few days in order to complete multiple passes.
The amount of time it takes to complete a single full pass of Memtest86+ varies depending on your system’s configuration (notably the RAM size and speed). For example, on a system with 2 GiB of DDR2 memory at 667 MHz, a single pass will take roughly 20 minutes to complete.
To halt the tests and reboot your computer, press the Esc key at any time.
For more information about using Memtest86+, see the official website at http://www.memtest.org/. A
README file is also located in
/usr/share/doc/memtest86+-version/ on CentOS systems with the memtest86+ package installed.
You can test the integrity of an ISO-based installation source before using it to install CentOS. These sources include DVD, and ISO images stored on a hard drive or NFS server. Verifying that the ISO images are intact before you attempt an installation helps to avoid problems that are often encountered during installation.
To test the checksum integrity of an ISO image, append the
rd.live.check to the boot loader command line. Note that this option is used automatically if you select the default installation option from the boot menu (
Test this media & install CentOS 7.6.1810).
You can boot a command-line Linux system from an installation disc without actually installing CentOS on the computer. This enables you to use the utilities and functions of a running Linux system to modify or repair already installed operating systems.
To load the rescue system with the installation disk or USB drive, choose
Rescue a CentOS system from the Troubleshooting submenu in the boot menu, or use the
inst.rescue boot option.
Specify the language, keyboard layout and network settings for the rescue system with the screens that follow. The final setup screen configures access to the existing system on your computer.
By default, rescue mode attaches an existing operating system to the rescue system under the directory
For additional information about rescue mode and other maintenance modes, see Basic System Recovery.
dhcp, but overrides the automatically obtained IP address, gateway, netmask, host name or other specified parameter. All parameters are optional; only specify the ones you want to override and automatically obtained values will be used for the others.