Kako kreirati lokalno HTTP Yum/DNF spremište na RHEL 8


Repozitorijum softvera ili “repo” je centralna lokacija za čuvanje i održavanje RPM softverskih paketa za Redhat Linux distribuciju, sa koje korisnici mogu preuzeti i instalirati pakete na svoje Linux servere.

Repozitorijumi se općenito pohranjuju na javnoj mreži kojoj može pristupiti više korisnika na internetu. Međutim, možete kreirati vlastito lokalno spremište na vašem serveru i pristupiti mu kao jedan korisnik ili dozvoliti pristup drugim strojevima na vašem lokalnom LAN-u (Local Area Network) koristeći HTTP web server.

Prednost kreiranja lokalnog spremišta je u tome što vam nije potrebna internetska veza za instaliranje softverskih paketa ili ažuriranja.

YUM (Yellowdog Updater Modified) ili DNF (Dandified YUM) je široko korišćen uslužni program za upravljanje softverskim paketima za RPM (RedHat Package Manager) bazirane Linux sisteme, koji olakšavaju instalaciju softvera na Red Hat/CentOS Linux.

U ovom članku ćemo objasniti kako postaviti lokalno YUM/DNF spremište na RHEL 8 koristeći instalacioni DVD ili ISO fajl. Također ćemo vam pokazati kako pronaći i instalirati softverske pakete na klijentske RHEL 8 mašine koristeći Nginx HTTP server.

Naše okruženje za testiranje

Local Repository Server: RHEL 8 [192.168.0.106]
Local Client Machine: RHEL 8 [192.168.0.200]

Korak 1: Instalirajte Nginx web server

1. Prvo instalirajte Nginx HTTP server koristeći DNF paket menadžer na sljedeći način.

dnf install nginx

2. Kada se Nginx instalira, možete pokrenuti, omogućiti da se servis automatski pokrene u vrijeme pokretanja i provjeriti status koristeći sljedeće komande.

systemctl start nginx
systemctl enable nginx
systemctl status nginx

3. Zatim morate otvoriti Nginx portove 80 i 443 na vašem zaštitnom zidu.

firewall-cmd --zone=public --permanent --add-service=http
firewall-cmd --zone=public --permanent --add-service=https
firewall-cmd --reload

4. Sada možete provjeriti da li je vaš Nginx server pokrenut i radi tako što ćete otići na sljedeći URL na vašem web pretraživaču, bit će prikazana zadana Nginx web stranica.

http://SERVER_DOMAIN_NAME_OR_IP

Korak 2: Montiranje RHEL 8 instalacionog DVD/ISO datoteke

5. Kreirajte tačku montiranja lokalnog spremišta u Nginx korijenskom direktoriju dokumenta /var/www/html/ i montirajte preuzeti RHEL 8 DVD ISO slika u /mnt direktorijumu.

mkdir /var/www/html/local_repo
mount -o loop rhel-8.0-x86_64-dvd.iso /mnt  [Mount Download ISO File]
mount /dev/cdrom /mnt                       [Mount DVD ISO File from DVD ROM]

6. Zatim, kopirajte ISO datoteke lokalno u /var/www/html/local_repo direktorij i provjerite sadržaj koristeći komandu ls.

cd /mnt
tar cvf - . | (cd /var/www/html/local_repo/; tar xvf -)
ls -l /var/www/html/local_repo/

Korak 3: Konfiguriranje lokalnog spremišta

7. Sada je vrijeme za konfiguraciju lokalnog spremišta. Morate kreirati konfiguracijsku datoteku lokalnog spremišta u direktoriju /etc/yum.repos.d/ i postaviti odgovarajuće dozvole za datoteku kao što je prikazano.

touch /etc/yum.repos.d/local-rhel8.repo
chmod  u+rw,g+r,o+r  /etc/yum.repos.d/local-rhel8.

8. Zatim otvorite datoteku za uređivanje koristeći svoj omiljeni uređivač teksta na komandnoj liniji.

vim /etc/yum.repos.d/local.repo

9. Kopirajte i zalijepite sljedeći sadržaj u datoteku.

[LocalRepo_BaseOS]
name=LocalRepo_BaseOS
metadata_expire=-1
enabled=1
gpgcheck=1
baseurl=file:///var/www/html/local_repo/
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

[LocalRepo_AppStream]
name=LocalRepo_AppStream
metadata_expire=-1
enabled=1
gpgcheck=1
baseurl=file:///var/www/html/local_repo/
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

Sačuvajte promjene i izađite iz datoteke.

10. Sada trebate instalirati potrebne pakete za kreiranje, konfiguriranje i upravljanje vašim lokalnim spremištem tako što ćete pokrenuti sljedeću naredbu.

yum install createrepo  yum-utils
createrepo /var/www/html/local_repo/

Korak 4: Testiranje lokalnog spremišta

11. U ovom koraku, trebali biste pokrenuti čišćenje privremenih datoteka koje se čuvaju za spremišta koristeći sljedeću naredbu.

yum clean all
OR
dnf clean all

12. Zatim provjerite da li se kreirana spremišta pojavljuju na listi omogućenih spremišta.

dnf repolist
OR
dnf repolist  -v  #shows more detailed information 

13. Sada pokušajte instalirati paket iz lokalnih spremišta, na primjer instalirajte Git alat za komandnu liniju na sljedeći način:

dnf install git

Gledajući izlaz gornje naredbe, git paket se instalira iz LocalRepo_AppStream spremišta kao što je prikazano na snimku ekrana. Ovo dokazuje da su lokalna spremišta omogućena i da rade dobro.

Korak 5: Podešavanje lokalnog Yum repozitorija na klijentskim mašinama

14. Sada na vašim RHEL 8 klijentskim mašinama, dodajte svoje lokalne repo-ove u YUM konfiguraciju.

vi /etc/yum.repos.d/local-rhel8.repo 

Kopirajte i zalijepite konfiguraciju ispod u datoteku. Obavezno zamijenite baseurl IP adresom ili domenom vašeg servera.

[LocalRepo_BaseOS]
name=LocalRepo_BaseOS
enabled=1
gpgcheck=0
baseurl=http://192.168.0.106

[LocalRepo_AppStream]
name=LocalRepo_AppStream
enabled=1
gpgcheck=0
baseurl=http://192.168.0.106

Sačuvajte datoteku i počnite koristiti svoje lokalne YUM ogledala.

15. Zatim pokrenite sljedeću naredbu da vidite svoje lokalne repozitorije na listi dostupnih YUM repo-ova, na klijentskim mašinama.

dnf repolist

To je sve! U ovom članku smo pokazali kako da kreirate lokalno YUM/DNF spremište u RHEL 8, koristeći instalacioni DVD ili ISO fajl. Ne zaboravite da nam se obratite putem obrasca za povratne informacije u nastavku za bilo kakva pitanja ili komentare.