Convert CentOS 8 to Oracle Linux 8 (OL8)
This article demonstrates how to convert a CentOS 8 installation to Oracle Linux 8 (OL8).
Red Hat recently announced they are killing off the CentOS distribution. Updates for CentOS 8 are due to end in December 2021, so that gives people a year to find a new home. One option is to switch to Oracle Linux. Fortunately, Oracle make it really easy to convert existing an CentOS installation into Oracle Linux.
Convert the Operating System
First, take a backup of the system, so you have a fallback restore point.
We display the contents of the "/etc/centos-release" file, which shows we have a CentOS 8.2 installation.
$ cat /etc/centos-release CentOS Linux release 8.2.2004 (Core) $
Download the conversion script from the Oracle GitHub repo, and run it. Then wait while it downloads the packaged as switches you from CentOS to Oracle Linux.
curl -O https://raw.githubusercontent.com/oracle/centos2ol/main/centos2ol.sh sudo bash centos2ol.sh
Reboot the system.
We now have an Oracle Linux server running the UEK kernel.
$ sudo cat /etc/oracle-release Oracle Linux Server release 8.3 $ uname -r 5.4.17-2036.101.2.el8uek.x86_64 $
If you are happy to use this kernel, the process is complete now and you can test your server.
Switch Default Kernel
Oracle Linux also includes the Red Hat kernal, known as the Red Hat Compatibility Kernel. If you would prefer to use that kernel, it's really easy to switch.
We check the available kernels in the "/boot" directory. We pick the highest version kernel that doesn't contain "uek".
$ ls -l /boot/vmlinuz-* -rwxr-xr-x. 1 root root 8913656 Oct 22 22:59 /boot/vmlinuz-0-rescue-5fd85e2afa24422eb63894e2dbfa9898 -rwxr-xr-x. 1 root root 8975912 Dec 18 18:07 /boot/vmlinuz-0-rescue-caad1bd0b25943b1b526a131661074b3 -rwxr-xr-x. 1 root root 8920200 Sep 14 14:45 /boot/vmlinuz-4.18.0-193.19.1.el8_2.x86_64 -rwxr-xr-x. 1 root root 9520664 Dec 16 00:42 /boot/vmlinuz-4.18.0-240.8.1.el8_3.x86_64 -rwxr-xr-x. 1 root root 8975912 Dec 3 02:02 /boot/vmlinuz-5.4.17-2036.101.2.el8uek.x86_64 $
We make this the default kernel using the
grubby command and the
$ sudo grubby --set-default /boot/vmlinuz-4.18.0-240.8.1.el8_3.x86_64 The default is /boot/loader/entries/caad1bd0b25943b1b526a131661074b3-4.18.0-240.8.1.el8_3.x86_64.conf with index 3 and kernel /boot/vmlinuz-4.18.0-240.8.1.el8_3.x86_64 $
Reboot the server, so it boots using this kernel.
$ sudo reboot
Once the server starts we still have Oracle Linux 8.3, but now we are running with the Red Hat Compatibility Kernel.
$ cat /etc/oracle-release Oracle Linux Server release 8.3 $ $ uname -r 4.18.0-240.8.1.el8_3.x86_64 $
At this point we need to do some testing to make sure we are happy with the final result!
For more information see:
- Convert CentOS to Oracle Linux
- Oracle Linux : Frequently Asked Questions (FAQs)
- Conversion Script (centos2ol.sh)
- Conversion Script Project
Hope this helps. Regards Tim...