So richten Sie das lokale HTTP -Yum -Repository auf CentOS 7 ein

So richten Sie das lokale HTTP -Yum -Repository auf CentOS 7 ein

Ein Software -Repository (“RepoKurz gesagt) ist ein zentraler Dateispeicherort, an dem Softwarepakete aufbewahrt und verwaltet werden können, von dem Benutzer Pakete abrufen und auf ihren Computern installieren können.

Repositorys werden häufig auf Servern in einem Netzwerk gespeichert, beispielsweise auf ein Internet, auf das mehrere Benutzer zugegriffen werden können. Sie können jedoch ein lokales Repository auf Ihrem Computer erstellen und konfigurieren und als einzelner Benutzer darauf zugreifen oder auf andere Maschinen auf Ihrem Zugriff auf Ihre Lan (Lokales Netzwerk).

Ein Vorteil der Einrichtung eines lokalen Repositorys besteht darin, dass Sie keine Internetverbindung benötigen, um Softwarepakete zu installieren.

YUM (Yellowdog Updater Modified) ist ein weit verbreitetes Paket -Management -Tool für Drehzahl (Redhat Package Manager) Basierend auf Linux -Systemen, die die Software -Installation erleichtern Rote Hut/Centos Linux.

In diesem Artikel werden wir erklären, wie man einen Lokal eingerichtet hat Yum Repository vorbei Http (Nginx) Webserver auf CentOS 7 VPS Zeigen Sie auch, wie Sie Softwarepakete auf dem Client finden und installieren Centos 7 Maschinen.

Unsere Testumgebung

Yum HTTP Repository Server: Centos 7 [192.168.0.100] Client -Maschine: Centos 7 [192.168.0.101] 

Schritt 1: Installieren Sie den NGINX -Webserver

1. Beginnen Sie zunächst mit der Installation des Nginx HTTP -Servers aus dem EPEL -Repository mit dem YUM -Paket -Manager wie folgt.

# yum install epel-release # yum install nginx 

2. Sobald Sie den NGINX -Webserver installiert haben, können Sie ihn zum ersten Mal starten und es ermöglichen, automatisch mit dem Systemstart zu starten.

 # Systemctl start nginx # systemctl aktivieren nginx # systemctl status nginx 

3. Als nächstes müssen Sie den Port öffnen 80 Und 443 Aktualisieren Sie die System -Firewall -Regeln, um eingehende Pakete auf eingehende Pakete zu ermöglichen Http Und Https Verwenden Sie die folgenden Befehle.

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

4. Jetzt können Sie bestätigen, dass Ihr Nginx -Server mit der folgenden URL ausgeführt wird. Wenn Sie die Standard -Nginx -Webseite sehen, ist alles in Ordnung.

http: // server_domain_name_or_ip 
Nginx Standardseite

Schritt 2: Erstellen Sie ein yum lokales Repository

5. In diesem Schritt müssen Sie die erforderlichen Pakete zum Erstellen, Konfigurieren und Verwalten Ihres lokalen Repositorys installieren.

# yum installieren createepo yum-utils 

6. Erstellen Sie als Nächst.

# Mkdir -p/var/www/html/repos/Base, CentOSPLUS, Extras, Updates 

7. Dann benutze die Reposync Werkzeug zum Synchronisieren Centos Yum Repositorys zu den lokalen Verzeichnissen wie gezeigt.

# Reposync -g -l -d -m - -repoid = base -newest nur -download -metadata -download_path =/var/www/html/repos/ # reposync -g -l -d -m - repoid = centosplus -newest nur -download -metadata -download_path =/var/www/html/repos/ # reposync -g -l -d -m - -repoid = extras -Newest -Nur -Nur -Download- metadata -download_path =/var/www/html/repos/ # reposync -g -l -d -m - -repoid = updates -Newest -Nur -Nur -Download -Metadata -Download_Path =/var/www/html/ Repos/ 
Probenausgabe
Ladete Plugins: schnellste Mirror, Langpacks Ladespiegelgeschwindigkeiten von zwischengespeicherter Hostfile * Basis: Spiegel.Glasfaser.In * epel: Spiegel.xeonbd.com * extras: spiegel.Glasfaser.In * Updates: Spiegel.Glasfaser.in Base/7/x86_64/Gruppe | 891 KB 00:00:02 Keine Presto-Metadaten für die Basis verfügbar (1/9911): 389-DS-Base-Snmp-1.3.7.5-18.EL7.x86_64.Drehzahl | 163 KB 00:00:02 (2/9911): 389-DS-Base-Devel-1.3.7.5-18.EL7.x86_64.Drehzahl | 267 KB 00:00:02 (3/9911): Elektroferenz-2.2.2-39.EL7.I686.Drehzahl | 35 KB 00:00:00 (4/9911): Elektrische Betrüger-2.2.2-39.EL7.x86_64.Drehzahl | 35 KB 00:00:00 (5/9911): 389-DS-Base-Libs-1.3.7.5-18.EL7.x86_64.Drehzahl | 695 KB 00:00:04 (6/9911): GCONF2-Devel-3.2.6-8.EL7.I686.Drehzahl | 110 KB 00:00:00 (7/9911): GCONF2-DEVEL-3.2.6-8.EL7.x86_64.Drehzahl | 110 KB 00:00:00 (8/9911): GCONF2-3.2.6-8.EL7.I686.Drehzahl | 1.0 MB 00:00:06 

