AlmaLinux8
v1: Initial template for migrating from CentOS8 template as it has reached end of life. AlmaLinux is a one-to-one binary replacement for CentOS8.
Migration notes for those looking to upgrade or migrate their CentOS8 templates
This is taken from the official AlmaLinux guide, which is available at https://github.com/AlmaLinux/almalinux-deploy. Please consult the latest version from that link; the text below is provided for reference as of today (29/3/2022).
This information is offered as a guide for our community; however, we assume no responsibility for any errors or issues that may arise from following these notes.
almalinux-deploy
An EL to AlmaLinux migration tool.
Usage
To convert your EL8 operating system to AlmaLinux, perform these steps:
-
CentOS 8.4 or 8.5 is required for the conversion to AlmaLinux. It is advisable to update to 8.5 before migrating, though this is not mandatory if you are already on at least CentOS 8.4. A reboot after applying updates is recommended if your system has received new updates.
sudo dnf update -y sudo reboot
- Since January 31, 2022, the CentOS 8 mirrorlists have been taken offline. To run
dnf update -ysuccessfully, you'll need to update yourdnfconfiguration files so they point to a valid mirror. You can use the followingsedcommands to quickly restorednfto a working state that will allow you to update to version 8.5 and then to AlmaLinux.-
sudo sed -i -e '/mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=/ s/^#*/#/' -e '/baseurl=http://mirror.centos.org/$contentdir/$releasever// s/^#*/#/' -e '/^\[baseos\]/a baseurl=https://mirror.rackspace.com/centos-vault/8.5.2111/BaseOS/$basearch/os' /etc/yum.repos.d/CentOS-Linux-BaseOS.repo sudo sed -i -e '/mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=/ s/^#*/#/' -e '/baseurl=http://mirror.centos.org/$contentdir/$releasever// s/^#*/#/' -e '/^\[appstream\]/a baseurl=https://mirror.rackspace.com/centos-vault/8.5.2111/AppStream/$basearch/os' /etc/yum.repos.d/CentOS-Linux-AppStream.repo sudo sed -i -e '/mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=/ s/^#*/#/' -e '/baseurl=http://mirror.centos.org/$contentdir/$releasever// s/^#*/#/' -e '/^\[cr\]/a baseurl=https://mirror.rackspace.com/centos-vault/8.5.2111/ContinuousRelease/$basearch/os' /etc/yum.repos.d/CentOS-Linux-ContinuousRelease.repo sudo sed -i -e '/mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=/ s/^#*/#/' -e '/baseurl=http://mirror.centos.org/$contentdir/$releasever// s/^#*/#/' -e '/^\[devel\]/a baseurl=https://mirror.rackspace.com/centos-vault/8.5.2111/Devel/$basearch/os' /etc/yum.repos.d/CentOS-Linux-Devel.repo sudo sed -i -e '/mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=/ s/^#*/#/' -e '/baseurl=http://mirror.centos.org/$contentdir/$releasever// s/^#*/#/' -e '/^\[extras\]/a baseurl=https://mirror.rackspace.com/centos-vault/8.5.2111/extras/$basearch/os' /etc/yum.repos.d/CentOS-Linux-Extras.repo sudo sed -i -e '/mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=/ s/^#*/#/' -e '/baseurl=http://mirror.centos.org/$contentdir/$releasever// s/^#*/#/' -e '/^\[fasttrack\]/a baseurl=https://mirror.rackspace.com/centos-vault/8.5.2111/fasttrack/$basearch/os' /etc/yum.repos.d/CentOS-Linux-FastTrack.repo sudo sed -i -e '/mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=/ s/^#*/#/' -e '/baseurl=http://mirror.centos.org/$contentdir/$releasever// s/^#*/#/' -e '/^\[ha\]/a baseurl=https://mirror.rackspace.com/centos-vault/8.5.2111/HighAvailability/$basearch/os' /etc/yum.repos.d/CentOS-Linux-HighAvailability.repo sudo sed -i -e '/mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=/ s/^#*/#/' -e '/baseurl=http://mirror.centos.org/$contentdir/$releasever// s/^#*/#/' -e '/^\[plus\]/a baseurl=https://mirror.rackspace.com/centos-vault/8.5.2111/centosplus/$basearch/os' /etc/yum.repos.d/CentOS-Linux-Plus.repo sudo sed -i -e '/mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=/ s/^#*/#/' -e '/baseurl=http://mirror.centos.org/$contentdir/$releasever// s/^#*/#/' -e '/^\[powertools\]/a baseurl=https://mirror.rackspace.com/centos-vault/8.5.2111/PowerTools/$basearch/os' /etc/yum.repos.d/CentOS-Linux-PowerTools.repo
- Alternatively, you can use the
-fflag (i.e.,sudo bash almalinux-deploy.sh -f) to have the script handle this for you.
-
-
Create a backup of the system. We haven't tested every possible scenario, so there is a risk that something might go wrong. Having a backup will give you a restore point.
-
Download the almalinux-deploy.sh script:
$ curl -O https://raw.githubusercontent.com/AlmaLinux/almalinux-deploy/master/almalinux-deploy.sh
-
Execute the script and examine its output for any errors:
$ sudo bash almalinux-deploy.sh ... Migration to AlmaLinux is completed
-
A reboot is recommended so that the system boots with the AlmaLinux kernel:
sudo reboot -
Verify that the system has been successfully converted:
# check release file $ cat /etc/redhat-release AlmaLinux release 8.5 (Arctic Sphynx) # check that the system boots AlmaLinux kernel by default $ sudo grubby --info DEFAULT | grep AlmaLinux title="AlmaLinux (4.18.0-348.el8.x86_64) 8.5 (Arctic Sphynx)"
-
Thank you for choosing AlmaLinux!
