How to migrate CentOS 8 to Rocky Linux

Share on Social Media

Discover how to seamlessly migrate from CentOS 8 to Rocky Linux with our comprehensive guide. Follow step-by-step instructions to ensure a smooth transition, maintaining data integrity and system stability throughout the process. #centlinux #linux #rockylinux

What is Rocky Linux?

Rocky Linux is a community-driven, enterprise-grade operating system designed to be a 100% compatible replacement for CentOS Linux. It was created in response to the shift in CentOS Linux’s direction by CentOS Project, where CentOS Linux 8 was discontinued in favor of CentOS Stream, a rolling-release distribution that serves as a development preview for Red Hat Enterprise Linux (RHEL).

Rocky Linux aims to provide a stable, reliable, and free alternative to CentOS Linux, offering long-term support (LTS) and binary compatibility with RHEL. It is built from the same upstream sources as RHEL and follows a release model similar to CentOS Linux, with predictable release cycles and updates.

Key features of Rocky Linux include:

  1. Binary Compatibility: Designed to be fully compatible with RHEL, allowing users to seamlessly migrate their RHEL or CentOS deployments to Rocky Linux without modifications.
  2. Stability and Reliability: Built on a stable foundation with long-term support (LTS), ensuring a dependable operating system for production environments.
  3. Community-Driven Development: Developed and maintained by a community of volunteers, ensuring transparency, accountability, and collaboration in the development process.
  4. Security Updates: Regular security updates and patches to address vulnerabilities and keep systems secure.
  5. Free and Open Source: Distributed under open-source licenses, allowing users to freely use, modify, and distribute the software.

Rocky Linux aims to serve a wide range of use cases, including enterprise deployments, cloud computing, virtualization, and development environments. It provides a stable and reliable platform for organizations and individuals seeking an alternative to CentOS Linux with long-term support and compatibility with the broader RHEL ecosystem.

Why Migrate to Rocky Linux?:

CentOS Linux 8 is no more, and the fans are eagerly looking for alternatives. Rocky Linux is the most anticipated downstream fork of Red Hat Enterprise Linux 8. The project is led by Gregory Kurtzer, founder of the CentOS project. Therefore, fans are expecting that the Rocky Linux may be the best alternative of CentOS Linux 8.

Just like CentOS, Rocky Linux is also a community enterprise operating system designed to be 100% bug-for-bug compatible with America’s top enterprise Linux distribution i.e Red Hat Enterprise Linux.

Recommended Online Training: Learn Bash Shell in Linux for Beginners

745772 0021

Environment Specification:

We are using a minimal CentOS 8 virtual machine with following specifications.

  • CPU – 3.4 Ghz (2 cores)
  • Memory – 2 GB
  • Storage – 40 GB
  • Operating System – CentOS 8.3
  • Hostname – centos-linux-8.centlinux.com
  • IP Address – 192.168.116.230 /24

Verifying Existing CentOS Linux OS

Connect with centos-linux-8.centlinux.com as root user by using a ssh client.

Check the current operating system name and version.

# cat /etc/os-release
NAME="CentOS Linux"
VERSION="8"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="8"
PLATFORM_ID="platform:el8"
PRETTY_NAME="CentOS Linux 8"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:8"
HOME_URL="https://centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"
CENTOS_MANTISBT_PROJECT="CentOS-8"
CENTOS_MANTISBT_PROJECT_VERSION="8"

Check the Linux Kernel version by using uname command.

# uname -r
4.18.0-240.1.1.el8_3.x86_64

Migrate CentOS 8 to Rocky Linux

Thanks to migrate2rocky.sh script, migration process is now pretty straight forward. By running this script you can easily migrate CentOS 8 to Rocky Linux.

You can download migrate2rocky.sh script from GitHub, it’s free.

Execute the wget command to download migrate2rocky.sh script straight from the Linux CLI.

