Namestitev repozitorija EPEL v AlmaLinux

Linux Branje: 4 min

EPEL (Extra Packages for Enterprise Linux) je dodatni repozitorij paketov projekta Fedora za Red Hat Enterprise Linux in z njim združljive sisteme, torej za AlmaLinux in Rocky Linux. Vsebuje programe, ki jih v lastnih repozitorijih distribucije ni, na primer htop, btop, ncdu, fail2ban ali certbot. Paketi EPEL ne prepisujejo lastnih paketov sistema, le dopolnjujejo jih, zato ga je na strežniku običajno mogoče vklopiti brez težav.

Korake smo preizkusili v sistemih AlmaLinux 10.2 in 9.8. Ukaze zaganjaj kot uporabnik root ali s sudo (glej: Uporaba ukaza sudo s primeri).

1. Namestitev EPEL

AlmaLinux nastavitveni paket EPEL dobavlja v lastnem repozitoriju extras, zato URL-ja ni treba navesti:

sudo dnf install epel-release

Na koncu namestitve paket izpiše:

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

Če repozitorij extras iz nekega razloga ni na voljo (na primer na okrnjeni sliki), lahko epel-release namestiš tudi neposredno s strani Fedore:

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

V preizkusu je to prineslo novejšo izdajo paketa (epel-release-10-8, v repozitoriju extras je bila 10-6); nastavitev repozitorija je enaka, posodobitve pa nato upravlja dnf.

2. Vklop repozitorija CRB

CRB (CodeReady Builder) je eden lastnih repozitorijev AlmaLinuxa, z razvojnimi knjižnicami. Veliko paketov EPEL temelji na njih, zato ga je treba vklopiti skupaj z EPEL. Za to epel-release namesti tudi majhen pomožni program:

sudo crb enable
Enabling CRB repo
CRB repo is enabled and named: crb

Njegovo stanje pokaže sudo crb status. Ukaz crb zahteva pravice root, brez sudo vrne napako „Permission denied”.

V preizkusu je bil na cloud image AlmaLinux 10 CRB že privzeto vklopljen, na AlmaLinux 9 pa ne. crb enable je v obeh primerih varno zagnati: če je repozitorij že aktiven, ne spremeni ničesar. Isto dosežeš tudi z ukazom dnf config-manager --set-enabled crb.

3. Preverjanje

dnf repolist

Na seznamu se morata prikazati repozitorija epel in crb. V AlmaLinux 9 se doda tudi repozitorij z imenom epel-cisco-openh264; ta vsebuje video kodek OpenH264, ki ga je prevedel Cisco, na strežniku z njim ni dela.

Velikost repozitorija pokaže dnf repolist -v epel. V času preizkusa je EPEL 10 vseboval približno 23 900, EPEL 9 pa približno 26 500 paketov.

4. Namestitev paketa iz EPEL

Po vklopu EPEL pakete nameščaš enako kot sistemske:

sudo dnf install htop ncdu btop

Ob namestitvi prvega paketa EPEL dnf vpraša, ali naj uvozi podpisni ključ EPEL (v AlmaLinux 9: Userid : "Fedora (epel9) <epel@fedoraproject.org>", ključ pride iz datoteke /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-9 na računalniku); potrdi z y. V času preizkusa so bile za AlmaLinux 10 na voljo na primer te različice: htop 3.3.0, btop 1.4.7, ncdu 1.22, fail2ban 1.1.0, certbot 4.2.0 in pripadajoči python3-certbot-nginx.

O uporabnih paketih EPEL govori več naših člankov: Namestitev in uporaba htop, Namestitev in nastavitev Fail2ban, Pridobitev potrdila Let’s Encrypt s Certbotom.

Kateri paket je prišel iz EPEL?

dnf repository-packages epel list --installed

Isto krajše: dnf list --installed | grep @epel. Zadnji stolpec izpisa (@epel) pokaže vir:

btop.aarch64                        1.4.7-1.el10_2                         @epel
htop.aarch64                        3.3.0-5.el10_0                         @epel
ncdu.aarch64                        1.22-1.el10_1                          @epel

Za razpoložljiv paket dnf info htop navede, iz katerega repozitorija bi prišel (Repository : epel). Več imen paketov hkrati preveriš takole:

dnf repoquery --repo epel --available eza btop nvtop

Prikažejo se le tisti, ki so v EPEL: v preizkusu sta bila btop in nvtop, eza pa ne.

Paketi v preizkušanju

Repozitorij epel-testing vsebuje posodobitve, namenjene v EPEL, ki so še v preizkušanju, in je privzeto izklopljen. Na produkcijskem strežniku ga ne vklopi trajno; če potrebuješ popravek napake, ga lahko uporabiš za en ukaz:

sudo dnf --enablerepo=epel-testing upgrade htop

Izklop EPEL

Če ga želiš izključiti le začasno (na primer za raziskavo navzkrižja paketov), repozitorij izklopi in ga po potrebi omogoči za posamezen ukaz:

sudo dnf config-manager --set-disabled epel
sudo dnf --enablerepo=epel install nvtop
sudo dnf config-manager --set-enabled epel

V izklopljenem stanju tudi paketi EPEL ne dobivajo posodobitev. Trajna odstranitev:

sudo dnf remove epel-release

To izbriše le nastavitev repozitorija. Programi, nameščeni iz EPEL, ostanejo na računalniku in delujejo, od tedaj pa ne dobivajo posodobitev, kar je z varnostnega vidika tveganje. Če jih ne potrebuješ, jih najprej odstrani, seznam da ukaz iz prejšnjega razdelka.

Posodobitve

Paketi EPEL se posodabljajo skupaj z drugimi paketi sistema z ukazom dnf upgrade, nanje pa se razteza tudi samodejno posodabljanje (glej: Posodabljanje sistema: dnf, apt in samodejne posodobitve).

EPEL vzdržujejo prostovoljci Fedore in ne spada med podprte pakete AlmaLinuxa. Posodobitev paketa EPEL lahko, sicer redko, spremeni njegovo vedenje, zato pri pomembni storitvi po posodobitvi preveri delovanje. Če bi vzdrževanje strežnika raje zaupal nam, priporočamo našo storitev upravljanega VPS; za lastno upravljanje je mogoče naše KVM VPS namestiti tudi z AlmaLinuxom.

Rocky Linux in Red Hat Enterprise Linux

V Rocky Linuxu so ukazi enaki. V Red Hat Enterprise Linuxu epel-release ni v repozitorijih Red Hat: tam ga je treba namestiti s strani Fedore, z URL-jem, CRB pa vklopiš z ukazom subscription-manager repos.

Če bi v naslednjem koraku rad namestil novejši PHP ali Redis, repozitorij Remi temelji na EPEL.

Nazaj: Linux – članki (76)