Migrating Away from Rocky Linux
Typical reasons to migrate away: compliance (needing RHEL subscription support), organizational standards, or ecosystem preference. Within the EL family there is official/community tooling; across families (EL → Debian/Ubuntu) there is no in-place path — reinstall-and-migrate only.
Path overview
Section titled “Path overview”In-place migration from Rocky to AlmaLinux (same major version) is supported by AlmaLinux’s official almalinux-deploy.sh script; its README explicitly lists Rocky Linux among supported conversions.
In-place migration from Rocky to RHEL is handled by Red Hat’s official convert2rhel utility, but its supported conversion matrix lists specific RHEL 8/9 source minor versions and requires a subscription or activation key; Rocky 10 is not listed.
| Target | Method | Tool / notes |
|---|---|---|
| AlmaLinux (same major) | In-place | almalinux-deploy.sh (official AlmaLinux script; converts from Rocky) |
| RHEL 8/9 (minors listed in the official matrix) | In-place | convert2rhel (official Red Hat; subscription or activation key required; Rocky 10 is not in the supported matrix — for 10→RHEL use reinstall or await matrix updates, see official conversion paths) |
| CentOS Stream (same major) | In-place | No official script; manual release-package + repo swap, at your own risk |
| Other majors / other families | Reinstall | No in-place tooling: fresh install + restore data/configs/services |
In-place conversion flow (AlmaLinux example)
Section titled “In-place conversion flow (AlmaLinux example)”-
Back up and snapshot (same as inbound migrations — non-negotiable);
-
Fetch the official script:
Terminal window curl -LO https://raw.githubusercontent.com/AlmaLinux/almalinux-deploy/master/almalinux-deploy.shchmod +x almalinux-deploy.sh -
Run and reboot:
sudo ./almalinux-deploy.sh→sudo reboot; -
Verify:
cat /etc/os-release,dnf repolist,rpm -q almalinux-release;
Cross-family exits (EL → Debian/Ubuntu)
Section titled “Cross-family exits (EL → Debian/Ubuntu)”No in-place path. Execute as reinstall-and-migrate:
- Inventory: service list, package list (
rpm -qa), config deltas (SELinux/AppArmor, firewalld/ufw, systemd units); - Fresh-install the target and rebuild item by item;
- Move data (rsync / database dumps) and rehearse the cutover window (see backup drill (main-site reference ↗)).