How to Migrate CentOS 7 to AlmaLinux 8: A Step-by-Step Guide

The ELevate project includes software for migrating CentOS 7 deployments to AlmaLinux 8 without needing to do a lot of heavy lifting and shifting.

How to Migrate CentOS 7 To AlmaLinux 8

It’s now easier than ever to migrate from CentOS 7 to AlmaLinux 8 thanks to the AlmaLinux project called ELevate. Here’s how to do it.

Table of Contents

Have you ever asked yourself: How do I migrate from CentOS 7 to AlmaLinux? Well, you don’t need to worry about this anymore, because it’s now possible in just a few easy steps that I will show you in this guide.

This will be especially helpful for users of CentOS 7 who will be left without a clear upgrade path after the end of the year when Red Hat withdraws support for CentOS 8. This is especially important because CentOS 7, which will will lose support in 2024, is assumed to have a much larger user base than CentOS 8, which had only been available for a little over a year when Red Hat announced it was being sunsetted.

Related: CentOS Stream: Everything You Need to Know About it

For those if you unaware, the AlmaLinux ELevate project allows users to upgrade or migrate between any RHEL-based distro. So let’s do it.

Our CentOS 7 system before we start the migration process to AlmaLinux.

CentOS 7 system before migration to AlmaLinux 8

1. Take System Backup

Before upgrading please make sure you take the backup of all your important data and if possible, take the snapshot of complete CentOS 7 system. This way you will be on the right side of things if anything goes wrong.

2. Upgrade the Current CentOS 7 System

The next step in the upgrade process is to make sure we have a completely upgraded system. Update existing software with the following command:

sudo yum update

Once all the packages are updated, reboot your system to apply the changes.

Now let’s verify our current operating system version.

cat /etc/centos-release
CentOS Linux release 7.9.2009 (Core)

As you can see the system runs CentOS 7.9 which is the latest CentOS version in the 7.x branch.

3. Migrate CentOS 7 To AlmaLinux 8

3.1 Install ELevate

The first step in the actual upgrade process is to install elevate-release package in your current CentOS7 system.

sudo yum install -y
Installing the elevate-release package

3.2 Install Leapp and Migration Data

The migration process is based on the use of the Red Hat’s Leapp utility. It combines Red Hat’s Leapp framework with a community created library and service for the migration metadata set required for it.

Therefore the next step is to install the required packages which in our case we wish to upgrade from CentOS 7 to AlmaLinux 8.

sudo yum install -y leapp-upgrade leapp-data-almalinux

3.3 Start a Preupgrade Check

The next step is to start a preupgrade check. The below command verifies server compatibility without any actual changes:

sudo leapp preupgrade

Probably the check will fail, but don’t panic! That’s normal because some tweaks are required in advance.

CentOS 7 to AlmaLinux 8 migration -Preupgrade check

According to the official documentation, those three commands shown below solve the problem. Just run them one after the other:

sudo rmmod pata_acpi
echo PermitRootLogin yes | sudo tee -a /etc/ssh/sshd_config
sudo leapp answer --section remove_pam_pkcs11_module_check.confirm=True

(Optional) If you run the check again, preupgrade check will succeed.

sudo leapp preupgrade
CentOS 7 to AlmaLinux 8 migration -Preupgrade check succeeded

3.4 Start the Upgrade Process from CentOS 7 to AlmaLinux 8

Now you can run the following command to migrate CentOS 7 to AlmaLinux 8.

sudo leapp upgrade

Be patient since the upgrade process could take some time. Once the migration is completed, you’ll be offered to reboot the system:

sudo reboot

A new entry in GRUB called ELevate-Upgrade-Initramfs will appear. Hit the Enter and wait for the upgrade process to finish. The system will be automatically booted into it. 

ELevate Upgrade Initramfs

And you will be welcomed by the AlmaLinux 8 GRUB menu at boot time.

Alma Linux 8 Boot Menu

4. Check the OS Version

Just to confirm that you have successfully migrated from CentOS 7 to AlmaLinux 8, check the OS version:

cat /etc/redhat-release
AlmaLinux release 8.4 (Electric Cheetah)

That’s all. Congratulations! You have successfully migrated to AlmaLinux 8.

(Optional) In addition, you can update the server hostname to match with AlmaLinux.

sudo hostnamectl set-hostname almalinux8
sudo reboot
CentOS 7 to AlmaLinux 8: Migration succeeded


AlmaLinux’s ELevate tool is a great one. If you’re looking to migrate from CentOS 7 to AlmaLinux 8 it may definitely be an amazing option for you.

If you are running CentOS 8.x, all you have to do to switch to AlmaLinux 8 is just to follow our CentOS 8 to AlmaLinux 8: A Step-by-Step Migration Guide.

Related: CentOS 8 to Rocky Linux 8 Migration: A Step-by-Step Tutorial

I have tried to make this guide as simple as possible. Thanks for using it! As always, feel free to share your thoughts in the comments box below.

Leave a Reply

Your email address will not be published.

Latest from Linux Knowledge