In den obigen Befehlen die Option:

  • -G - Ermöglicht das Entfernen von Paketen, bei denen die GPG -Signaturüberprüfung nach dem Download fehlschlägt.
  • -l - Ermöglicht Yum Plugin -Unterstützung.
  • -D - Ermöglicht das Löschen lokaler Pakete, die im Repository nicht mehr vorhanden sind.
  • -M - ermöglicht das Herunterladen von comps.xml Dateien.
  • --Repoid - Gibt die Repository -ID an.
  • --neuester nur - Sagen Sie Reposync, dass sie nur die neueste Version jedes Pakets in den Repos ziehen soll.
  • --Download-Metadaten - Ermöglicht das Herunterladen aller Nicht-Default-Metadaten.
  • --Download_Path - Gibt den Pfad zum Herunterladen von Paketen an.

8. Überprüfen Sie als Nächstes den Inhalt Ihrer lokalen Verzeichnisse, um sicherzustellen, dass alle Pakete lokal synchronisiert wurden.

# ls -l/var/www/html/repos/base/ # ls -l/var/www/html/repos/base/pakete/ # ls -l/var/www/html/repos/centosplus/ # ls - l/var/www/html/repos/centosplus/pakete/ # ls -l/var/www/html/repos/extras/ # ls -l/var/www/html/repos/extras/pakete/ # ls -l -l /var/www/html/repos/updates/ # ls -l/var/www/html/repos/updates/pakete/ 

9. Erstellen Sie nun eine neue Repodata für die lokalen Repositories, indem Sie die folgenden Befehle ausführen, wobei die Flagge -G wird verwendet, um die Paketgruppeninformationen mithilfe der angegebenen Aktualisierung zu aktualisieren .xml Datei.

# Createrepo -g Comps.xml/var/www/html/repos/base/ # createrepo -g comps.xml/var/www/html/repos/centosplus/ # createrepo -g comps.xml/var/www/html/repos/extras/ # createrepo -g comps.xml/var/www/html/repos/updates/ 

10. Erstellen Sie über einen Webbrowser einen Nginx -Server -Block, der auf das Stamm.

# vim/etc/nginx/conf.D/Repos.Conf 

Fügen Sie die folgende Konfigurations -OT -Datei hinzu Repos.Conf.

Server Listen 80; Server_Name Repos.prüfen.Labor; #Change -Test.Labor zu Ihrem realen Domain Root/var/www/html/repos; Ort / Indexindex.PHP -Index.HTML -Index.HTM; autoIndex auf; #Enable Listing von Directory Index 

Speichern Sie die Datei und schließen Sie sie.

11. Starten Sie dann Ihren Nginx -Server neu und sehen Sie sich die Repositorys in einem Webbrowser mit der folgenden URL an.

http: // repos.prüfen.Labor 
Sehen Sie sich lokale Yum -Repositories an

Schritt 3: Erstellen Sie einen Cron -Job, um Repositories zu synchronisieren und zu erstellen

12. Fügen Sie als Nächst.

# vim /etc /cron.tägliche/update-localrepos 

Fügen Sie diese Befehle in das Skript hinzu.

#!/bin/bash ## Geben Sie alle lokalen Repositories in einer einzelnen Variablen local_repos = ”Base CentOSPLUS extras updates” ## A Schleife zum Aufbau von jeweils einzeln für Repo in $ local_repos an; reposync -g -l -d -m - -repoid = $ repo -newest nur -download -metadata -download_path =/var/www/html/repos/createrepo -g comps.xml/var/www/html/repos/$ repo/fertig 

Speichern Sie das Skript und schließen Sie es und legen Sie die entsprechenden Berechtigungen darauf fest.

# Chmod 755 /etc /cron.tägliche/update-localrepos 

Schritt 4: Setzen Sie das lokale Yum -Repository auf Client -Maschinen ein

13. Jetzt auf deinem Centos Client -Maschinen, fügen Sie Ihre lokalen Repos zur YUM -Konfiguration hinzu.

# vim /etc /yum.Repos.D/Lokale Repos.Repo 

Kopieren und fügen Sie die folgende Konfiguration in die Datei ein und fügen Sie sie ein Lokale Repos.Repo (Bei Bedarf Änderungen vornehmen).

[Lokalbasis] name = Centos Base BaseURL = http: // repos.prüfen.lab/base/gpgcheck = 0 enabled = 1 [Lokal-centosplus] name = CentOS CentOSPLUS BASEURL = http: // repos.prüfen.Lab/CentOSPLUS/gpgcheck = 0 enabled = 1 [Local-Extras] name = Centos extras BaseUrl = http: // repos.prüfen.lab/extras/gpgcheck = 0 enabled = 1 [Local-Updates] name = centos updates baseUrl = http: // repos.prüfen.Labor/ Updates/ gpgcheck = 0 aktiviert = 1 

Speichern Sie die Datei und verwenden Sie Ihre lokalen Yum -Spiegel.

14. Führen Sie als nächstes den folgenden Befehl aus, um Ihre lokalen Repos in der Liste der verfügbaren Yum -Repos auf den Client -Maschinen anzuzeigen.

# Yum Repolist oder # Yum Repolist alle 
Sehen Sie sich lokale Yum -Repositorys auf dem Kunden an

Das ist alles! In diesem Artikel haben wir erklärt. Wir hoffen, dass Sie diesen Leitfaden nützlich gefunden haben. Wenn Sie Fragen oder andere Gedanken zum Teilen haben, verwenden Sie das folgende Kommentarformular.