Upgrading CentOS 7 to CentOS 8

By | 26 July 2021

The steps described herein do not depict the official upgrade and this should not be applied to a production server yet.

PRE TASKS

Step 1: Install the EPEL Repository
install the EPL repository by running:

# yum install epel-release -y

Step 2: Install yum-utils Tools
After successfully installing EPEL, install yum-utils by running the command below:

# yum install yum-utils

Thereafter, you need to resolves RPM packages by executing the command.

# yum install rpmconf
# rpmconf -a

Next, perform a clean-up of all the packages you don’t require.

# package-cleanup –leaves
# package-cleanup –orphans

INSTALL PRE-UPGRADE TOOL

Step 3: Install the dnf in CentOS 7
Next step is installing dnf package manager which is the default package manager for CentOS 8

# yum install dnf

Then, you need to remove the yum package manager using the command.

# dnf -y remove yum yum-metadata-parser
# rm -Rf /etc/yum

CENTOS UPGRADE

Step 4: Upgrading CentOS 7 to CentOS 8
We are now ready to upgrade CentOS 7 to CentOS 8, but before we do so, upgrade the system using the newly install dnf package manager.

# dnf upgrade

Next, install CentOS 8 release package using dnf as shown below. This will take a while.

# dnf install http://mirror.centos.org/centos/8/BaseOS/x86_64/os/Packages/{centos-linux-repos-8-2.el8.noarch.rpm,centos-linux-release-8.4-1.2105.el8.noarch.rpm,centos-gpg-keys-8-2.el8.noarch.rpm}

Next, upgrade the EPEL repository.

# dnf -y upgrade https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm

After successfully upgrading the EPEL repository, remove all the temporary files.

# dnf clean all

Remove the old kernel core for CentOS 7.

# rpm -e `rpm -q kernel`

Be sure to remove conflicting packages.

# rpm -e –nodeps sysvinit-tools

Thereafter, launch the CentOS 8 system upgrade as shown.

# dnf -y –releasever=8 –allowerasing –setopt=deltarpm=false distro-sync

INSTALL NEW KERNEL

Step 5: Install the New Kernel Core for CentOS 8

To install a new kernel for CentOS 8, run the command.

# dnf -y install kernel-core

Finally, install CentOS 8 minimal package.

# dnf -y groupupdate “Core” “Minimal Install”

Now you can check the version of CentOS installed by running.

# cat /etc/redhat-release

Disclaimer : Create a recent backup of the system. This is an unofficial , unsupported procedure !

source: https://www.tecmint.com/upgrade-centos-7-to-centos-8/