Recherche de site Web

Comment faire pour créer un référentiel HTTP local Yum/DNF sur RHEL 8


Un référentiel de logiciels ou « repo » est un emplacement central pour la conservation et la maintenance des packages logiciels RPM pour la distribution Linux Redhat, à partir duquel les utilisateurs peuvent télécharger et installer des packages sur leurs serveurs Linux.

Les dépôts sont généralement stockés sur un réseau public, accessible par plusieurs utilisateurs sur Internet. Cependant, vous pouvez créer votre propre référentiel local sur votre serveur et y accéder en tant qu’utilisateur unique ou autoriser l’accès à d’autres machines sur votre réseau local à l’aide d’un serveur Web HTTP.

L’avantage de la création d’un référentiel local est que vous n’avez pas besoin d’une connexion Internet pour installer des packages logiciels ou des mises à jour.

YUM (Yellowdog Updater Modified) ou DNF (Dandified YUM) est un utilitaire de gestion de paquets logiciels largement utilisé pour les systèmes Linux basés sur RPM (RedHat Package Manager), qui facilite l’installation de logiciels sur Red Hat/CentOS Linux.

Dans cet article, nous allons vous expliquer comment configurer un dépôt local YUM/DNF sur RHEL 8 à l’aide du DVD d’installation ou du fichier ISO. Nous vous montrerons également comment trouver et installer des packages logiciels sur des machines RHEL 8 clientes à l’aide du serveur HTTP Nginx.

Notre environnement de test

Local Repository Server: RHEL 8 [192.168.0.106]
Local Client Machine: RHEL 8 [192.168.0.200]

Étape 1 : Installer Nginx Web Server

1. Tout d’abord, installez le serveur HTTP Nginx à l’aide du gestionnaire de paquets DNF comme suit.

# dnf install nginx

2. Une fois Nginx installé, vous pouvez démarrer, activer le service pour qu’il démarre automatiquement au démarrage et vérifier l’état à l’aide des commandes suivantes.

# systemctl start nginx
systemctl enable nginx
systemctl status nginx

3. Ensuite, vous devez ouvrir les ports Nginx 80 et 443 sur votre pare-feu.

# firewall-cmd --zone=public --permanent --add-service=http
firewall-cmd --zone=public --permanent --add-service=https
firewall-cmd --reload

4. Vous pouvez maintenant vérifier que votre serveur Nginx est opérationnel en accédant à l’URL suivante sur votre navigateur Web, une page Web Nginx par défaut s’affichera.

http://SERVER_DOMAIN_NAME_OR_IP

Étape 2 : Montage du fichier DVD/ISO d’installation de RHEL 8

5. Créez un point de montage de référentiel local sous le répertoire racine du document Nginx /var/www/html/ et montez l’image ISO du DVD RHEL 8 téléchargée dans le répertoire /mnt.

# mkdir /var/www/html/local_repo
mount -o loop rhel-8.0-x86_64-dvd.iso /mnt  [Mount Download ISO File]
mount /dev/cdrom /mnt                       [Mount DVD ISO File from DVD ROM]

6. Ensuite, copiez les fichiers ISO localement dans le répertoire /var/www/html/local_repo et vérifiez le contenu à l’aide de la commande ls.

# cd /mnt
tar cvf - . | (cd /var/www/html/local_repo/; tar xvf -)
ls -l /var/www/html/local_repo/

Étape 3 : Configuration du référentiel local

7. Il est maintenant temps de configurer le référentiel local. Vous devez créer le fichier de configuration du référentiel local dans le répertoire /etc/yum.repos.d/ et définir les autorisations appropriées sur le fichier, comme indiqué.

# touch /etc/yum.repos.d/local-rhel8.repo
chmod  u+rw,g+r,o+r  /etc/yum.repos.d/local-rhel8.

8. Ouvrez ensuite le fichier pour l’éditer à l’aide de votre éditeur de texte de ligne de commande préféré.

# vim /etc/yum.repos.d/local.repo

9. Copiez et collez le contenu suivant dans le fichier.

[LocalRepo_BaseOS]
name=LocalRepo_BaseOS
metadata_expire=-1
enabled=1
gpgcheck=1
baseurl=file:///var/www/html/local_repo/
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

[LocalRepo_AppStream]
name=LocalRepo_AppStream
metadata_expire=-1
enabled=1
gpgcheck=1
baseurl=file:///var/www/html/local_repo/
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

Enregistrez les modifications et quittez le fichier.

10. Vous devez maintenant installer les packages requis pour créer, configurer et gérer votre référentiel local en exécutant la commande suivante.

# yum install createrepo  yum-utils
createrepo /var/www/html/local_repo/

Étape 4 : Test du référentiel local

11. Dans cette étape, vous devez exécuter un nettoyage des fichiers temporaires conservés pour les dépôts à l’aide de la commande suivante.

# yum clean all
OR
dnf clean all

12. Vérifiez ensuite que les référentiels créés apparaissent dans la liste des référentiels activés.

# dnf repolist
OR
dnf repolist  -v  #shows more detailed information 

13. Essayez maintenant d’installer un paquet à partir des dépôts locaux, par exemple installer l’outil de ligne de commande Git comme suit :

# dnf install git

En regardant le résultat de la commande ci-dessus, le paquet git est en cours d’installation à partir du dépôt LocalRepo_AppStream, comme indiqué dans la capture d’écran. Cela prouve que les dépôts locaux sont activés et fonctionnent correctement.

Étape 5 : Configurer le référentiel Yum local sur les machines clientes

14. Maintenant, sur vos machines clientes RHEL 8, ajoutez vos dépôts locaux à la configuration YUM.

# vi /etc/yum.repos.d/local-rhel8.repo 

Copiez et collez la configuration ci-dessous dans le fichier. Assurez-vous de remplacer baseurl par l’adresse IP ou le domaine de votre serveur.

[LocalRepo_BaseOS]
name=LocalRepo_BaseOS
enabled=1
gpgcheck=0
baseurl=http://192.168.0.106

[LocalRepo_AppStream]
name=LocalRepo_AppStream
enabled=1
gpgcheck=0
baseurl=http://192.168.0.106

Enregistrez le fichier et commencez à utiliser vos miroirs YUM locaux.

15. Ensuite, exécutez la commande suivante pour voir vos dépôts locaux dans la liste des dépôts YUM disponibles, sur les machines clientes.

# dnf repolist

C’est tout! Dans cet article, nous avons montré comment créer un dépôt local YUM/DNF dans RHEL 8, à l’aide du DVD d’installation ou du fichier ISO. N’oubliez pas de nous contacter via le formulaire de commentaires ci-dessous pour toute question ou commentaire.

Articles connexes: