MODOP – Création d’un Serveur de Repository Centos7

Le but

Centraliser les dépôts Centos7 sur une seule machine et mettre à disposition les dépôts à l’ensemble des machines de l’infrastructure.

Spécification de la machine virtuelle

  • IP : 192.168.1.121 (static)
  • Hostname : repo.house.cpb
  • Disque Sytème : 10Go
  • Disque Repository : 40Go
  • RAM : 2Go
  • CPU : 2 vCPU
  • User : repo

Création de la machine virtuelle

Faire une installation Minimal

Désactiver SeLinux

[root@repository chris]# vi /etc/selinux/config
SELINUX=disabled

Reboot la machine .

Désactiver l’IPV6

[root@repo ~]# vi /etc/sysctl.conf
# désactivation de ipv6 pour toutes les interfaces
net.ipv6.conf.all.disable_ipv6 = 1
# désactivation de l’auto configuration pour toutes les interfaces
net.ipv6.conf.all.autoconf = 0
# désactivation de ipv6 pour les nouvelles interfaces (ex:si ajout de carte réseau)
net.ipv6.conf.default.disable_ipv6 = 1
# désactivation de l’auto configuration pour les nouvelles interfaces
net.ipv6.conf.default.autoconf = 0
[root@repo ~]# sysctl -p

Mise à jour de la machine Repository

[root@repo ~]# yum update && yum upgrade

Installation des paquets nécessaires

[root@repo ~]# yum install yum-utils createrepo
[root@repo ~]# ls -al /etc/yum.repos.d/

Check les états des dépôts

[root@repo ~]# yum repolist

Préparer le disque repo /dev/sdb

[root@repo ~]# fdisk /dev/sdb


Command (m for help): p


Command (m for help): n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
Partition number (1-4, default 1): « ENTER »
First sector (2048-83886079, default 2048): « ENTER »
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-83886079, default 83886079): « ENTER »
Using default value 83886079
Partition 1 of type Linux and of size 40 GiB is set



Command (m for help): p


Command (m for help): w

Formater la nouvelle Partition /dev/sdb1

[root@repo ~]# mkfs.ext3 /dev/sdb1

Montage du disque /dev/sdb1

[root@repo ~]# mkdir /repo
[root@repo ~]# echo "/dev/sdb1 /repo ext3 defaults 0 0" >> /etc/fstab
[root@repo ~]# mount -a
[root@repo ~]# df -h

Création du dépôt local sur la machine

[root@repo ~]# mkdir /repo/CHRIS

Récupération des repository Centos7 « extra » sur notre Serveur repository local.

[root@repo ~]# reposync --gpgcheck -l --repoid=extras --download_path=/repo/CHRIS/
[root@repo ~]# ls /repo/CHRIS/extras/Packages/

Les packages Centos7 « extra » sont désormais disponible sur /CHRIS-repo/

Récupération des dépots « base » de centos7

[root@repo ~]# reposync --gpgcheck -l --repoid=base --download_path=/repo/CHRIS/

Cela va durer un peu

[root@repo ~]# ls /repo/CHRIS/base/Packages/


Les paquets « base » Centos7 sont désormais disponible sur notre serveur de repository.

Taille du repository pour les paquets «base » et « extra » est de 10Go

Création de notre repository « extra » CHRIS

[root@repo ~]# createrepo /repo/CHRIS/extras/

Création de notre repository « base » CHRIS

[root@repo ~]# createrepo /repo/CHRIS/base/

Installer Apache

[root@repo ~]# yum install httpd
[root@repo ~]# systemctl enable httpd && systemctl restart httpd

[root@repo ~]# firewall-cmd --zone=public --add-service=http –permanent && firewall-cmd --reload

Configurer CHRIS-repo site

[root@repository yum.repos.d]# cd /etc/httpd/conf.d/
[root@repository conf.d]# rm –f *.conf
[root@repository conf.d]# vi CHRIS-repo.conf
Alias / /repo/CHRIS/
<Directory "/repo/CHRIS">
Options Indexes
AllowOverride AuthConfig Options
Order allow,deny
Allow from all
Require all granted
</Directory>
[root@repo ~]# systemctl restart httpd


Création Fichier Dépôt CHRIS-repo

[root@repo conf.d]# cd /etc/yum.repos.d/
[root@repo yum.repos.d]# mkdir old-repo
[root@repo yum.repos.d]# mv *.repo old-repo
[root@repo yum.repos.d]# vi CHRIS-Base.repo

[base]
name=CHRIS-CentOS7-base
baseurl=http://repository.house.cpb/base
[extras]
name=CHRIS-Centos7-extras
baseurl=http://repository.house.cpb/extras
[root@repo yum.repos.d]# echo "192.168.1.121 repository.house.cpb" >> /etc/hosts

Mise à jour de yum

[root@repo yum.repos.d]# yum update
[root@repo yum.repos.d]# yum repolist

Test d’installation de nmap via notre serveur de repository

[root@repo yum.repos.d]# yum search nmap

Le paquet est bien présent dans la base de notre serveur repository

[root@repo yum.repos.d]# yum install nmap

L’installation est opérationnelle via le serveur repository.house.cpb

Views: 13

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *