Créer un dépôt de paquets Yum

Dépôt de paquets YumDans mon précédent article, nous avons vu la construction de paquets RPM sous CentOS. À partir du moment où l’on souhaite distribuer ces paquets à un grand nombre de machines et en gérer la maintenance, il devient indispensable de créer son propre dépôt de paquets pour Yum.

En temps normal, je me sers des dépôts de paquets tiers existants comme EPEL, Nux-Dextop ou Webtatic. Cependant, il peut arriver qu’un paquet un peu exotique ne soit disponible dans aucun de ces dépôts. Dans d’autres cas, il m’arrive aussi de devoir modifier un paquet pour l’adapter à mes besoins. Pour tous ces cas de figure, il est bien plus pratique de disposer de son propre dépôt de paquets.

Dans un premier temps, récupérer l’utilitaire de création d’archive.

# yum install createrepo

Créer une arborescence d’archive vide.

$ mkdir -p ~/repos/centos/7/x86_64/RPMS

Il nous faudra également un emplacement pour les paquets source.

$ mkdir repos/centos/7/SRPMS

Une fois qu’on a rangé les paquets RPMS et SRPMS à l’endroit approprié, on va construire les métadonnées.

$ cd repos/centos/7/x86_64
$ createrepo .

Si tout se passe comme prévu, on obtient un répertoire repodata au même niveau que le répertoire RPMS.

$ tree -d ~/repos
/home/kikinovak/repos
└── centos
    └── 7
        ├── SRPMS
        └── x86_64
            ├── repodata
            └── RPMS

Je copie l’arborescence ~/repos/centos vers l’hébergement web /var/www/microlinux-centos/html/ visible à l’adresse https://centos.microlinux.fr. Lors de la construction des paquets, j’ai également exporté la clé GPG publique pour signer mes paquets vers un fichier RPM-GPG-KEY-microlinux. Je copie ce fichier à la racine de mon hébergement, plus exactement vers /var/www/microlinux-centos/html/centos/. En passant, je personnalise le fichier .htaccess pour peaufiner l’affichage des fichiers du dépôt.

Dépôt de paquets Yum

Sur un poste client, j’importe tout d’abord la clé GPG du dépôt.

# rpm --import \
https://centos.microlinux.fr/centos/RPM-GPG-KEY-microlinux

Ensuite, j’édite un fichier /etc/yum.repos.d/microlinux.repo comme ceci.

[microlinux]
enabled=1
priority=1
name=Microlinux Enterprise Packages $releasever - $basearch
baseurl=https://centos.microlinux.fr/centos/$releasever/$basearch
gpgcheck=1

À partir de là, je peux accéder aux paquets de mon dépôt avec le gestionnaire de paquets yum.

Ce contenu a été publié dans CentOS, Documentation Microlinux, avec comme mot(s)-clé(s) , , . Vous pouvez le mettre en favoris avec ce permalien.

Une réponse à Créer un dépôt de paquets Yum

  1. Ping : Créer un dépôt de paquets Yum - My Tiny Tools

Laisser un commentaire

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

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.