Learn how to – How To Upgrade to RHEL 9 from RHEL 8 Linux.
At long last, the stable Red Hat Enterprise Linux (RHEL 9) is now generally available. This announcement was made on 18th, May 2022. This release comes with more enhancements from the previous release RHEL 8. Futhermore it is well crafted to meet a hybrid cloud environment and can easily be deployed from the edge to the cloud.
The amazing features associated with RHEL 9 are:
- It offers new versions of the following for programming:
- PHP 8.0
- Node.JS 16
- Perl 5.32
- Python 3.9
- Ruby 3.0
- The version control systems provided are:
- Git 2.31
- Subversion 1.14
- The database servers provided include:
- MariaDB 10.5
- Redis 6.2
- PostgreSQL 13
- MySQL 8.0
- The following compilers and development tools have been added:
- GCC 11.2.1
- binutils 2.35.2
- glibc 2.34
- Compiler toolsets that include Go Toolset 1.17.7, LLVM Toolset 13.0.1, Rust Toolset 1.58.1 e.t.c
- Proxy caching servers:
- Varnish cache 6.6
- Squid 5.2
- It provides GNOME 40 which is a huge leap from GNOME 3.28 provided by RHEL 8
- Improved security and identity – It comes with OpenSSL 3.0.1 as well as adjusted cryptographic policies. SELinux has also been updated in this release.
- An improved Cockpit Web Console to manage RHEL 9
This guide provides simple steps on how to upgrade from RHEL 8 to RHEL 9 Linux.
Hardware Requirements
RHEL 9 works best on hardware with the following specifications:
- CPU:
- Minimum: Pentium-class
- Recommended 200 MHz Pentium-class or better
- Recommended for graphical: 400 MHz Pentium II or better
- Hard Disk Space:
- Custom Installation (minimum): 475MB
- Server (minimum): 850MB
- Personal Desktop: 1.7GB
- Workstation: 2.1GB
- Custom Installation (everything): 5.0GB
- Memory:
- Minimum for text mode: 64MB
- Minimum for graphical: 128MB
- Recommended for graphical: 192MB
To be able to upgrade from RHEL 8 to RHEL 9 you need the following:
- A working RHEL 8 system.
- Internet connection
- Free space of about 100MB on the boot partition
Having met the above requirements, the steps below can then be used to upgrade from RHEL 8 to RHEL 9.
#1. Prepare the RHEL 8 Server
Before you proceed, ensure that you have a working Red Hat Enterprise Linux Server subscription.
This can be verified using the command:
sudo subscription-manager list --installed
Sample Output:
Ensure that essential repositories have been enabled on your RHEL 8 system
$ sudo subscription-manager repos --enable rhel-8-for-x86_64-baseos-rpms --enable rhel-8-for-x86_64-appstream-rpms
1 local certificate has been deleted.
Repository 'rhel-8-for-x86_64-baseos-rpms' is enabled for this system.
Repository 'rhel-8-for-x86_64-appstream-rpms' is enabled for this system.
On AWS(only), you definitely need to enable the RHUI for the upgrade to occur.
sudo dnf config-manager –set-enabled rhui-client-config-server-8
sudo dnf -y install rh-amazon-rhui-client-ha leapp-rhui-aws
In case you previously made an upgrade from RHEL 7 to RHEL 8, you need to remove the tmp_leapp_py3 directory.
sudo rm -rf /root/tmp_leapp_py3
Update your system and the available packages to their latest versions:
sudo dnf update
Check the RHEL version.
#2. Install the Leapp Utility
The Leapp
utility provides an easy way to upgrade the system by automating the whole upgrade process.
This tool can be installed with the command:
sudo dnf install leapp-upgrade
Dependency Tree:
Dependencies resolved.
================================================================================
Package Arch Version Repository Size
================================================================================
Installing:
leapp-upgrade-el8toel9
noarch 0.16.0-6.el8_6 rhel-8-for-x86_64-appstream-rpms 603 k
Installing dependencies:
leapp noarch 0.14.0-1.el8_6 rhel-8-for-x86_64-appstream-rpms 31 k
leapp-deps noarch 0.14.0-1.el8_6 rhel-8-for-x86_64-appstream-rpms 14 k
leapp-upgrade-el8toel9-deps
noarch 0.16.0-6.el8_6 rhel-8-for-x86_64-appstream-rpms 29 k
python3-leapp noarch 0.14.0-1.el8_6 rhel-8-for-x86_64-appstream-rpms 173 k
Transaction Summary
================================================================================
Install 5 Packages
Total download size: 851 k
Installed size: 2.1 M
Is this ok [y/N]: y
Remove the versionlock
plugin. Which is used to lock packages to a specific version.
sudo dnf versionlock clear
#3. Perform pre-upgrade check
When performing the pre-upgrade check, the leapp
utility creates a file at /var/log/leapp/leapp-report.txt, that all possible problems and their recommended solutions.
But before that, we need to disable AllowZoneDrifting on firewalld.
sudo vim /etc/firewalld/firewalld.conf
At the end of the file, disable the feature by commenting it out as shown:
# AllowZoneDrifting
# Older versions of firewalld had undocumented behavior known as "zone
# drifting". This allowed packets to ingress multiple zones - this is a
# violation of zone based firewalls. However, some users rely on this behavior
# to have a "catch-all" zone, e.g. the default zone. You can enable this if you
# desire such behavior. It's disabled by default for security reasons.
# Note: If "yes" packets will only drift from source based zones to interface
# based zones (including the default zone). Packets never drift from interface
# based zones to other interfaces based zones (including the default zone).
# Possible values; "yes", "no". Defaults to "yes".
#AllowZoneDrifting=yes
Disable SELinux or set it in permissive mode
sudo setenforce 0
Now perform the pre-upgrade check using:
sudo leapp preupgrade --target 9.0
If everything is okay, you will see the below output:
#4. Upgrade from RHEL 8 to RHEL 9
Once the check is successful, you are allowed to proceed and upgrade the system using the leapp
utility.
sudo leapp upgrade --target 9.0
Sample output:
Now reboot your system.
sudo reboot
A GRUB entry with the name RHEL-Upgrade-Initramfs
appears. The system will automatically boot into this option.
The system upgrade will occur as shown.
#5. Post upgrade activities
Once the process is complete, we need to verify a few things. If you are running a desktop server, you will see a beautiful desktop environment.
Checking the current version.
cat /etc/os-release
Output:
Verify if the system is subscribed to the Red Hat Enterprise Linux Server plan.
sudo subscription-manager list --installed
Sample Output:
At this point, it is safe to assume that you have a working RHEL 9 system. That marks the end of this guide on how to upgrade from RHEL 8 to RHEL 9 Linux. I hope this worked for you too.
Related posts:
How To Upgrade from RHEL 6 To RHEL 8 Server
Leave a Reply
You must be logged in to post a comment.