AlmaLinux vs Rocky Linux: which should you choose for a server?
AlmaLinux and Rocky Linux both rebuild Red Hat Enterprise Linux for free. What actually differs, which runs your software, and how to pick one in a minute.
Tested on AlmaLinux 10, Rocky Linux 9
For most servers, AlmaLinux and Rocky Linux are interchangeable: both are free rebuilds of Red Hat Enterprise Linux (RHEL), with the same packages, the same dnf commands and the same EPEL repository, and software certified for RHEL runs on either. Choose Rocky Linux if your team, your vendor or your configuration tooling already standardises on it; otherwise AlmaLinux is the slightly easier default, mainly because AlmaLinux 10 is available today as well as 9.
The rest of this page explains where they really differ, so you can check that nothing on the list matters to you.
What they have in common
Both appeared in 2021, after Red Hat ended CentOS Linux 8 early and turned CentOS into CentOS Stream, which runs ahead of RHEL instead of following it. Each project set out to be what CentOS had been: RHEL without the subscription.
On a server, that means:
- The same packages and versions as the matching RHEL release: the same kernel series, OpenSSL, Python, PostgreSQL module streams and so on.
- The same tools:
dnf,firewalld, SELinux enforcing by default,chronyd,systemd. Our firewalld and sudo user tutorials ran unchanged on both. - EPEL works on both:
dnf install epel-releaseadds the Extra Packages for Enterprise Linux repository from Fedora. - Both identify as RHEL-like:
/etc/os-releasehasID_LIKE="rhel centos fedora", which is what most install scripts check. - Free, with about ten years of support per major version.
Where they differ
| AlmaLinux | Rocky Linux | |
|---|---|---|
| Who runs it | The AlmaLinux OS Foundation, a non-profit with member companies | The Rocky Enterprise Software Foundation, founded by CentOS co-founder Gregory Kurtzer |
| Compatibility goal | Binary-compatible with RHEL (applications built for RHEL run unchanged); may ship a fix before RHEL does | As close to RHEL as possible, bug for bug |
| Versions we offer | AlmaLinux 10 (support to 2035) and 9 (to 2032) | Rocky Linux 9 (to May 2032) |
| Older CPUs | Also builds AlmaLinux 10 for x86-64-v2 processors, which RHEL 10 dropped | Follows RHEL's CPU requirements |
| Major-version upgrades in place | Offered through the ELevate project | Not supported: install the new version and migrate |
The compatibility difference comes from 2023, when Red Hat stopped publishing RHEL's source code on the public CentOS Git server. AlmaLinux moved to building from CentOS Stream and other public sources, aiming at binary compatibility rather than an exact copy; Rocky Linux kept aiming for an exact copy by obtaining the sources in other ways. In day-to-day use on a server, neither change is something you'll notice: the same RPMs install and the same applications run.
Which one to choose
Work down the list and stop at the first line that applies:
- Your software or control panel names one of them in its supported list. Use that one. Many name both; some name only RHEL, and both work.
- Your team already runs one of them. Stay with it; the configuration, scripts and habits carry over.
- You want the newest base, RHEL 10. Take AlmaLinux 10. (Rocky Linux 10 exists too, but we only offer Rocky Linux 9.)
- Your vendor only supports RHEL 9. Either AlmaLinux 9 or Rocky Linux 9 does the job.
- None of the above. AlmaLinux 10. It's supported until 2035.
If you don't need the RHEL family at all (no vendor asks for it), Ubuntu LTS and Debian have more tutorials written for them; choose a distribution compares all of them.
Switching between them later
Both projects publish a script that converts a running server to their distribution of the same major version, by swapping the repositories and re-signing packages: almalinux-deploy for AlmaLinux and migrate2rocky for Rocky Linux. They work, but on a server, building a new one and moving your data across is usually cleaner and easier to test. Either way, take a backup first.
Check which one you're running
cat /etc/os-release
rpm -q --qf '%{VENDOR}\n' bashThe first line of the output names the distribution and minor release, for example AlmaLinux 10.2 (Lavender Lion) or Rocky Linux 9.8 (Blue Onyx). The package vendor is AlmaLinux or Rocky Enterprise Software Foundation.
Next steps
- Set up the basics on either: create a sudo user and configure firewalld.
- Compare all the distributions we offer: choose a distribution.
Doing it on VPSNine
VPSNine offers AlmaLinux 10, AlmaLinux 9 and Rocky Linux 9 on every plan, from each project's official cloud image. Changing your mind later means reinstalling the server with the other image, which wipes the disk, so pick before you put data on it, or take a snapshot first.