AlmaLinux8
Version 1: This is the initial migration template, created in response to CentOS 8 reaching its end of life. AlmaLinux serves as a compatible, 1:1 binary replacement for CentOS 8.
Migration Notes for Upgrading or Migrating Your CentOS 8 Templates
The following information comes from AlmaLinux's official guide (available at https://github.com/AlmaLinux/almalinux-deploy). Always refer to the latest version from that link; the text below is captured as of today (29/3/2022) for convenience.
This information is shared as a guide for our community across Brazil, but we accept no responsibility for any errors or issues that may arise from its use.
almalinux-deploy
An EL to AlmaLinux migration tool.
Usage
To switch your EL8 operating system over to AlmaLinux, follow these steps:
-
CentOS 8.4 or 8.5 is required before you can convert to AlmaLinux. Updating to 8.5 is recommended, though not mandatory if you're on at least 8.4. If your system received any new updates, a reboot afterwards is a good idea.
sudo dnf update -y sudo reboot
- Since January 31, 2022, the CentOS 8 mirrorlists are no longer reachable. To run
dnf update -ywithout errors, you'll need to adjust yourdnfconfiguration to use a working mirror. The followingsedcommands will help you restorednfto a functional state, enabling you to update to 8.5 and then proceed with the AlmaLinux migration.-
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 automate this fix.
-
-
Make a system backup. Since we haven't tested every possible scenario, there's always a risk that something might go wrong, and having a restore point means you'll be able to recover smoothly.
-
Get the almalinux-deploy.sh script:
$ curl -O https://raw.githubusercontent.com/AlmaLinux/almalinux-deploy/master/almalinux-deploy.sh
-
Run the script and watch for any error messages:
$ sudo bash almalinux-deploy.sh ... Migration to AlmaLinux is completed
-
A reboot is recommended to start using the AlmaLinux kernel:
sudo reboot -
Verify that the conversion was successful:
# 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!