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


Repozitorij softvera ili “repo” središnje je mjesto za čuvanje i održavanje RPM softverskih paketa za Redhat Linux distribuciju, s kojeg korisnici mogu preuzeti i instalirati pakete na svoje Linux poslužitelje.

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

Prednost stvaranja lokalnog repozitorija je ta što vam nije potrebna internetska veza za instaliranje softverskih paketa ili ažuriranja.

YUM (Yellowdog Updater Modified) ili DNF (Dandified YUM) široko je korišten uslužni program za upravljanje softverskim paketima za Linux sustave temeljene na RPM-u (RedHat Package Manager), koji olakšava instalaciju softvera na Red Hat/CentOS Linux.

U ovom ćemo članku objasniti kako postaviti lokalno YUM/DNF spremište na RHEL 8 pomoću instalacijskog DVD-a ili ISO datoteke. Također ćemo vam pokazati kako pronaći i instalirati softverske pakete na klijentske RHEL 8 strojeve pomoću Nginx HTTP poslužitelja.

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 poslužitelj

1. Prvo instalirajte Nginx HTTP poslužitelj koristeći DNF upravitelj paketa na sljedeći način.

dnf install nginx

2. Nakon što instalirate Nginx, možete pokrenuti, omogućiti servisu da se automatski pokrene prilikom pokretanja i provjeriti status pomoću sljedećih naredbi.

systemctl start nginx
systemctl enable nginx
systemctl status nginx

3. Zatim trebate otvoriti Nginx portove 80 i 443 na vašem vatrozidu.

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

4. Sada možete provjeriti je li vaš Nginx poslužitelj pokrenut i radi odlaskom na sljedeći URL u vašem web pregledniku, prikazat će se zadana Nginx web stranica.

http://SERVER_DOMAIN_NAME_OR_IP

Korak 2: Montiranje RHEL 8 instalacijskog DVD/ISO datoteke

5. Stvorite točku montiranja lokalnog repozitorija u Nginx korijenskom direktoriju dokumenta /var/www/html/ i montirajte preuzeti RHEL 8 DVD ISO slika u direktoriju /mnt.

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 direktorij /var/www/html/local_repo i provjerite sadržaj pomoću naredbe ls.

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

Korak 3: Konfiguriranje lokalnog repozitorija

7. Sada je vrijeme za konfiguriranje lokalnog repozitorija. Morate stvoriti konfiguracijsku datoteku lokalnog repozitorija u direktoriju /etc/yum.repos.d/ i postaviti odgovarajuća dopuštenja 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 naredbenog retka.

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

Spremite promjene i izađite iz datoteke.

10. Sada trebate instalirati potrebne pakete za kreiranje, konfiguriranje i upravljanje vašim lokalnim spremištem pokretanjem sljedeće naredbe.

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

Korak 4: Testiranje lokalnog repozitorija

11. U ovom koraku trebali biste pokrenuti čišćenje privremenih datoteka koje se čuvaju za repozitorije pomoću sljedeće naredbe.

yum clean all
OR
dnf clean all

12. Zatim provjerite pojavljuju li se stvorena spremišta na popisu omogućenih spremišta.

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

13. Sada pokušajte instalirati paket iz lokalnih repozitorija, na primjer instalirajte Git alat naredbenog retka na sljedeći način:

dnf install git

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

Korak 5: Postavite lokalno Yum spremište na klijentskim računalima

14. Sada na vašim RHEL 8 klijentskim strojevima dodajte svoja lokalna spremišta 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 poslužitelja.

[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

Spremite datoteku i počnite koristiti svoja lokalna YUM ogledala.

15. Zatim pokrenite sljedeću naredbu da biste vidjeli svoja lokalna spremišta na popisu dostupnih YUM spremišta na klijentskim računalima.

dnf repolist

To je sve! U ovom smo članku pokazali kako stvoriti lokalno YUM/DNF spremište u RHEL 8, koristeći instalacijski DVD ili ISO datoteku. Ne zaboravite nam se obratiti putem obrasca za povratne informacije u nastavku za sva pitanja ili komentare.