How to Install EPEL on Rocky Linux 10, 9 and 8

Install EPEL on Rocky Linux 10, 9, and 8 to unlock thousands of packages. Complete setup with iotop, fail2ban, and development tools.

Last updatedAuthorJoshua JamesRead time6 minGuide typeRocky Linux

Rocky Linux keeps its base repositories conservative, so everyday server tools such as fail2ban, htop, btop, and nvtop often come from EPEL instead. To install EPEL on Rocky Linux cleanly, enable the matching development repository first, then install the epel-release package from Rocky Extras or Fedora’s EPEL permalink.

EPEL, short for Extra Packages for Enterprise Linux, is maintained by the Fedora Project and provides add-on packages for RHEL-compatible systems. Rocky Linux 10 and 9 use CRB (CodeReady Builder) for many EPEL dependencies, while Rocky Linux 8 uses PowerTools.

These steps apply to Rocky Linux 10 (Red Quartz), Rocky Linux 9 (Blue Onyx), and Rocky Linux 8 (Green Obsidian). Rocky Linux 8 remains supported for maintenance updates, so older servers can still use the matching EPEL 8 branch.

Install EPEL on Rocky Linux

Quick EPEL Install Commands for Rocky Linux

Start with the system update step and review DNF’s transaction before confirming it:

sudo dnf upgrade --refresh

Commands that start with sudo need an administrator account. DNF shows the package list before it changes the system, so review the transaction before confirming the prompts.

After the update finishes, run the version-aware EPEL setup block:

source /etc/os-release

case "$VERSION_ID" in
  10*|9*)
    epel_dependency_repo=crb
    ;;
  8*)
    epel_dependency_repo=powertools
    ;;
  *)
    echo "Unsupported Rocky Linux version: $VERSION_ID"
    epel_dependency_repo=
    ;;
esac

if [ -n "$epel_dependency_repo" ]; then
  sudo dnf install -y dnf-plugins-core
  sudo dnf config-manager --set-enabled "$epel_dependency_repo"
  sudo dnf install -y epel-release
fi

The -y flags in the quick setup block auto-confirm the repository-tool and release-package installs after you have already reviewed the system update transaction.

The quick path uses DNF4-style repository commands because Rocky Linux 10 still uses the DNF4 config-manager workflow for this task. Fedora DNF5 examples such as dnf config-manager setopt or dnf5 config-manager do not apply to Rocky Linux 10, 9, or 8.

Choose the EPEL Install Method on Rocky Linux

Two installation paths are available. The DNF package method is the best fit for most systems because Rocky Linux publishes epel-release through the enabled Extras repository.

MethodSourceBest FitUpdate Behavior
DNF packageRocky Linux ExtrasNormal Rocky Linux servers, desktops, and minimal installs with Extras enabledManaged by DNF with the rest of the system
Direct RPM fallbackFedora EPEL permalinkCustom images, containers, or systems where Extras is disabled or unavailableInstalls the same repository package, then DNF manages updates

Do not enable EPEL Next on Rocky Linux. EPEL Next targets CentOS Stream rebuild needs, while normal Rocky Linux systems should use the standard EPEL repository.

Run EPEL Setup Step by Step

Use the step-by-step path when you want to review each stage separately. Refresh package metadata and apply available system updates before adding a new repository:

sudo dnf upgrade --refresh

Install dnf-plugins-core if your system does not already include it. This package provides dnf config-manager, which toggles CRB and PowerTools repository states.

sudo dnf install dnf-plugins-core

Enable CRB or PowerTools for EPEL Dependencies

The Rocky Linux repository reference lists CRB for Rocky Linux 10 and 9, and PowerTools for Rocky Linux 8. EPEL itself can install without these repositories, but many EPEL packages need libraries from them.

Check Your Rocky Linux Version

Confirm the major version before you enable the matching repository:

cat /etc/rocky-release

Example output on Rocky Linux 10:

Rocky Linux release 10.1 (Red Quartz)

Enable CRB on Rocky Linux 10 or 9

Enable CRB on Rocky Linux 10 or 9 with config-manager:

sudo dnf config-manager --set-enabled crb

Verify that CRB is now visible in the enabled repository list:

dnf repolist | grep -E '^crb[[:space:]]'

Relevant output on Rocky Linux 10 looks like this:

crb                  Rocky Linux 10 - CRB

