Zoeken op website

Hoe u een netwerkrepository instelt om pakketten te installeren of bij te werken - Deel 11


Het installeren, bijwerken en verwijderen (indien nodig) van geïnstalleerde programma's zijn belangrijke verantwoordelijkheden in het dagelijkse leven van een systeembeheerder. Wanneer een machine met internet is verbonden, kunnen deze taken eenvoudig worden uitgevoerd met behulp van een pakketbeheersysteem zoals aptitude (of apt-get), yum of zypper, afhankelijk van de door u gekozen distributie, zoals uitgelegd in Deel 9 – Linux-pakketbeheer van de LFCE (Linux Foundation Certified Engineer ) serie. U kunt ook zelfstandige .deb- of .rpm-bestanden downloaden en deze installeren met respectievelijk dpkg of rpm.

Introductie van het Linux Foundation-certificeringsprogramma

Wanneer een machine echter geen toegang heeft tot het world wide web, zijn andere methoden nodig. Waarom zou iemand dat willen doen? De redenen variëren van het besparen van internetbandbreedte (waardoor verschillende gelijktijdige verbindingen met de buitenwereld worden vermeden) tot het beveiligen van pakketten die lokaal vanaf de bron zijn samengesteld, en de mogelijkheid om pakketten aan te bieden die om juridische redenen (bijvoorbeeld software die in sommige landen beperkt is) niet kunnen worden aangeboden. opgenomen in officiële repositories.

Dat is precies waar netwerkopslagplaatsen een rol gaan spelen, wat het centrale onderwerp van dit artikel is.

Onze testomgeving
Network Repository Server:	CentOS 7 [enp0s3: 192.168.0.17] - dev1
Client Machine:			CentOS 6.6 [eth0: 192.168.0.18] - dev2

Een netwerkrepositoryserver instellen op CentOS 7

Als eerste stap zullen we de installatie en configuratie van een CentOS 7 box als repositoryserver [IP-adres 192.168.0.17] en een CentOS-box afhandelen. sterke> 6.6 machine als klant. De opzet voor openSUSE is vrijwel identiek.

Voor CentOS 7 volgt u de onderstaande artikelen waarin stapsgewijze instructies worden gegeven voor de installatie van CentOS 7 en hoe u een statisch IP-adres instelt.

  1. Installatie van CentOS 7.0 met screenshots
  2. Hoe u een statisch netwerk-IP-adres kunt configureren op CentOS 7

Wat Ubuntu betreft, er staat een geweldig artikel op deze site waarin stap voor stap wordt uitgelegd hoe u uw eigen privérepository kunt opzetten.

  1. Stel lokale opslagplaatsen in met ‘apt-mirror’ in Ubuntu

Onze eerste keuze is de manier waarop clients toegang krijgen tot de repositoryserver. FTP en HTTP worden het meest gebruikt. We kiezen voor het laatste omdat de Apache-installatie werd behandeld in Deel 1 – Apache van deze LFCE-serie installeren. Hierdoor kunnen we de pakketlijst ook weergeven via een webbrowser.

Vervolgens moeten we mappen maken om de .rpm-pakketten op te slaan. We zullen dienovereenkomstig submappen aanmaken binnen /var/www/html/repos. Voor ons gemak willen we misschien ook andere submappen maken om pakketten te hosten voor verschillende versies van elke distributie (uiteraard kunnen we later nog steeds zoveel mappen toevoegen als nodig is) en zelfs verschillende architecturen.

Het opzetten van de opslagplaats

Een belangrijk ding om rekening mee te houden bij het opzetten van uw eigen repository is dat u een aanzienlijke hoeveelheid beschikbare schijfruimte nodig heeft (~20 GB). Als je dat niet doet, wijzig dan de grootte van het bestandssysteem waar je de inhoud van de repository wilt opslaan, of nog beter, voeg een extra speciaal opslagapparaat toe om de repository te hosten.

Dat gezegd hebbende, zullen we beginnen met het maken van de mappen die we nodig hebben om de repository te hosten:

mkdir -p /var/www/html/repos/centos/6/6

Nadat we de mapstructuur voor onze repositoryserver hebben aangemaakt, zullen we in /var/www/html/repos/centos/6/6 de database initialiseren die de pakketten en hun corresponderende afhankelijkheden bijhoudt met behulp van createrepo.

Installeer createrepo als je dat nog niet hebt gedaan:

yum update && yum install createrepo

Initialiseer vervolgens de database,

createrepo /var/www/html/repos/centos/6/6

Het bijwerken van de opslagplaats

Ervan uitgaande dat de repositoryserver toegang heeft tot internet, zullen we een online repository ophalen om de nieuwste updates van pakketten op te halen. Als dat niet het geval is, kunt u nog steeds de volledige inhoud van de map Packages kopiëren van een installatie-dvd van CentOS 6.6.

In deze tutorial gaan we uit van het eerste geval. Om onze downloadsnelheid te optimaliseren, kiezen we voor een CentOS 6.6 mirror van een locatie bij ons in de buurt. Ga naar CentOS download mirror en kies degene die dichter bij uw locatie is (Argentinië in mijn geval):

Navigeer vervolgens naar de map os binnen de gemarkeerde link en kies vervolgens de juiste architectuur. Eenmaal daar kopieert u de link in de adresbalk en downloadt u de inhoud naar de speciale map op de repositoryserver:

rsync -avz rsync://centos.ar.host-engine.com/6.6/os/x86_64/ /var/www/html/repos/centos/6/6/ 

In het geval dat de gekozen repository om wat voor reden dan ook offline blijkt te zijn, ga dan terug en kies een andere. Geen probleem.

Dit is het moment waarop u misschien wilt ontspannen en misschien een aflevering van uw favoriete tv-programma wilt bekijken, omdat het spiegelen van de online repository een tijdje kan duren.

Zodra het downloaden is voltooid, kunt u het gebruik van schijfruimte verifiëren met:

du -sch /var/www/html/repos/centos/6/6/*

Werk ten slotte de database van de repository bij.

createrepo --update /var/www/html/repos/centos/6/6

Mogelijk wilt u ook uw webbrowser starten en naar de map repos/centos/6/6 navigeren om te verifiëren dat u de inhoud kunt zien:

En u bent klaar om aan de slag te gaan: nu is het tijd om de client te configureren.