Extra Packages for Enterprise Linux (EPEL)
Warning
The AL2 epel
Extra enabled the third party EPEL7 repository.
As of 2024-06-30 the third-party EPEL7 repository is
no longer being maintained.
This third-party repository will have no future updates. This means there will be no security fixes for packages in the EPEL repository.
This section will cover options in AL2023 for some packages found in EPEL.
Extra Packages for Enterprise Linux (EPEL) is a project in the Fedora community with the objective of creating a large array of packages for enterprise-level Linux operating systems. The project has primarily produced RHEL and CentOS packages. AL2 features a high level of compatibility with CentOS 7. As a result, many EPEL7 packages work on AL2.
There is not currently an EPEL or EPEL-like repository for AL2023. However, there are a number of packages that were in EPEL7 that customers have used on AL2 which are either available in AL2023, or have alternatives in AL2023. This section will cover some of these packages and what the options are in AL2023.
Warning
Only add repositories designed to be used with AL2023.
While repositories designed for other distributions may work today, there is no guarantee they will continue to do so with any package update in AL2023 or the repository not designed for use with AL2023.
There are also packages were installable from EPEL on AL2 which will not be added to AL2023. Common reasons for this are issues such as the upstream project no longer being maintained, or not fixing CVEs. This section will also cover some of these packages and what alternatives exist.
Topics
- axel - HTTP/FTP client
- brotli and libbrotli - compression
- collectd - Statistics collection daemon
- cpulimit - CPU Usage limiter
- exim - mail transfer agent
- fuse3 - File System in Userspace (FUSE) v3
- ganglia - Distributed Monitoring System
- git-lfs - version control large files with Git
- haveged - an entropy source using the HAVEGE algorithm
- inotify-tools - inotify command line tools
- iperf - TCP/UDP Performance benchmark
- jemalloc - alternative malloc implementation
- libbsd - BSD-compatible function library
- libserf - HTTP Client Library
- libzstd - zstd compression library
- lighttpd web server
- lshell - a restricted shell
- monit - process, file, directory, and devices monitor
- nodejs
- perl-Config-General
- python2-lockfile - file locking
- python2-rsa - pure Python RSA
- python2-simplejson - JSON routines for Python 2
- rkhunter - Rootkit Hunter
- rssh - a restricted shell for use with OpenSSH
- sscg - self-signed SSL certificate generator
- stress - Stress test
- stress-ng - Stress test
- tmpwatch - removes files based on last accessed time
- xmlstarlet - command line XML utilitise
axel
- HTTP/FTP client
The axel
package was in EPEL7,
and has not ever shipped as part of Amazon Linux. Alternatives available
in AL2023 are curl
and wget
.
Warning
The -S
option to axel
uses an unencrypted
http connection to discover mirrors for a file.
It is highly recommended to migrate any use of axel
over to
either curl
or wget
.
brotli
and libbrotli
- compression
The brotli
and libbrotli
packages were in EPEL7,
while just the brotli
package was
available in AL2 core.
Both the brotli
and libbrotli
packages are included in AL2023.
The brotli
package can be installed on AL2023
with the following command:
[ec2-user ~]$
sudo dnf install
brotli
The libbrotli
package can be installed on AL2023
with the following command:
[ec2-user ~]$
sudo dnf install
libbrotli
collectd
- Statistics collection daemon
The collect
package was in EPEL7,
and was also available in the collectd
and collectd-python3
AL2 Extras.
The collectd
package is included in AL2023 and can be
installed by running the following command:
[ec2-user ~]$
sudo dnf install
collectd
cpulimit
- CPU Usage limiter
In Amazon Linux 2023, systemd
provides functionality to limit
the CPU usage of processes, or groups of processes. This functionality
is also easy to use for any systemd
service.
There are powerful resource control facilities provided by systemd
which can be used to ensure
any task or group of tasks is limited in what resources it can consume.
For more information, see systemd.resource-control
exim
- mail transfer agent
The exim
package was in EPEL7, and previously
available in AL1. Amazon Linux 2023 provides both the postfix
and sendmail
Mail Transfer Agents (MTAs).
fuse3
- File System in Userspace (FUSE) v3
The fuse3
package (including fuse3-libs
and fuse3-devel
)
were in EPEL7. These packages are part of AL2023,
and each can be installed by running the relevant following command:
[ec2-user ~]$
sudo dnf install
fuse3
[ec2-user ~]$
sudo dnf install
fuse3-libs
[ec2-user ~]$
sudo dnf install
fuse3-devel
ganglia
- Distributed Monitoring System
The ganglia
package was in EPEL7, and previously
available in AL1. It was not shipped with AL2.
The upstream project had a period of inactivity where some open CVEs
were not being addressed. While there has been recent activity
in the upstream project, it is not planned to add ganglia
to AL2023.
git-lfs
- version control large files with Git
The git-lfs
package was in EPEL7.
In Amazon Linux 2023, the git-lfs
package is included
in the core repository. On AL2023, git-lfs
can be installed by running the following command:
[ec2-user ~]$
sudo dnf install
git-lfs
haveged
- an entropy source using the HAVEGE algorithm
The haveged
package was in EPEL7.
Amazon Linux 2023 comes pre-configured with entropy sources, not requiring
the use of haveged
.
inotify-tools
- inotify command line tools
The inotify-tools
package was in EPEL7,
and is included in AL2023.
Note
In AL2023, systemd
supports path based activation which can be used for taking
action on events such as when a path exists or changes.
Much of what inotify-tools
is used for can now be better accomplished
in a more reliable manner using systemd
path activation. For more information, see
systemd.path
The inotify-tools
package is included in AL2023 and can be
installed by running the following command:
[ec2-user ~]$
sudo dnf install
inotify-tools
iperf
- TCP/UDP Performance benchmark
The iperf
version 2 package was in EPEL7,
and was also available in the testing
AL2 Extra.
and was also available in AL1
Note
The iperf3
package is also available, providing
version 3 of iperf
.
The iperf
package is included in AL2023 and can be
installed by running the following command:
[ec2-user ~]$
sudo dnf install
iperf
jemalloc
- alternative malloc
implementation
The jemalloc
package was in EPEL7,
and was available in the lamp-mariadb10.2-php7.2
and mariadb10.5
AL2 Extras.
The jemalloc
package is included in AL2023 and can be
installed by running the following command:
[ec2-user ~]$
sudo dnf install
jemalloc
libbsd
- BSD-compatible function library
The libbsd
package was in EPEL7,
and was also available in the testing
AL2 Extra.
The libbsd
package is included in AL2023 and can be
installed by running the following command:
[ec2-user ~]$
sudo dnf install
libbsd
The development files for libbsd
can be installed by running
the following command.
[ec2-user ~]$
sudo dnf install
libbsd-devel
libserf
- HTTP Client Library
The libserf
package was in EPEL7.
The libserf
package is provided in Amazon Linux 2023.
It can be installed by running the following command:
[ec2-user ~]$
sudo dnf install
libserf
libzstd
- zstd compression library
The libzstd
package was in AL2 core, as well as in EPEL7.
The libzstd
package is also part of AL2023.
[ec2-user ~]$
sudo dnf install
libzstd
lighttpd
web server
The lighttpd
package was in EPEL7, and previously
available in AL1. Amazon Linux 2023 provides both the Apache httpd
and nginx
web servers.
lshell
- a restricted shell
The lshell
package has never been shipped as part of Amazon Linux.
It was available in EPEL6.
The
Fedora packaging repository for lshell
The upstream lshell
project is
no longer being actively maintained
The alternative suggested in the Debian bug, rssh
For these reasons, adding lshell
to AL2023 is not planned.
monit
- process, file, directory, and devices monitor
In Amazon Linux 2023, systemd
provides a wide array of functionality for monitoring, starting,
stopping, and restarting services. This includes rate limiting restarts, waiting between restart attempts,
and starting another service on failure. For more information, see the
systemd.service
In AL2023, systemd
also supports path based activation which can be used for taking
action on events such as when a path exists or changes. For more information, see
systemd.path
There are common configuration options for systemd
units which allow
specifying dependencies, conditionals, and actions to take on success or failure.
For more information, see the
systemd.unit
There are powerful resource control facilities provided by systemd
which can be used to ensure
any monitoring task does not use excessive CPU or memory.
For more information, see systemd.resource-control
nodejs
The nodejs
version 16 package was in EPEL7,
and nodejs
is now included in AL2023. At the time of
writing, both nodejs
version 18 and 20 were available
in AL2023. You can install nodejs
18 on AL2023 with the
following command:
[ec2-user ~]$
sudo dnf install
nodejs
You can install nodejs
20 on AL2023 with the following command:
[ec2-user ~]$
sudo dnf install
nodejs20
perl-Config-General
The perl-Config-General
package was in EPEL7,
and is now included in AL2023. You can install the
perl-Config-General
package in AL2023 with the following command:
[ec2-user ~]$
sudo dnf install
perl-Config-General
Perl modules can also be installed by asking DNF to install the package that provides a particular Perl module. With this method, you can use the more familiar Perl module name rather than the OS package name.
[ec2-user ~]$
sudo dnf install 'perl(
Confg::General
)'
python2-lockfile
- file locking
The python2-lockfile
package was in EPEL7,
and AL2 included a python-lockfile
package.
In AL2023 Python 2.7 has been replaced with Python 3,
so a Python 2 variant of this package will not be added to AL2023.
The Python 3 version of this package is included in AL2023.
You can install the python3-lockfile
package in AL2023 with one of the following commands:
[ec2-user ~]$
sudo dnf install
python3-lockfile
Python modules can also be installed by asking DNF to install the package that provides a particular Python module.
[ec2-user ~]$
sudo dnf install 'python3dist(
lockfile
)'
python2-rsa
- pure Python RSA
The python2-rsa
package was in EPEL7,
and AL2 included a python2-rsa
package.
In AL2023 Python 2.7 has been replaced with Python 3,
so a Python 2 variant of this package will not be added to AL2023.
The Python 3 version of this package is included in AL2023.
You can install the python3-rsa
package in AL2023 with one of the following commands:
[ec2-user ~]$
sudo dnf install
python3-rsa
Python modules can also be installed by asking DNF to install the package that provides a particular Python module.
[ec2-user ~]$
sudo dnf install 'python3dist(
rsa
)'
python2-simplejson
- JSON routines for Python 2
The python2-simplejson
package was in EPEL7.
In AL2023 Python 2.7 has been replaced with Python 3,
so a Python 2 variant of this package will not be added to AL2023.
The Python 3 version of this package is included in AL2023.
You can install the python3-simplejson
package in AL2023 with the following command:
[ec2-user ~]$
sudo dnf install
python3-simplejson
Python modules can also be installed by asking DNF to install the package that provides a particular Python module.
[ec2-user ~]$
sudo dnf install 'python3dist(
simplejson
)'
rkhunter
- Rootkit Hunter
The rkhunter
package is included in AL2023 along with chkrootkit
.
[ec2-user ~]$
sudo dnf install
rkhunter
[ec2-user ~]$
sudo dnf install
chkrootkit
rssh
- a restricted shell for use with OpenSSH
The rssh
package was in EPEL7. The upstream
rssh
With the author citing unfixable security issues, adding rssh
to AL2023 is not planned.
sscg
- self-signed SSL certificate generator
The sscg
package was in AL2 core, as well as in EPEL7.
The sscg
package is also part of AL2023.
[ec2-user ~]$
sudo dnf install
sscg
stress
- Stress test
The stress
package was in EPEL7,
and was also available in AL1
The stress
package is included in AL2023 and can be
installed by running the following command:
[ec2-user ~]$
sudo dnf install
stress
stress-ng
- Stress test
The stress-ng
package was in EPEL7,
and was also available in the testing
AL2 Extra.
The stress-ng
package is included in AL2023 and can be
installed by running the following command:
[ec2-user ~]$
sudo dnf install
stress-ng
tmpwatch
- removes files based on last accessed time
In Amazon Linux 2023, this functionality is provided by
systemd-tmpfiles
xmlstarlet
- command line XML utilitise
The xmlstarlet
package was in EPEL7, and is not
available in AL2023.
The upstream package has not been touched in over 9 years (last touched in August 2014).
For an additional four years prior (since at least July 2010), a request for a new maintainer
has gone unanswered. It is for this reason that it is not planned to add
xmlstarlet
to AL2023.