# wget https://raw.githubusercontent.com/rocky-linux/rocky-tools/main/migrate2rocky/migrate2rocky.sh
--2021-07-02 18:58:34--  https://raw.githubusercontent.com/rocky-linux/rocky-tools/main/migrate2rocky/migrate2rocky.sh
Resolving raw.githubusercontent.com (raw.githubusercontent.com)... 185.199.111.133, 185.199.109.133, 185.199.110.133, ...
Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|185.199.111.133|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 28338 (28K) [text/plain]
Saving to: ‘migrate2rocky.sh’

migrate2rocky.sh    100%[===================>]  27.67K  --.-KB/s    in 0.07s

2021-07-02 18:58:37 (410 KB/s) - ‘migrate2rocky.sh’ saved [28338/28338]

To make downloaded file executable, you need to set execution permissions on it.

# chmod +x migrate2rocky.sh

Check the migrate2rocky.sh command usage by executing following command.

# ./migrate2rocky.sh -h
Usage: migrate2rocky.sh [OPTIONS]

Options:
-h Display this help
-r Convert to rocky
-V Verify switch
   !! USE WITH CAUTION !!

Execute migrate2rocky.sh script to start migration of your Linux operating system.

# ./migrate2rocky.sh -r
Executing migrate2rocky.sh Script
Executing migrate2rocky.sh Script

The script first checks the CentOS 8 yum repositories in use, and then replace these repositories with Rocky Linux equivalent.

The migration script also look for the system packages that corresponds to the CentOS Linux 8 branding such as logos, backgrounds and license. And then replace it with Rocky Linux equivalent to change the look and feel of your operating system.

migrate2rocky.sh Downloading Packages
migrate2rocky.sh Downloading Packages

Besides migration, the migrate2rocky.sh script also upgrades the Linux server to latest stable releases.

migrate2rocky.sh Installing Packages
migrate2rocky.sh Installing Packages

The script takes couple of minutes to complete, depending upon your Internet connection speed. For us it take about an hour to complete. So sit back and relax for a while.

After successful completion of migrate2rocky.sh script, you need to reboot your system with the new Linux Kernel.

# reboot
Rocky Linux GRUB Menu
Rocky Linux GRUB Menu

During reboot, your GRUB boot menu will show a new entry pertains to the new Linux Kernel. Press <ENTER> to start your operating system with this new Kernel.

After reboot, execute following command at Linux bash prompt to check the current operating system version and name.

# cat /etc/os-release
NAME="Rocky Linux"
VERSION="8.4 (Green Obsidian)"
ID="rocky"
ID_LIKE="rhel fedora"
VERSION_ID="8.4"
PLATFORM_ID="platform:el8"
PRETTY_NAME="Rocky Linux 8.4 (Green Obsidian)"
ANSI_COLOR="0;32"
CPE_NAME="cpe:/o:rocky:rocky:8.4:GA"
HOME_URL="https://rockylinux.org/"
BUG_REPORT_URL="https://bugs.rockylinux.org/"
ROCKY_SUPPORT_PRODUCT="Rocky Linux"
ROCKY_SUPPORT_PRODUCT_VERSION="8"

You can see that your operating system is migrated from CentOS 8 to Rocky Linux.

Also check the Linux kernel version.

# uname -r
4.18.0-305.7.1.el8_4.x86_64

The script has also upgraded your Linux Kernel to the latest stable version support by your operating system.

Final Thoughts

Migrating from CentOS 8 to Rocky Linux marks a strategic shift towards stability, reliability, and long-term support for your system. Our comprehensive guide ensures a seamless transition, safeguarding your data integrity and preserving operational continuity.

If you seek personalized assistance or specialized support during the migration process, I offer expert services tailored to your needs. Explore my expertise and service offerings on my Fiverr profile:

Linux Support Services – Fiverr Service

Let me guide you through the migration journey, ensuring a smooth transition from CentOS 8 to Rocky Linux, and empowering your system with enhanced performance and long-term support.

Leave a Comment