Before 2021, CentOS was regarded as an enterprise-stable, production-ready operating system that had been cloned from Red Hat Enterprise Linux. It had a few tweaks to set it apart from RHEL, but essentially, it was RHEL without the cost of a subscription.
That was the “old” CentOS. The “new” CentOS, aptly called CentOS Stream, will take a similar approach to Fedora, which acts as an upstream source for RHEL. This means that new features will be introduced into CentOS Stream, where the bugs are worked out, and ultimately the new updates trickle down to RHEL.
Prerequisites:
Backup project and important files/directories:
Take a full backup of your important config files, directories, project files and databases etc. So, if something goes wrong, we should be able to go back quickly.
Step # 1: Installing all updates on CentOS 8.
First, make sure all the existing packages on your system are up to date.
dnf update
Now, verify CentOS Linux 8 version.
cat/etc/centos-release
Step # 2: Installing CentOS Stream package.
Install the CentOS-Stream release file by typing the following dnf command:
dnf in centos-release-stream
Step # 3: Migrating from CentOS 8 to CentOS Stream.
We have the required package is in place. The dnf is ready to provide a simple way for us to start migrating from CentOS 8 to CentOS Stream. But, first, we must swap repos. The following command will remove CentOS 8 repo and replace it with the CentOS Stream repo. We will get all updates and libs/apps from CentOS Stream. Execute the following command
dnf swap centos-linux-repos centos-stream-repos
Finally migrate CentOS 8 installation to CentOS stream
dnf repolist
we need to get packages for CentOS Stream Application binary interface ABI/API. This will upgrade or downgrade packages to match the new ABI/API and break 100% RHEL compatibility due to ABI/API change.
dnf distro-sync
Step # 4: Reboot the system.
Now, reboot server using following command:
systemctl reboot
Step # 5: Verification the Server version.
Check the server version using command below.
cat /etc/redhat-release
Make sure there are no errors, execute the command below.
tail -f /var/log/messages
Conclusion:
In this article you have learned how to migrate from CentOS 8 to CentOS Stream. Check out the CentOS Stream website for documentation.