Enable PowerTools on Rocky Linux 8

Rocky Linux 8 uses the older PowerTools repository name:

sudo dnf config-manager --set-enabled powertools

Verify the enabled repository state:

dnf repolist | grep -E '^powertools[[:space:]]'
powertools            Rocky Linux 8 - PowerTools

Install epel-release from Rocky Extras

Install the EPEL release package after CRB or PowerTools is enabled:

sudo dnf install epel-release

Relevant output on Rocky Linux 10 includes the EPEL package and the CRB reminder:

Installed:
  epel-release-10-7.el10_1.noarch

Complete!
Many EPEL packages require the CodeReady Builder (CRB) repository.
It is recommended that you run /usr/bin/crb enable to enable the CRB repository.

If you already enabled CRB or PowerTools, the reminder is informational. The /usr/bin/crb helper comes from epel-release on current Rocky Linux branches, so use dnf config-manager for the pre-install CRB step on a clean system.

Install EPEL with the Direct RPM Fallback

Use the direct RPM fallback only when the Extras repository is unavailable. Fedora’s EPEL documentation links the same release package permalinks used for these version-specific commands.

For Rocky Linux 10:

sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-10.noarch.rpm

For Rocky Linux 9:

sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm

For Rocky Linux 8:

sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm

Verify EPEL on Rocky Linux

Confirm that the standard EPEL repository is enabled:

dnf repolist | grep -E '^epel[[:space:]]'

Rocky Linux 10 returns:

epel                 Extra Packages for Enterprise Linux 10 - x86_64

Rocky Linux 9 returns:

epel                Extra Packages for Enterprise Linux 9 - x86_64

Rocky Linux 8 returns:

epel                  Extra Packages for Enterprise Linux 8 - x86_64

Find and Install EPEL Packages

EPEL package availability changes over time, so check the repository before assuming a package exists on every Rocky Linux release.

Search EPEL Packages with DNF

Search by package name or description:

dnf search htop

Example output includes:

========================== Name Exactly Matched: htop ==========================
htop.x86_64 : Interactive process viewer

Use dnf info when you need to confirm the source repository for a package:

dnf info htop

Relevant output includes:

Name         : htop
Repository   : epel
Summary      : Interactive process viewer

Check Common EPEL Package Names

Use repoquery to check several package names at once. This is useful when a project has renamed packages or when search results mention an older tool name.

dnf repoquery --repo epel --available eza btop bashtop htop nvtop fail2ban

Relevant output on Rocky Linux 10 includes:

btop-0:1.4.6-1.el10_1.x86_64
fail2ban-0:1.1.0-6.el10_0.noarch
htop-0:3.3.0-5.el10_0.x86_64
nvtop-0:3.3.1-2.el10_1.x86_64

No output line for a queried name means that EPEL does not currently publish that package for the enabled branch. Current EPEL metadata lists btop, fail2ban, htop, and nvtop on Rocky Linux 10, 9, and 8, but not eza or bashtop.

PackageUseRocky Linux Note
htopInteractive process monitorAvailable from EPEL on Rocky Linux 10, 9, and 8
btopModern resource monitorUse this current package name instead of bashtop
fail2banLog-based intrusion preventionAvailable from EPEL; use the full Install Fail2Ban on Rocky Linux guide for service setup
nvtopGPU activity monitorAvailable from EPEL; NVIDIA systems also need working NVIDIA drivers on Rocky Linux
ezaModern ls replacementNot currently listed in EPEL for Rocky Linux 10, 9, or 8

Install an EPEL Package

Install packages from EPEL with the normal DNF install command. Replace htop with the package you want after confirming that EPEL provides it.

sudo dnf install htop

DNF resolves dependencies from all enabled repositories, including CRB or PowerTools when an EPEL package needs development libraries.

Troubleshoot EPEL on Rocky Linux

config-manager Command Is Missing

If dnf config-manager is unavailable, install the plugin package and retry the repository command:

sudo dnf install dnf-plugins-core
sudo dnf config-manager --set-enabled crb

Use powertools instead of crb on Rocky Linux 8.

CRB or PowerTools Is Still Disabled

List both possible development repositories when dependency errors continue after installing EPEL:

dnf repolist --all | grep -E '^(crb|powertools)[[:space:]]'

