In this article, you will learn how to install and enable the EPEL repository on RHEL-based Linux distributions to install additional standard open-source software packages by using YUM and DNF package manager.
What is EPEL
EPEL (Extra Packages for Enterprise Linux) is an open-source and free community-based repository project from the Fedora team which provides 100% high-quality add-on software packages for Linux distribution including RHEL (Red Hat Enterprise Linux), CentOS Stream, AlmaLinux, and Rocky Linux.
EPEL project is not a part of RHEL/CentOS but it is designed for major Linux distributions by providing lots of open-source packages like networking tools, sysadmin tools, programming, monitoring, and so on. Most of the EPEL packages are maintained by the Fedora repo.
Why Do We Use the EPEL Repository?
- Provides lots of open-source packages to install via Yum and DNF.
- Epel repo is 100% open source and free to use.
- It does not provide any core duplicate packages and has no compatibility issues.
- All EPEL packages are maintained by the Fedora repo.
How to Install EPEL Repository on RHEL 9 Systems
To install the EPEL repository on any RHEL-based distributions, log in to your server instance as a root user and run the commands as explained below as per your release version.
Install EPEL Repo on RHEL 9
# subscription-manager repos --enable codeready-builder-for-rhel-9-$(arch)-rpms # dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm
Install EPEL Repo on CentOS Stream 9
# dnf config-manager --set-enabled crb # dnf install epel-release epel-next-release
Install EPEL Repo on AlmaLinux 9
# dnf config-manager --set-enabled crb # dnf install epel-release
How to Install EPEL Repository on RHEL 8 Systems
To install the EPEL repository on RHEL 8-based release systems, use:
Install EPEL Repo on RHEL 8
# subscription-manager repos --enable codeready-builder-for-rhel-8-$(arch)-rpms # dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
Install EPEL Repo on CentOS Stream 8
# dnf config-manager --set-enabled powertools # dnf install epel-release
Install EPEL Repo on Rocky/AlmaLinux 8
# dnf config-manager --set-enabled powertools # dnf install epel-release
How to Install EPEL Repository on RHEL 7 Systems
Install EPEL Repo on RHEL 7
# subscription-manager repos --enable rhel-*-optional-rpms \ --enable rhel-*-extras-rpms \ --enable rhel-ha-for-rhel-*-server-rpms # yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
Install EPEL Repo on CentOS 7
# yum install epel-release
Install EPEL Repo on CentOS 6.x
# yum install epel-release
How Do I Verify EPEL Repo?
Now update the software packages and verify the installation of the EPEL repository using the following commands.
# yum update # rpm -qa | grep epel
You can also verify that the EPEL repository is enabled on the system by listing all active repositories using the following command.
# yum repolist
To list the software packages that constitute the EPEL repository, run the command.
# dnf --disablerepo="*" --enablerepo="epel" list available OR # yum --disablerepo="*" --enablerepo="epel" list available
Alternatively, you can use the following grep command to search for individual package names as shown.
# yum --disablerepo="*" --enablerepo="epel" list available | grep 'htop' OR # dnf --disablerepo="*" --enablerepo="epel" list available | grep 'monitorix'
How Do I Use EPEL Repo to Install Packages?
Once the EPEL repository has been successfully installed, a package can be installed using the command.
# dnf --enablerepo="epel" install <package_name> OR # yum --enablerepo="epel" install <package_name>
For example, to search and install a package called htop – an interactive Linux process-viewer, run the following command.
# yum --enablerepo=epel info htop
Now, to install the Htop package, the command will be.
# yum --enablerepo=epel install htop
Note: The EPEL configuration file is located under /etc/yum.repos.d/epel.repo.
Conclusion
In this article, you learned how to install the EPEL repository on RHEL-based distributions. We welcome you to try it out and share your feedback in the comment section below.
Does the EPEL Repository stay around after the YUM Repository has reached EOL ??
I am tired of depending on YUM and being left hanging after YUM reaches EOL, and then being forced to upgrade just to use Yum. Is EPEL a stable alternative to YUM?
I use my server to solve problems. I’m not into computer systems development.
I like using Centos, but I don’t like the frequency that new versions come out.
Thanks,
Jim
Trouble installing gdl on Centos 7 with epel-release, conflict with Python installed library. I updated Centos 7. Installed epel-release 7. when I run gdl is says the following:
Modular dependency problem:
Problem: conflicting requests
– nothing provides module(perl:5.26) needed by module perl-DBI:1.641:8010020191113222731:16b3ab4d-0.x86_64
=================================== Name Exactly Matched: epel-release
epel-release.noarch : Extra Packages for Enterprise Linux repository configuration
[root@mail mnt]# yum info epel-release
Modular dependency problem:
Problem: conflicting requests
– nothing provides module(perl:5.26) needed by module perl-DBI:1.641:8010020191113222731:16b3ab4d-0.x86_64
Installed Packages
Name : epel-release
Version : 8
Release : 8.el8
Architecture : noarch
Size : 32 k
Source : epel-release-8-8.el8.src.rpm
Repository : @System
From repo : epel
Summary : Extra Packages for Enterprise Linux repository configuration
URL : http://download.fedoraproject.org/pub/epel
License : GPLv2
Description : This package contains the Extra Packages for Enterprise Linux (EPEL) repository
: GPG key as well as configuration for yum.
[root@mail mnt]# yum install epel-release
Error: There are no enabled repositories in “/etc/yum.repos.d”, “/etc/yum/repos.d”, “/etc/distro.repos.d”.
[root@mail mnt]#
I’m unable to install the epel file with the wget command, below is the error I get in my struggle to enable EPEL repo on my RHEL 7.4 server.
Even though I have internet access on the box.
--2019-11-19 15:37:19-- (try: 3) http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
.Connecting to dl.fedoraproject.org (dl.fedoraproject.org)|209.132.181.23|:80... connected.
HTTP request sent, awaiting a response... Read error (Connection timed out) in headers.
Retrying
Any Troubleshooting tips for the above.
@Abdul,
Just install the EPEL using the following command.
I need help, please. I have attempted the install of the epel repo, it says it’s already there, but whenever I do a
yum update
, I get a bunch of thesehttp://mirror.grid.uchicago.edu/pub/linux/epel/7/x86_64/repodata/repomd.xml.asc: [Errno 14] HTTP Error 404 - Not Found
https://mirror.umd.edu/fedora/epel/7/x86_64/repodata/repomd.xml.asc: [Errno 14] HTTPS Error 404 - Not Found
https://mirrors.sonic.net/epel/7/x86_64/repodata/repomd.xml.asc: [Errno 14] HTTPS Error 404 - Not Found
https://muug.ca/mirror/fedora-epel/7/x86_64/repodata/repomd.xml.asc: [Errno 14] HTTPS Error 404 - Not Found
https://ord.mirror.rackspace.com/epel/7/x86_64/repodata/repomd.xml.asc: [Errno 14] HTTPS Error 404 - Not Found
http://mirror.nodesdirect.com/epel/7/x86_64/repodata/repomd.xml.asc: [Errno 14] HTTP Error 404 - Not Found
https://mirror.steadfastnet.com/epel/7/x86_64/repodata/repomd.xml.asc: [Errno 14] HTTPS Error 404 - Not Found
http://mirror.rnet.missouri.edu/epel/7/x86_64/repodata/repomd.xml.asc: [Errno 14] HTTP Error 404 - Not Found
http://fedora-epel.mirror.lstn.net/7/x86_64/repodata/repomd.xml.asc: [Errno 14] HTTP Error 404 - Not Found
https://d2lzkl7pfhq30w.cloudfront.net/pub/epel/7/x86_64/repodata/repomd.xml.asc: [Errno 14] HTTPS Error 404 - Not Found
http://mirror.oss.ou.edu/epel/7/x86_64/repodata/repomd.xml.asc: [Errno 14] HTTP Error 404 - Not Found
https://dfw.mirror.rackspace.com/epel/7/x86_64/repodata/repomd.xml.asc: [Errno 14] HTTPS Error 404 - Not Found
https://mirror.dal.nexril.net/fedora-epel/7/x86_64/repodata/repomd.xml.asc: [Errno 14] HTTPS Error 404 - Not Found
https://pubmirror2.math.uh.edu/fedora-buffet/epel/7/x86_64/repodata/repomd.xml.asc: [Errno 14] HTTPS Error 404 - Not Found
I don’t actually see the files when I navigate to those locations separately. Can you help, please?
Thank you!
Sondra
@Sondra,
The following commands will fix this issue..
If you still see errors, make sure to have repo_gpgcheck is set to 0 in yum.conf file for CentOS.
Thank you! Turning off the repo gpg check worked. In regards to the security posture of epel, do you think they’ll fix it upstream, soon? Or do I need to get in on the Wednesday meeting to report that I think there’s a change that needs to be made?
@Sondra,
Hopefully, they fix it soon in the next release, or you can report to them about the same.
Please, I keel seeing this error after enabling EPEL repository so I can be able to install “terminator”. How can I fix this?
@Chinda,
You need to active or enable Red Hat subscription to install software packages. Please read this article to enable subscription:
How to Install RedHat Subscription on RHEL 7
How to Install RedHat Subscription on RHEL 8
Very good article, but don’t you miss one step of editing epel.repo file. By default, the baseline has
#
at beginning need to uncomment it in order to work repository.Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* epel: del-repos.extreme-ix.org
Package net-tools-2.0-0.17.20131004git.el7.x86_64 already installed and latest version
Package bridge-utils-1.5-9.el7.x86_64 already installed and latest version
Resolving Dependencies
–> Running transaction check
—> Package easy-rsa.noarch 0:3.0.3-1.el7 will be installed
—> Package openvpn.x86_64 0:2.4.6-1.el7 will be installed
–> Processing Dependency: libcrypto.so.10(OPENSSL_1.0.2)(64bit) for package: openvpn-2.4.6-1.el7.x86_64
–> Processing Dependency: libpkcs11-helper.so.1()(64bit) for package: openvpn-2.4.6-1.el7.x86_64
–> Processing Dependency: liblz4.so.1()(64bit) for package: openvpn-2.4.6-1.el7.x86_64
–> Running transaction check
—> Package lz4.x86_64 0:1.7.3-1.el7 will be installed
—> Package openvpn.x86_64 0:2.4.6-1.el7 will be installed
–> Processing Dependency: libcrypto.so.10(OPENSSL_1.0.2)(64bit) for package: openvpn-2.4.6-1.el7.x86_64
—> Package pkcs11-helper.x86_64 0:1.11-3.el7 will be installed
–> Finished Dependency Resolution
Error: Package: openvpn-2.4.6-1.el7.x86_64 (epel)
Requires: libcrypto.so.10(OPENSSL_1.0.2)(64bit)
You could try using –skip-broken to work around the problem
You could try running: rpm -Va –nofiles –nodigest
[root@server ~]#
@Agung,
Hope this thread will help you to resolve Openssl Package error while installing OpenVPN.
https://serverfault.com/questions/879950/how-to-resolve-openssl-package-error-while-installing-nginx
Please resolve my Issue.
[root@static-host ~]# yum install cacti
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: repo.inara.pk
* epel: sg.fedora.ipserverone.com
* extras: repo.inara.pk
* updates: repo.inara.pk
Resolving Dependencies
–> Running transaction check
—> Package cacti.noarch 0:1.1.19-2.el6 will be installed
–> Processing Dependency: php-imap for package: cacti-1.1.19-2.el6.noarch
–> Finished Dependency Resolution
Error: Package: cacti-1.1.19-2.el6.noarch (epel)
Requires: php-imap
You could try using –skip-broken to work around the problem
You could try running: rpm -Va –nofiles –nodigest
@Anis,
Try these following installation instructions to install Cacti on CentOS 6.
Download latest epel-release rpm from
Install epel-release rpm:
Install cacti rpm package:
Sir, Please solve my problem.
I am using RHEL7 inside the VMVare. I am getting the same error while enabling the EPEL repository.
I have installed “epel-release-7-11.noarch”, Now i am updating my repository but i am not able to do it.
I can’t use internet inside the VMVare.
When i run command for enabling epel repository “yum update curl nss nss-util nspr” still it not able show repo of epel.
When i run this command “yum-config-manager –enable epel” still after run that when i run yum repolist, still it not showing me desired result.
Please solve my problem. So that i can use NRPE on my client machine.
It would be helpful to me.
@Sumit,
Just type the following command to install epel from the default repositories.
Nice article, If we do not have internet on the server. How can we install and configure *epel*? Suppose my desktop is windows and I’ll connect to the server through putty and my servers are in private network. Is there any possible way that we can download all epel rpms and do some kind of local repo config?
fatal: unable to access ‘https://github.com/ansible/ansible.git/’: Peer reports incompatible or unsupported protocol version.
while get the repo from latest source we are getting the above error in redhat7.
@Manikandan,
Some old NSS is used for SSL within cURL library when you download any package from the web, so it’s rejected. In such case, updating curl combined with nss update will help you..
Hope this helps!
Thanks for your valuable advise,
Hi! All
I am trying to Enable EPEL Repository in (_64 x86_64 x86_64 GNU/Linux)
I am getting below erros please help me
ThankQ
# RHEL/CentOS 6 64-Bit ##
# wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
# rpm -ivh epel-release-6-8.noarch.rpm
[root@Bhargav Talla ~]# yum repolist
Loaded plugins: product-id, refresh-packagekit, security, subscription-manager
Updating certificate-based repositories.
Error: Cannot retrieve metalink for repository: epel. Please verify its path and try again
[root@Bhargav Talla ~]#
[root@Bhargav Talla ~]# yum –enablerepo=epel info zabbix
Loaded plugins: product-id, refresh-packagekit, security, subscription-manager
Updating certificate-based repositories.
Error: Cannot retrieve repository metadata (repomd.xml) for repository: epel. Please verify its path and try again
[root@Bhargav Talla ~]# yum –enablerepo=epel install zabbix
Loaded plugins: product-id, refresh-packagekit, security, subscription-manager
Updating certificate-based repositories.
Error: Cannot retrieve repository metadata (repomd.xml) for repository: epel. Please verify its path and try again
Note: The epel configuration file is located under /etc/yum.repos.d/epel.repo.
First clear Yum cache as shown.
You may come across such error, after installing epel-release. The quick fix is to update your SSL certificates:
I am having one doubt, in my interview interviewer asked that you configured yum server and you are having 3700 Packages in your local machine now you need to add extra 200 packages how?
Please need help..
@Thulasi,
Copy
.rpm
packages to local yum repository..Hi,
Centos7 64bit link is not working. http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-10.noarch.rpm. Please help.
@Nisha,
Thanks for updating us, we’ve corrected the download links for EPEL in the article.
The centos6 link http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm does not seem to work. It might have been updated.
@Fury,
fedoraproject.org seems to be down, that’s the reason all download links not working…
Centos 4 and Centos 5 are dead, you might want to remove references to them
@Rene,
I totally agree both CentOS 4 and CentOS 5 are dead, even epel repository don’t have any packages for it, all links are dead. And also I have updated the article by removing CentOS 5 and 4 links.
Updated URL for Epel 7
http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-10.noarch.rpm
@Monish,
Thanks a ton for the updated link, updated the article with new EPEL link.
unable install openstack in rhel 7…
got error while installing ( #yum install openstack-packstack) :
Error: Package: 1:openstack-packstack-10.0.1-1.el7.noarch (openstack-ocata)
Requires: python-docutils
You could try using –skip-broken to work around the problem
You could try running: rpm -Va –nofiles –nodigest
Kindly help …!!!!
Hi,
I got an error after issuing this command: yum –enablerepo=epel install phpmyadmin
Could you help me please?
Error: Package: php-tcpdf-6.2.13-1.el6.noarch (epel)
Requires: php-posix
Error: Package: php-tcpdf-6.2.13-1.el6.noarch (epel)
Requires: php-bcmath
Error: Package: php-tcpdf-6.2.13-1.el6.noarch (epel)
Requires: php-tidy
Error: Package: phpMyAdmin-4.0.10.19-1.el6.noarch (epel)
Requires: php-mbstring
Error: Package: php-php-gettext-1.0.12-1.el6.noarch (epel)
Requires: php-mbstring
Error: Package: php-tcpdf-6.2.13-1.el6.noarch (epel)
Requires: php-mbstring
You could try using –skip-broken to work around the problem
** Found 1 pre-existing rpmdb problem(s), ‘yum check’ output follows:
SECU_PROD-2-1.i386 has missing requires of /usr/bin/sh
@Naomi,
Try executing following commands to fix error.
Sir, I found error.
This system is registered to Red Hat Subscription Management, but is not receiving updates. You can use subscription-manager to assign subscriptions.
No package zabbix available.
Error: Nothing to do
what I do? please help me.
Nice, i was trying for packages for RHEL 7, it worked well for me.
Thank you Ravi Saive. Also thanks to other for queries it helps others too.
Hello Ravi,
When I am trying to install squid proxy.
Its showing
no package squid available
what i can do?
@Jaya,
On which Linux distribution you’re trying to install squid?
In RHEL7 i am trying to install squid..
I am trying to install squid proxy in RHEL7 OS but the output it is giving is
How to resolve this issue to install squid proxy ?
@Jaya,
First remove the ngtech repo from /etc/yum.repos directory, then kill the yum with pkill command.
Then try to install squid with yum, I hope this time squid will install without any issues..
got an error
–2017-02-11 00:38:58– http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-8.noarch.rpm
Resolving dl.fedoraproject.org (dl.fedoraproject.org)… failed: Name or service not known.
wget: unable to resolve host address ‘dl.fedoraproject.org’
@Ivan,
Check your network, it seems network issue.. Have you added correct DNS Nameserver entries in /etc/resolv.conf file?
failure: repodata/repomd.xml from squid: [Errno 256] No more mirrors to try.
http://www1.ngtech.co.il/repo/centos/7Server/x86_64/repodata/repomd.xml: [Errno 14] HTTP Error 404 – Not Found
How to resolve thus issue to install squid proxy ?
I got the error
[root@jp1_redhat ansi]# yum repolist
Loaded plugins: product-id, rhnplugin, security, subscription-manager
This system is receiving updates from Red Hat Subscription Management.
This system is receiving updates from RHN Classic or RHN Satellite.
Error: xz compression not available
[root@jp1_redhat ansi]#
@Prakash,
I think you’ve installed non-CentOS version of xz package, first remove it.
And then re-install from the default repositories as shown.
I hope it will fix this issue…
Hi Ravi,
I am getting this error whatever I have installed Trying other mirror.
https://remi.mirror.wearetriple.com/enterprise/6/safe/x86_64/repodata/repomd.xml: [Errno 14] PYCURL ERROR 6 – “Couldn’t resolve host ‘remi.mirror.wearetriple.com'”. Please may i know how to fix this
@Priya,
Please add the DNS Name Servers in /etc/hosts file, if you don’t know DNS, then you can add following line to this file.
This no longer works if I enter the commands for installation on CentOS 7.
# wget http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-8.noarch.rpm
# rpm -ivh epel-release-7-8.noarch.rpm
The download works but then when ever I run yum I get this unknown repo message I do not know how to get rid of and I do not have access the the epel repo
Loaded plugins: fastestmirror, langpacks
epel/i386/metalink | 40 kB 00:00:00
Could not parse metalink https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=i386 error was
No repomd file
One of the configured repositories failed (Unknown),
and yum doesn’t have enough cached data to continue. At this point the only
safe thing yum can do is fail. There are a few ways to work “fix” this:
1. Contact the upstream for the repository and get them to fix the problem.
2. Reconfigure the baseurl/etc. for the repository, to point to a working
upstream. This is most often useful if you are using a newer
distribution release than is supported by the repository (and the
packages for the previous distribution release still work).
3. Disable the repository, so yum won’t use it by default. Yum will then
just ignore the repository until you permanently enable it again or use
–enablerepo for temporary usage:
yum-config-manager –disable
4. Configure the failing repository to be skipped, if it is unavailable.
Note that yum will try to contact the repo. when it runs most commands,
so will have to try and fail each time (and thus. yum will be be much
slower). If it is a very temporary problem though, this is often a nice
compromise:
yum-config-manager –save –setopt=.skip_if_unavailable=true
File /var/cache/yum/i386/7/epel/metalink.xml does not exist
@Antony,
Okay, just do yum install epel on the terminal to install Epel repository..
After “yum install epel”, i can’t find epel listed on my “yum repolist”
How do I add it to yum?
@Steven,
It should be yum install epel-release, try this command and see you will get epel under yum repolist or /etc/yum..
this is cool. it helps to setup epel.
Thank you Ravi, you saved my day.
IF Your graph is not showing just change the TIME ZONE under vi /etc/php.ini
I faced the issue because my system time zone and cacti time is different .
Hey Ravi,
You want to update the path for CentOS6 repo
http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
It is moved from old domain “download.fedoraproject.org”
@Tarun,
Thanks for update, but the old links still working, no need to change I think, when required will do..
@Ravi,
I am not able to install Mysql on centos6.4 ??
Getting Error
sudo yum install mysql-server-5.5
Loaded plugins: product-id, security, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
Setting up Install Process
No package mysql-server-5.5 available.
Error: Nothing to do
@Ankit,
You need to enable your RedHat subscription to get latest package updates from RedHat network, here is the guide to enable RedHat subscription.
https://www.tecmint.com/enable-redhat-subscription-reposiories-and-updates-for-rhel-7/
Hey Ravi Thanks you ,
It works after Enable Redhat Subscription from Redhat Network..
After installing of
[root@vkcdpl rpmfusion]# rpm -ivh epel-release-6-8.noarch.rpm
warning: epel-release-6-8.noarch.rpm: Header V3 RSA/SHA256 Signature, key ID 0608b895: NOKEY
Preparing… ########################################### [100%]
1:epel-release ########################################### [100%]
yum not working in my rhel 6
[root@vkcdpl rpmfusion]# yum repolist
Loaded plugins: product-id, refresh-packagekit, security, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
Error: Cannot retrieve metalink for repository: epel. Please verify its path and try again
[root@vkcdpl rpmfusion]# yum list
Loaded plugins: product-id, refresh-packagekit, security, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
Error: Cannot retrieve repository metadata (repomd.xml) for repository: epel. Please verify its path and try again
kindly explain me
@Vishwajit,
To get package updates from third party repositories like EPEL, you need to first register your RHEL machine to RedHat subscription to enable package updates, here is the guide to do so:
https://www.tecmint.com/enable-redhat-subscription-reposiories-and-updates-for-rhel-7/
I would say yum update after an repository is installed to bring it to latest version.
@Ameya,
I totally agreed to your point, yes we should update the repository after installing to bring the software packages to latest version.