Wéi erstellen ech lokal HTTP Yum/DNF Repository op RHEL 8


E Software Repository oder Repo ass eng zentral Plaz fir RPM Software Packagen fir Redhat Linux Verdeelung ze halen an z'erhalen, vun deenen d'Benotzer Packagen op hire Linux Server kënnen eroflueden an installéieren.

Repositories ginn allgemeng op engem ëffentlechen Netzwierk gespäichert, dat vu ville Benotzer um Internet zougänglech ass. Wéi och ëmmer, Dir kënnt Ären eegene lokale Repository op Ärem Server erstellen an et als eenzege Benotzer zougräifen oder Zougang zu anere Maschinnen op Ärem lokalen LAN (Local Area Network) mat HTTP Webserver erlaben.

De Virdeel fir e lokale Repository ze kreéieren ass datt Dir keng Internetverbindung brauch fir Software Packagen oder Updates z'installéieren.

RPM (RedHat Package Manager) baséiert Linux Systemer, déi Software Installatioun einfach op Red Hat/CentOS Linux mécht.

An dësem Artikel erkläre mir wéi Dir e lokalen YUM/DNF Repository op RHEL 8 opstellt mat der Installatioun DVD oder ISO Datei. Mir weisen Iech och wéi Dir Software Packagen op Client RHEL 8 Maschinnen fannt an installéiere mat Nginx HTTP Server.

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

Schrëtt 1: Nginx Web Server installéieren

1. Als éischt installéiert den Nginx HTTP-Server mat dem DNF Package Manager wéi folgend.

# dnf install nginx

2. Wann d'Nginx installéiert ass, kënnt Dir starten, aktivéiert de Service fir automatesch bei der Bootzäit ze starten an de Status mat de folgende Kommandoen z'iwwerpréiwen.

# systemctl start nginx
# systemctl enable nginx
# systemctl status nginx

3. Als nächst musst Dir Nginx Ports 80 an 443 op Är Firewall opmaachen.

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

4. Elo kënnt Dir verifizéieren datt Ären Nginx-Server op a lafen ass, andeems Dir op déi folgend URL op Ärem Webbrowser gitt, eng Standard Nginx Websäit gëtt ugewisen.

http://SERVER_DOMAIN_NAME_OR_IP

Schrëtt 2: Opriichte RHEL 8 Installatioun DVD/ISO Fichier

5. Erstellt e lokale Repository Mount Punkt ënner Nginx Dokument Root Verzeechnes /var/www/html/ a montéiert de erofgeluede RHEL 8 DVD ISO Bild ënner /mnt Verzeichnis.

# 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. Als nächst kopéiert ISO-Dateien lokal ënner /var/www/html/local_repo Verzeichnis a verifizéieren den Inhalt mat ls Kommando.

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

Schrëtt 3: Lokal Repository konfiguréieren

7. Elo ass et Zäit fir de lokale Repository ze konfiguréieren. Dir musst d'lokal Repository Konfiguratiounsdatei am /etc/yum.repos.d/ Verzeichnis erstellen an déi entspriechend Permissiounen op der Datei setzen wéi gewisen.

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

8. Da öffnen d'Datei fir z'änneren mat Ärem Liiblings Kommandozeil Texteditor.

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

9. Kopéiert a Paste de folgenden Inhalt an der Datei.

[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

Späichert d'Ännerungen a gitt d'Datei aus.

10. Elo musst Dir erfuerderlech Packagen installéieren fir Äert lokalt Repository ze kreéieren, ze konfiguréieren an ze verwalten andeems Dir de folgende Kommando ausféiert.

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

Schrëtt 4: Lokal Repository testen

11. An dësem Schrëtt sollt Dir eng Botzen vun temporäre Dateien ausféieren, déi fir Repositories gehale ginn, andeems Dir de folgende Kommando benotzt.

# yum clean all
OR
# dnf clean all

12. Da vergewëssert Iech datt déi erstallt Repositories an der Lëscht vun aktivéierten Repositories erscheinen.

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

13. Probéiert elo e Package aus de lokalen Repositories z'installéieren, zB installéiere Git Kommandozeil Tool wéi follegt:

# dnf install git

Wann Dir d'Ausgab vum uewe genannte Kommando kuckt, gëtt de Git Package aus dem LocalRepo_AppStream Repository installéiert wéi am Screenshot gewisen. Dëst beweist datt déi lokal Repositories aktivéiert sinn a gutt funktionnéieren.

Schrëtt 5: Setup Local Yum Repository op Client Maschinnen

14. Elo op Är RHEL 8 Client Maschinnen, füügt Är lokal Repos un d'YUM Konfiguratioun.

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

Kopéiert a paste d'Konfiguratioun hei ënnen an der Datei. Vergewëssert Iech baseurl duerch Är Server IP Adress oder Domain z'ersetzen.

[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

Späichert d'Datei a fänkt un Är lokal YUM Spigelen ze benotzen.

15. Als nächst, fuert de folgende Kommando fir Är lokal Repos an der Lëscht vun verfügbaren YUM Repos ze gesinn, op de Client Maschinnen.

# dnf repolist

Dat ass alles! An dësem Artikel hu mir gewisen wéi Dir e lokalen YUM/DNF Repository am RHEL 8 erstellt, mat der Installatioun DVD oder ISO Datei. Vergiesst net eis iwwer de Feedbackformular hei ënnen z'erreechen fir all Froen oder Kommentarer.