Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsBlogPro
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Authors
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges
  • Chrome Extension
  • Skill Manager

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

ProTermsPrivacyRefunds
Back to skills

Rocky Alma

ASecurity

Rocky Linux and AlmaLinux — RHEL-compatible enterprise Linux distributions — across versions 8, 9, 10: the rebuild process, Rocky vs Alma differences (binary clone vs ABI compatible), CentOS migration (migrate2rocky, almalinux-deploy, ELevate), repo management (EPEL, CRB, SIGs, Synergy), Secure Boot, GPG keys, and distro selection. Use when: \"Rocky Linux\", \"Rocky\", \"AlmaLinux\", \"Alma\", \"CentOS migration\", \"ELevate\", \"RHEL compatible\", \"RHEL clone\", \"migrate2rocky\". Do NOT us...

4 stars
0 votes
0 copies
0 views
Added 9/24/2026
devopsgobashkubernetestestinggitsecurity

Security Analysis

A96/100
mediumUses curl or wget to download content

Pro scans all 14 files and shows the line behind each finding

Scanned 9/24/2026

$npx -y skills add chrishuffman5/domain-expert --skill rocky-alma --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Rocky Alma?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Rocky Alma
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/chrishuffman5-rocky-alma/badge)](https://www.skillsdirectory.com/skills/chrishuffman5-rocky-alma)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
Files
SKILL.md
---
name: rocky-alma
description: "Rocky Linux and AlmaLinux — RHEL-compatible enterprise Linux distributions — across versions 8, 9, 10: the rebuild process, Rocky vs Alma differences (binary clone vs ABI compatible), CentOS migration (migrate2rocky, almalinux-deploy, ELevate), repo management (EPEL, CRB, SIGs, Synergy), Secure Boot, GPG keys, and distro selection. Use when: \"Rocky Linux\", \"Rocky\", \"AlmaLinux\", \"Alma\", \"CentOS migration\", \"ELevate\", \"RHEL compatible\", \"RHEL clone\", \"migrate2rocky\". Do NOT use for general RHEL kernel/systemd/firewalld internals shared with RHEL — use the `rhel` skill; this skill covers only what differs from RHEL."
license: MIT
---

# Rocky Linux / AlmaLinux

This skill covers Rocky Linux and AlmaLinux -- RHEL-compatible enterprise Linux distributions -- across versions 8, 9, and 10 of both distributions.

For RHEL architecture, diagnostics, and feature details, see the `rhel` skill. This skill focuses on what is DIFFERENT from RHEL: the rebuild process, migration from CentOS, differences between Rocky and Alma, repo management, and compatibility guarantees.

It provides deep knowledge of:

- RHEL rebuild process (source acquisition, Peridot, ALBS build systems)
- Rocky vs Alma philosophical differences (binary clone vs ABI compatible)
- CentOS migration tooling (migrate2rocky, almalinux-deploy, ELevate)
- Repository management (EPEL, CRB/PowerTools, SIGs, Synergy, ELRepo)
- Secure Boot (independent Microsoft-signed shims)
- GPG key management and package signature verification
- Distro selection guidance (Rocky vs Alma decision framework)

When a question is version-specific, read the relevant file under `references/versions/`. When the version is unknown, provide general guidance and note where behavior differs.

## How to Approach Tasks

Route by request type: **troubleshooting** → `references/diagnostics.md`; **migration** → `references/best-practices.md`; **architecture** → `references/architecture.md`; **administration** → the guidance below.

**Identify Rocky vs Alma and the major version first** — the distro matters for migration tooling and compatibility guarantees. For RHEL-identical features, cross-reference the `rhel` skill. Validate with rpm queries, dnf checks, and release file inspection.

## Core Expertise

### RHEL Rebuild Process

Both distributions rebuild RHEL source RPMs into community distributions. After Red Hat restricted public source access in June 2023, both adapted:

- **Rocky Linux** uses UBI container images, public cloud RHEL instances, and `srpmproc` for automated source import and debranding
- **AlmaLinux** uses similar channels plus CentOS Stream as a forward-looking indicator

**Build systems:**
- Rocky: **Peridot** (open-source, Kubernetes-based)
- AlmaLinux: **ALBS** (AlmaLinux Build System)

### Binary Clone vs ABI Compatible

This is the most important philosophical difference:

**Rocky Linux -- Binary Clone (1:1)**
- Byte-for-byte drop-in replacement for RHEL
- Bug-for-bug compatibility: if RHEL has a bug, Rocky reproduces it
- No fixes outside RHEL's release cycle
- Ideal for ISV certification, regulatory compliance

**AlmaLinux -- ABI Compatible**
- Applications built for RHEL run without recompilation
- May fix bugs that RHEL has not yet patched
- Can ship security patches ahead of RHEL
- Greater flexibility but potential edge-case divergence

### CentOS Migration

```bash
# migrate2rocky (CentOS/RHEL/Alma -> Rocky, same EL version)
curl -O https://raw.githubusercontent.com/rocky-linux/rocky-tools/main/migrate2rocky/migrate2rocky.sh
bash migrate2rocky.sh -r

# almalinux-deploy (CentOS/RHEL/Rocky -> AlmaLinux, same EL version)
curl -O https://raw.githubusercontent.com/AlmaLinux/almalinux-deploy/master/almalinux-deploy.sh
bash almalinux-deploy.sh

# ELevate (major version upgrades, AlmaLinux project)
dnf install -y leapp-upgrade leapp-data-almalinux
leapp preupgrade                     # dry-run assessment
leapp upgrade                        # perform upgrade
```

**Important:** As of November 2025, ELevate no longer supports Rocky Linux as a migration target. Use migrate2rocky for CentOS-to-Rocky conversions.

### Repository Management

Both distributions ship the same logical repo structure as RHEL:

| Repo | Purpose | Default |
|---|---|---|
| `baseos` | Core OS packages | Enabled |
| `appstream` | Application streams and modules | Enabled |
| `extras` | Distro-specific extra packages | Enabled |
| `crb` | Code Ready Builder (PowerTools in EL8) | Disabled |
| `plus` | Rocky: rebuilt packages with extras | Disabled |
| `synergy` | AlmaLinux: community pre-EPEL packages | Disabled |

```bash
# Enable CRB (required before EPEL)
dnf config-manager --set-enabled crb         # EL9+
dnf config-manager --set-enabled powertools  # EL8

# Install EPEL
dnf install -y epel-release

# Verify
dnf repolist | grep -E 'epel|crb|powertools'
```

### Distro Detection

```bash
# Most reliable detection
grep -E '^ID=' /etc/os-release
# Rocky:  ID=rocky
# Alma:   ID=almalinux

# Release files
[[ -f /etc/rocky-release ]]     && cat /etc/rocky-release
[[ -f /etc/almalinux-release ]] && cat /etc/almalinux-release

# RHEL compatibility
grep PLATFORM_ID /etc/os-release  # platform:el8, el9, or el10
```

### GPG Key Verification

```bash
# Rocky Linux
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-rockyofficial

# AlmaLinux
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-AlmaLinux-9

# Verify a package
rpm -K /path/to/package.rpm
rpm -qa gpg-pubkey --qf '%{NAME}-%{VERSION}-%{RELEASE}\t%{SUMMARY}\n'
```

## Common Pitfalls

**1. Assuming Rocky and AlmaLinux are identical**
Rocky is a binary clone; AlmaLinux is ABI compatible. For ISV-certified workloads requiring exact RHEL behavior, Rocky is the safer choice. For web hosting with cPanel, AlmaLinux is required (cPanel dropped Rocky in v134+).

**2. Not enabling CRB before installing EPEL**
EPEL packages frequently depend on packages in CRB (Code Ready Builder). Install EPEL without CRB and dependency resolution fails silently or pulls wrong versions.

**3. Using ELevate to migrate to Rocky Linux**
ELevate dropped Rocky Linux as a target in November 2025. Use `migrate2rocky.sh` for same-version conversions instead.

**4. Leaving CentOS artifacts after migration**
Migrated systems may retain CentOS-signed packages, leftover repo files, or packages with `.centos.` in the release string. Run `dnf distro-sync` and audit for residual packages.

**5. Not checking x86_64 ISA level before installing v10**
RHEL 10, Rocky 10, and standard AlmaLinux 10 require x86_64-v3 (Haswell+, 2013+). Pre-Haswell hardware can only run AlmaLinux 10's special x86_64-v2 builds.

**6. Disabling gpgcheck in production repos**
Both distributions sign all packages. Disabling `gpgcheck=1` removes a critical supply-chain security control. Use `--setopt=gpgcheck=0` only for temporary testing.

**7. Installing subscription-manager on Rocky/Alma**
Rocky and AlmaLinux do not require or benefit from Red Hat's subscription-manager. Its presence indicates a misconfigured system or incomplete migration.

**8. Mixing Rocky and AlmaLinux repos on the same system**
Do not add AlmaLinux repos to a Rocky system or vice versa. Package signature conflicts and branding mismatches will cause failures.

## Version-Specific Guidance

| Version | Reference | What's version-specific |
|---|---|---|
| 8 | `references/versions/8.md` | CentOS 8 migration focus (EOL Dec 2021 mass migration), migrate2rocky, almalinux-deploy, residual package detection, SIGs |
| 9 | `references/versions/9.md` | ELevate upgrade path (8 to 9), CentOS Stream 9 relationship, OpenSSL 3.0, nftables-only, Rocky/Alma SIG repos |
| 10 | `references/versions/10.md` | x86_64-v3 requirement, AlmaLinux x86_64-v2 builds, RISC-V (Rocky only), module streams removed, Podman 5.x, post-quantum crypto |

## Reference Files

Load these when you need deep knowledge for a specific area:

- `references/architecture.md` -- Rebuild process, governance, RHEL delta, Rocky vs Alma comparison, Secure Boot, GPG keys. Read for "how does X work" questions.
- `references/diagnostics.md` -- Distro detection, compatibility audit, repo health, migration verification. Read when troubleshooting errors.
- `references/best-practices.md` -- CentOS migration procedures, repo management, distro selection framework, ELevate usage. Read for design and migration planning.

Attribution

chrishuffman5chrishuffman5
View sourceSee grades on GitHubMore from chrishuffman5 →
SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Related Skills

Terraform Module Library

Build reusable Terraform modules for AWS, Azure, and GCP infrastructure following infrastructure-as-code best practices. Use when creating infrastructure modules, standardizing cloud provisioning, or implementing reusable IaC components.

401991 votes

sematext-otel

Wire a service's OpenTelemetry output to Sematext Cloud. Walks through region, App-type, instrumentation flow (managed OTLP endpoint vs Sematext Agent), and signal selection (traces/metrics/logs), then produces the exact env-var block and points at a runnable reference example in this repo. Invoke when instrumenting a new app for Sematext.

01 votes

Deployment Patterns

Deployment workflows, CI/CD pipeline patterns, Docker containerization, health checks, rollback strategies, and production readiness checklists for web applications. Use when setting up deployment infrastructure or planning releases.

2699140 votes

Babysit

Watch a pull request or review cycle until it is ready to merge. Use when asked to babysit, monitor, or keep checking PR comments, reviews, and CI until all actionable issues are resolved.

971540 votes

V7 Roster

Interact with the Paperclip control plane API for task coordination and governance. Use when checking assignments, updating issue status, posting comments, delegating work, managing routines, or calling Paperclip API endpoints.

953190 votes
View all in devops →