Wenn Ihr Red Hat-Server nicht mit den offiziellen RHN-Repositorys verbunden ist, müssen Sie Ihr eigenes privates Repository konfigurieren, das Sie später verwenden können, um Pakete zu installieren. Das Verfahren zum Erstellen eines Red Hat Linux-Repositorys ist eine ziemlich einfache Aufgabe. In diesem Artikel zeigen wir Ihnen, wie Sie ein lokales Red Hat-Datei-Repository sowie ein Remote-HTTP-Repository erstellen.
In diesem Tutorial lernen Sie:
- So verwenden Sie die offizielle Red Hat DVD als Repository
- So erstellen Sie ein lokales Red Hat-Datei-Repository
- So erstellen Sie ein Remote-HTTP-Red-Hat-Repository
![](https://m.unixlinux.online/article/uploadfiles/202204/2022042507230080.png)
Kategorie | Anforderungen, Konventionen oder verwendete Softwareversion |
---|---|
System | Red Hat |
Software | Repository erstellen |
Andere | Privilegierter Zugriff auf Ihr Linux-System als root oder über sudo Befehl. |
Konventionen | # – erfordert, dass bestimmte Linux-Befehle mit Root-Rechten ausgeführt werden, entweder direkt als Root-Benutzer oder durch Verwendung von sudo Befehl$ – erfordert, dass bestimmte Linux-Befehle als normaler, nicht privilegierter Benutzer ausgeführt werden |
Verwenden der offiziellen Red Hat DVD als Repository
Nach der Standardinstallation und ohne Registrierung Ihres Servers bei den offiziellen RHN-Repositorys haben Sie keine Chance, neue Pakete aus dem Red Hat-Repository zu installieren, da Ihre Repository-Liste 0 Einträge anzeigt:
# dnf repolist Loaded plugins: product-id, refresh-packagekit, security, subscription-manager This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register. repolist: 0
An dieser Stelle ist es am einfachsten, Ihre Red Hat Installations-DVD als lokales Repository anzuhängen. Stellen Sie dazu zunächst sicher, dass Ihre RHEL-DVD gemountet ist:
# mount | grep iso9660 /dev/sr0 on /media/RHEL_6.4 x86_64 Disc 1 type iso9660 (ro,nosuid,nodev,uhelper=udisks,uid=500,gid=500,iocharset=utf8,mode=0400,dmode=0500)
Das Verzeichnis, das uns im Moment am meisten interessiert, ist /media/RHEL_6.4 x86_64 Disc 1/repodata
da dies das Verzeichnis ist, das Informationen über alle Pakete enthält, die auf dieser bestimmten DVD gefunden wurden.
Als nächstes müssen wir unser neues Repository definieren, das auf /media/RHEL_6.4 x86_64 Disc 1/
verweist indem Sie einen Repository-Eintrag in /etc/yum.repos.d/
erstellen . Erstellen Sie eine neue Datei namens:/etc/yum.repos.d/RHEL_6.4_Disc.repo
Verwenden Sie den vi-Editor und fügen Sie den folgenden Text ein:
[RHEL_6.4_Disc] name=RHEL_6.4_x86_64_Disc baseurl="file:///media/RHEL_6.4 x86_64 Disc 1/" gpgcheck=0
Sobald die Datei erstellt wurde, sollte Ihr lokales Red Hat DVD-Repository einsatzbereit sein:
# dnf repolist Loaded plugins: product-id, refresh-packagekit, security, subscription-manager This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register. repo id repo name status RHEL_6.4_Disc RHEL_6.4_x86_64_Disc 3,648 repolist: 3,648
Ein lokales Red Hat-Datei-Repository erstellen
Normalerweise reicht ein Red Hat DVD-Repository für den Einstieg aus; Der einzige Nachteil ist jedoch, dass Sie Ihr Repository in keiner Weise ändern und daher keine neuen/aktualisierten Pakete darin einfügen können. Um dieses Problem zu lösen, können wir ein lokales Datei-Repository erstellen, das sich irgendwo im Dateisystem befindet. Um uns bei diesem Plan zu helfen, werden wir ein createrepo
verwenden Dienstprogramm.
- Beginnen Sie mit der Installation von
createrepo
auf Ihrem System, falls es noch nicht installiert ist.# dnf install createrepo
- Zu diesem Zeitpunkt sind wir bereit, unser eigenes lokales Red Hat-Datei-Repository zu erstellen. Erstellen Sie ein neues Verzeichnis namens
/rhel_repo
:# mkdir /rhel_repo
- Kopieren Sie als Nächstes alle Pakete von Ihrer gemounteten RHEL-DVD in Ihr neues Verzeichnis:
# cp /media/RHEL_6.4\ x86_64\ Disc\ 1/Packages/* /rhel_repo/
- Wenn der Kopiervorgang abgeschlossen ist, führen Sie den Befehl createrepo mit einem einzigen Argument aus, das der Name Ihres neuen lokalen Repository-Verzeichnisses ist:
# createrepo /rhel_repo/ Spawning worker 0 with 3648 pkgs Workers Finished Gathering worker results Saving Primary metadata Saving file lists metadata Saving other metadata Generating sqlite DBs Sqlite DBs complete
- Als letzten Schritt erstellen wir einen neuen Yum-Repository-Eintrag, indem wir diese Datei bearbeiten:
# vi /etc/yum.repos.d/rhel_repo.repo
Und diesen Text einfügen:
[rhel_repo] name=RHEL_6.4_x86_64_Local baseurl="file:///rhel_repo/" gpgcheck=0
- Ihr neues Repository sollte jetzt zugänglich sein:
# dnf repolist Loaded plugins: product-id, refresh-packagekit, security, subscription-manager This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register. rhel_repo | 2.9 kB 00:00 ... rhel_repo/primary_db | 367 kB 00:00 ... repo id repo name status RHEL_6.4_Disc RHEL_6.4_x86_64_Disc 3,648 rhel_repo RHEL_6.4_x86_64_Local 3,648
Erstellen eines Remote-HTTP-Red-Hat-Repositorys
Wenn Sie mehrere Red Hat-Server haben, möchten Sie vielleicht ein einziges Red Hat-Repository erstellen, auf das alle anderen Server im Netzwerk zugreifen können. Dazu benötigen Sie den Apache-Webserver. Wenn Sie Hilfe bei der Einrichtung von Apache benötigen, sehen Sie sich unseren Leitfaden zur Installation von Apache auf RHEL an.
Um Ihr neues Repository über http zugänglich zu machen, konfigurieren Sie Ihren Apache mit /rhel_repo/
Verzeichnis, das im vorherigen Abschnitt erstellt wurde, als Dokumentstammverzeichnis oder kopieren Sie einfach das gesamte Verzeichnis nach:/var/www/html/
(Standard-Dokumentstammverzeichnis).
- Erstellen Sie zunächst einen neuen Yum-Repository-Eintrag auf Ihrem Client-System, indem Sie eine neue Repo-Konfigurationsdatei erstellen:
# vi /etc/yum.repos.d/rhel_http_repo.repo
mit folgendem Inhalt, wobei der Host eine IP-Adresse oder ein Hostname Ihres Red Hat-Repository-Servers ist:
[rhel_repo_http] name=RHEL_6.4_x86_64_HTTP baseurl="http://myhost/rhel_repo/" gpgcheck=0
- Bestätigen Sie die Korrektheit Ihres neuen Repositorys, indem Sie
dnf repolist
ausführen Befehl.# dnf repolist Loaded plugins: product-id, refresh-packagekit, security, subscription-manager This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register. repo id repo name status rhel_repo_http RHEL_6.4_x86_64_HTTP 3,648 repolist: 3,648
Abschlussgedanken
Durch das Erstellen Ihres eigenen Paket-Repositorys erhalten Sie mehr Optionen zum Verwalten von Paketen auf Ihrem Red Hat-System, sogar ohne bezahltes RHN-Abonnement. Wenn Sie ein Remote-HTTP-Red-Hat-Repository verwenden, möchten Sie vielleicht auch GPGCHECK als Teil Ihres Repositorys konfigurieren, um sicherzustellen, dass keine Pakete vor ihrer Installation manipuliert wurden.