Chapter 5. Installer and image creation

This chapter lists the most notable changes to installer and image creation between RHEL 8 and RHEL 9.

5.1. Installer

Anaconda activates network automatically for interactive installations

Anaconda now activates the network automatically when performing interactive installation, without requiring users to manually activate it in the network spoke. This update does not change the installation experience for kickstart installations and installations using the ip= boot option.

New options to Lock root account and enable password-based SSH root login

RHEL 9 adds following new options to the root password configuration screen:

  • Lock root account: To lock the root access to the machine
  • Allow root SSH login with password: To enable password-based SSH root logins.

During the kickstart installation method, enable the password-based SSH root logins by adding the following line to the kickstart file.

%post
echo "PermitRootLogin yes" > /etc/ssh/sshd_config.d/01-permitrootlogin.conf
%end

Licensing, system, and user setting configuration screens have been disabled post standard installation

Previously, RHEL users configured Licensing, System (Subscription manager), and User Settings prior to gnome-initial-setup and login screens. Starting with RHEL 9, the initial setup screens have been disabled by default to improve user experience. If you must run the initial setup for user creation or license display, install the following packages based on the requirements.

  1. To install initial setup packages: # yum install initial-setup initial-setup-gui
  2. To enable initial setup while next reboot of the system. # systemctl enable initial-setup
  3. Reboot the system to view initial setup.

For kickstart installations, add initial-setup-gui to the packages section and enable the initial-setup service.

firstboot --enable
%packages
@^graphical-server-environment
initial-setup-gui
%end

The rhsm command for machine provisioning via Kickstart installations for satellite is now available

The rhsm command replaces the %post scripts for machine provisioning on RHEL 9. The rhsm command helps with all provisioning tasks such as registering the system, attaching RHEL subscriptions, and installing from a satellite instance. For more information, see the Registering and installing RHEL from Satellite using Kickstart section under the Performing an advanced RHEL installation guide.

Merged system purpose commands under the subscription-manager syspurpose command

Previously, there were two different commands to set system purpose attributes; syspurpose and subscriptions-manager. To unify all the system purpose attributes under one module, all the ‘addons’, ’role’, ’service-level’, and ‘usage’ commands from subscription-manager have been moved to the new submodule, subscription-manager syspurpose.

Existing subscription-manager commands outside the new submodule are deprecated. The separate package (python3-syspurpose) that provides the syspurpose command line tool has been removed in RHEL 9.

This update provides a consistent way to view, set, and update all system purpose attributes using a single command of subscription-manager. This command replaces all the existing system purpose commands with their equivalent versions available as a new subcommand. For example, subscription-manager role --set SystemRole becomes subscription-manager syspurpose role --set SystemRole and so on.

For complete information about the new commands, options, and other attributes, see the SYSPURPOSE OPTIONS section in the subscription-manager man page.

New kickstart command - timesource

The new timesource kickstart command is optional and it helps to set NTP, NTS servers, and NTP pools that provide time data. It also helps to control enabling or disabling the NTP services on the system. The --ntpservers option from the timezone command has been deprecated and has been replaced with this new command.

Support for Anaconda boot arguments without inst. prefix is no longer available

Anaconda boot arguments without the inst. prefix have been deprecated since RHEL 7. Support for these boot arguments has been removed in RHEL 9. To continue using these options, use the inst. prefix

For example, to force the installation program to run in the text mode instead of the graphical mode, use the following option:

inst.text

Deprecated Kickstart commands and options

The following Kickstart commands and options have been deprecated on RHEL9.

  • timezone --ntpservers - use the timesource command instead
  • timezone --nontp
  • logging --level
  • %packages --excludeWeakdeps - use --exclude-weakdeps instead
  • %packages --instLangs - use --inst-langs instead
  • %anaconda
  • pwpolicy - use the Anaconda configuration files instead

Where only specific options are listed, the base command and its other options are still available and not deprecated. Using the deprecated commands in Kickstart files prints a warning in the logs. You can turn the deprecated command warnings into errors with the inst.ksstrict boot option.

Removed Kickstart commands and options

The following Kickstart commands and options have been removed on RHEL 9. Using them in Kickstart files will cause an error.

  • device
  • deviceprobe
  • dmraid
  • install - use the subcommands or methods directly as commands
  • multipath
  • bootloader --upgrade
  • ignoredisk --interactive
  • partition --active
  • harddrive --biospart
  • autostep

Where only specific options and values are listed, the base command and its other options are still available and not removed.

Removed Boot Options

The following boot options have been removed from Red Hat Enterprise Linux.

  • inst.zram

    The zram.service is not supported on RHEL 9. See zram-generator for more information.

  • inst.singlelang

    The single language mode is not supported on RHEL 9.

  • inst.loglevel

    The log level is always set to debug.

5.2. Image creation

Image Builder now supports multiversion image creation

As of Red Hat Enterprise Linux 9.0 Beta, Image Builder supports creating images of multiple RHEL major and minor releases, such as RHEL 8.3, 8.4, and 8.5.

Image Builder now supports file system configuration

As of Red Hat Enterprise Linux 9.0 Beta, Image Builder provide support for users to specify a custom filesystem configuration in blueprints to create images with a specific disk layout, instead of using the default layout configuration.

Image builder can create bootable ISO Installer images

You can use Image Builder to create bootable ISO Installer images. These images consist of a tarball that contains a root file system which you can use to install directly to a bare metal server.