Relevant output should show the correct repository for your major version. Rocky Linux 10 and 9 use crb; Rocky Linux 8 uses powertools.

crb                        Rocky Linux 10 - CRB                         enabled

If the repository is still disabled on Rocky Linux 10 or 9, enable CRB again and rebuild the DNF metadata cache:

sudo dnf config-manager --set-enabled crb
sudo dnf makecache

On Rocky Linux 8, use PowerTools instead:

sudo dnf config-manager --set-enabled powertools
sudo dnf makecache

DNF5 CRB Commands Fail on Rocky Linux 10

Rocky Linux 10 uses DNF4 on current installs, so Fedora DNF5 repository examples are the wrong syntax here. Use the DNF4 command instead:

sudo dnf config-manager --set-enabled crb

Verify the package-manager family if you are checking a custom image:

dnf --version | head -n 1

A current Rocky Linux 10 system returns a 4.x version:

4.20.0

EPEL Repository Is Installed but Disabled

If epel-release is installed but EPEL does not appear in the enabled repository list, check whether the repository is disabled:

dnf repolist --all | grep -E '^epel[[:space:]]'

When the status column shows disabled, re-enable EPEL and verify it appears in the active repository list:

sudo dnf config-manager --set-enabled epel
dnf repolist | grep -E '^epel[[:space:]]'

Package Is Not Found in EPEL

If DNF cannot find a package after EPEL is enabled, check whether EPEL publishes that exact package name for your release:

dnf repoquery --repo epel --available package-name

No output means the package is not available from EPEL for that branch. Check for renamed packages, such as btop replacing older bashtop searches, before adding another third-party repository.

Wrong EPEL Major Version Installed

Check the installed release package if repository metadata points at the wrong major version:

rpm -q epel-release

Rocky Linux 10 should show an el10 package, Rocky Linux 9 should show el9, and Rocky Linux 8 should show el8. Remove the incorrect release package before reinstalling the correct one:

sudo dnf remove epel-release

Update, Disable, or Remove EPEL

Update EPEL Packages

EPEL packages update through the same DNF workflow as Rocky Linux packages:

sudo dnf upgrade --refresh

This command refreshes repository metadata and upgrades installed packages from enabled repositories, including EPEL.

Disable or Re-enable EPEL

Disable EPEL temporarily when you need to isolate package conflicts without removing the repository package:

sudo dnf config-manager --set-disabled epel

Re-enable it with:

sudo dnf config-manager --set-enabled epel

Remove the EPEL Repository

Remove the repository package when you no longer want EPEL configured:

sudo dnf remove epel-release

Verify the release package is no longer installed:

rpm -q epel-release
package epel-release is not installed

Removing epel-release removes the repository configuration, but it does not automatically remove packages you already installed from EPEL. Remove those packages separately when you no longer need them.

Remove an EPEL Package

Remove an individual package with DNF. For example, uninstall htop with:

sudo dnf remove htop

DNF displays any dependent packages that would also be removed before asking for confirmation. Keep EPEL enabled if other installed packages still depend on updates from it.

Conclusion

EPEL is now enabled on Rocky Linux with CRB or PowerTools ready for dependency resolution. From here, install the specific packages your system needs, or continue with related repository workflows such as Install Fail2Ban on Rocky Linux, Install RPM Fusion on Rocky Linux, or Install Remi RPM on Rocky Linux.

Share this guide

Help another Linux user troubleshoot faster

Share this guide with someone troubleshooting Linux systems or saving it for later.

Follow LinuxCapable

Want more LinuxCapable guides in Google?

Add LinuxCapable as a preferred source so Google can show more of our fresh Linux tutorials in Top Stories and From your sources when relevant.

Add LinuxCapable as a preferred source on Google
Search LinuxCapable

Need another guide?

Search LinuxCapable for package installs, commands, troubleshooting, and follow-up guides related to what you just read.

Found this guide useful?

Support LinuxCapable to keep tutorials free and up to date.

Buy me a coffeeBuy me a coffee
Before commenting, please review our Comments Policy.
Formatting tips for your comment

You can use basic HTML to format your comment. Useful tags currently allowed in published comments:

You type Result
<code>command</code> command
<strong>bold</strong> bold
<em>italic</em> italic
<blockquote>quote</blockquote> quote block

Got a Question or Feedback?

We read and reply to every comment - let us know how we can help or improve this guide.

Verify before posting: