Jak skonfigurować lokalne repozytorium HTTP Yum na Centos 7

Jak skonfigurować lokalne repozytorium HTTP Yum na Centos 7

Repozytorium oprogramowania („Repo„Krótko mówiąc) to centralna lokalizacja przechowywania plików do przechowywania i utrzymywania pakietów oprogramowania, z których użytkownicy mogą pobierać pakiety i zainstalować je na swoich komputerach.

Repozytoria są często przechowywane na serwerach w sieci, na przykład w Internecie, do którego można uzyskać dostęp do wielu użytkowników. Możesz jednak utworzyć i skonfigurować lokalne repozytorium na komputerze i uzyskać dostęp do niego jako pojedynczy użytkownik lub umożliwić dostęp do innych maszyn na swoim Lan (Sieć lokalna).

Jedną zaletą konfigurowania lokalnego repozytorium jest to, że nie potrzebujesz połączenia internetowego do instalacji pakietów oprogramowania.

Yum (Modified Yellowdog Uptater) to szeroko używane narzędzie do zarządzania pakietami dla RPM (Menedżer pakietów Redhat) na podstawie systemów Linux, co ułatwia instalacja oprogramowania Red Hat/Centos Linux.

W tym artykule wyjaśnimy, jak skonfigurować lokalny Mniam repozytorium Http (Nginx) Serwer WWW na Centos 7 VPS a także pokaż, jak znaleźć i zainstalować pakiety oprogramowania na kliencie Centos 7 maszyny.

Nasze środowisko testowe

Serwer repozytorium Yum HTTP: Centos 7 [192.168.0.100] Maszyna klienta: Centos 7 [192.168.0.101] 

Krok 1: Zainstaluj serwer WWW Nginx

1. Pierwszy rozpocznij od zainstalowania serwera Nginx HTTP z repozytorium EPEL za pomocą Menedżera pakietu Yum w następujący sposób.

# Yum Instal Epel-Release # Yum Instal Nginx 

2. Po zainstalowaniu serwera WWW Nginx możesz go uruchomić po raz pierwszy i umożliwić automatyczne uruchomienie w systemie.

 # Systemctl start nginx # Systemctl Włącz Nginx # Systemctl Status Nginx 

3. Następnie musisz otworzyć port 80 I 443 Aby umożliwić ruch internetowy do usługi Nginx, zaktualizuj zasady systemu zapory, aby umożliwić pakiety przychodzące Http I Https Korzystanie z poniższych poleceń.

# Firewall-CMD --Zone = public --permanent --add-service = http # firewall-cmd --zone = public --Permanent --add-service = https # firewalll-cmd--relad 

4. Teraz możesz potwierdzić, że Twój serwer Nginx jest uruchomiony, używając następującego adresu URL; Jeśli zobaczysz domyślną stronę internetową Nginx, wszystko jest w porządku.

http: // server_domain_name_or_ip 
Domyślna strona Nginx

Krok 2: Utwórz lokalne repozytorium Yum

5. W tym etapie musisz zainstalować wymagane pakiety do tworzenia, konfigurowania i zarządzania lokalnym repozytorium.

# mniam instaluj Createrepo Yum-Utils 

6. Następnie utwórz niezbędne katalogi (repozytoria Yum), które będą przechowywać pakiety i wszelkie powiązane informacje.

# mkdir -p/var/www/html/repos/baza, centosplus, dodatki, aktualizacje 

7. Następnie użyj Reposync narzędzie do synchronizacji Centos Yum repozytoria lokalnych katalogów, jak pokazano.

# reposync -g -l -d -m --repoid = base --Neest -toly - -Download -Metadata - -Download_Path =/var/www/html/repos/ # reposync -g -l -d -m - Repoid = centOplus --NeWest -toly - -Download -Metadata - -Download_Path =/var/www/html/repos/ # reposync -g -l -d -m --repoid = extra --Newest -toy - -Download- metadata - -download_path =/var/www/html/repos/ # reposync -g -l -d -m --repoid = aktualizacje --Newest -ly - -Download -Metadata - -download_path =/var/www/html//html/ repozytorium/ 
Przykładowy wyjście
Załadowane wtyczki: FastestMirror, Langpacks Ładowanie prędkości lustra z buforowanego pliku hosta * Baza: Lustra.Włókno.w * epel: lustro.xeonbd.com * dodatki: lustra.Włókno.W * aktualizacje: Mirrors.Włókno.w bazie/7/x86_64/grupa | 891 KB 00:00:02 Brak metadanych Presto dostępnych dla bazy (1/9911): 389-DS-Base-SNMP-1.3.7.5-18.El7.x86_64.RPM | 163 KB 00:00:02 (2/9911): 389-DS-base-devel-1.3.7.5-18.El7.x86_64.RPM | 267 KB 00:00:02 (3/9911): Electricence-2.2.2-39.El7.i686.RPM | 35 KB 00:00:00 (4/9911): Electricence-2.2.2-39.El7.x86_64.RPM | 35 KB 00:00:00 (5/9911): 389-DS-base-libs-1.3.7.5-18.El7.x86_64.RPM | 695 KB 00:00:04 (6/9911): GCONF2-DEVEL-3.2.6-8.El7.i686.RPM | 110 KB 00:00:00 (7/9911): GCONF2-DEVEL-3.2.6-8.El7.x86_64.RPM | 110 KB 00:00:00 (8/9911): GCONF2-3.2.6-8.El7.i686.RPM | 1.0 MB 00:00:06 

W powyższych poleceniach opcja:

  • -G - umożliwia usunięcie pakietów, które nieudają sprawdzania podpisu GPG po pobraniu.
  • -L - umożliwia obsługę wtyczek Yum.
  • -D - umożliwia usunięcie pakietów lokalnych, które nie są już obecne w repozytorium.
  • -M - umożliwia pobieranie Comps.XML akta.
  • --repoid - Określa identyfikator repozytorium.
  • --najnowsza tylko - Powiedz Reposync, aby wyciągnąć tylko najnowszą wersję każdego pakietu w Repos.
  • --Pobierz-Metadata - umożliwia pobieranie wszystkich metadanych bez default.
  • --pobierz_path - Określa ścieżkę do pobierania pakietów.

8. Następnie sprawdź zawartość lokalnych katalogów, aby upewnić się, że wszystkie pakiety zostały zsynchronizowane lokalnie.

# ls -l/var/www/html/repos/base/ # ls -l/var/www/html/repos/base/pakiety/ # ls -l/var/www/html/repos/centosplus/ # ls - l/var/www/html/repos/centosplus/pakiety/ # ls -l/var/www/html/repos/extras/ # ls -l/var/www/html/repos/extras/pakiety/ # ls -l /var/www/html/repos/aktualizacje/ # ls -l/var/www/html/repos/aktualizacje/pakiety/ 

9. Teraz utwórz nową repodatę dla lokalnych repozytoriów, uruchamiając następujące polecenia, w których flaga -G służy do aktualizacji informacji o grupie pakietów za pomocą określonych .XML plik.

# Crerererepo -g Comps.xml/var/www/html/repos/base/ # createrepo -g comps.xml/var/www/html/repos/centosplus/ # crereepo -g comps.xml/var/www/html/repos/extras/ # createrepo -g comps.xml/var/www/html/repos/aktualizacje/ 

10. Aby umożliwić przeglądanie w nich repozytoriów i pakietów, za pośrednictwem przeglądarki internetowej, utwórz blok serwera Nginx, który wskazuje na pierwiastek repozytoriów.

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

Dodaj następującą konfigurację pliku OT repozytorium.conf.

serwer Słuchaj 80; Server_name Repos.test.laboratorium; #Test.laboratorium do twojej prawdziwej domeny root/var/www/html/repos; lokalizacja / indeks indeksu.Wskaźnik PHP.Indeks HTML.HTM; autoindex on; #Enable Listing of Directory Index 

Zapisz plik i zamknij go.

11. Następnie uruchom ponownie serwer Nginx i wyświetl repozytoria z przeglądarki internetowej za pomocą następującego adresu URL.

http: // repos.test.laboratorium 
Zobacz lokalne repozytoria mniam

Krok 3: Utwórz zadanie CRON, aby zsynchronizować i tworzyć repozytoria

12. Następnie dodaj zadanie cron, które automatycznie zsynchronizuje lokalne repozytor.

# vim /etc /cron.Codziennie/aktualizacja-Localrepos 

Dodaj te polecenia w skrypcie.

#!/bin/bash ## Określ wszystkie lokalne repozytoria w jednej zmiennej local_repos = ”aktualizacje dodatków Base CentoSplus” ## A Pętla do aktualizacji repozytorium dla repozytorium w $ local_repos; DO reposync -g -l -d -m --repoid = $ repo --Newest -toly - -Download -Metadata - -Download_Path =/var/www/html/repos/crererepo -g comps.xml/var/www/html/repos/$ repo/gotowe 

Zapisz skrypt i zamknij go i ustaw na nim odpowiednie uprawnienia.

# chmod 755 /etc /cron.Codziennie/aktualizacja-Localrepos 

Krok 4: Ustaw lokalne repozytorium Yum na maszynach klientów

13. Teraz na twoim Centos Maszyny klientów, dodaj lokalne repozytorium do konfiguracji Yum.

# vim /etc /yum.repozytorium.D/Local-Repos.Repo 

Skopiuj i wklej poniższą konfigurację w pliku Lokalne powtórzenia.Repo (W razie potrzeby dokonaj zmian).

[Lokalna baza] Nazwa = Centos Base Baseurl = http: // Repos.test.lab/base/gpgCheck = 0 włączony = 1 [local-centoSplus] nazwa = centos centosplus baseurl = http: // repos.test.lab/centosplus/gpgCheck = 0 włączony = 1 [local-extras] Nazwa = Centos Extras baseurl = http: // repos.test.lab/extras/gpgCheck = 0 włączony = 1 [local-updates] nazwa = Centos Aktualizacje baseurl = http: // repozytorium.test.lab/ Aktualizacje/ gpgcheck = 0 włączone = 1 

Zapisz plik i zacznij używać lokalnych luster Yum.

14. Następnie uruchom następujące polecenie, aby wyświetlić lokalne repozytor.

# mniam repolist lub # mniam repolist 
Zobacz lokalne repozytoria mniam na kliencie

To wszystko! W tym artykule wyjaśniliśmy, jak skonfigurować lokalne repozytorium Yum na Centos 7. Mamy nadzieję, że ten przewodnik uznałeś za przydatny. Jeśli masz jakieś pytania lub inne przemyślenia, użyj poniższego formularza komentarza.