Red Hat et dérivées version SERVEUR

CentOS 6 : Basculer les dépôts Base et Epel sur les archives http

Table des matières

Introduction



Dans cet article nous allons voir comment basculer les dépôts de CentOS 6 vers les archives "Vault" pour les dépôts de base et vers les archives de EPEL si ceux-si sont installés.

La problématique



J'ai rencontré cette problématique récemment, j'ai du intervenir sur des CentOS 6 pas spécialement à jour (CentOS 6.4).
L'installation d'outils est impossible, la mise à jour non plus :

Code :
YumRepo Error: All mirror URLs are not using ftp, http[s] or file.
 Eg. Invalid release/repo/arch combination/
removing mirrorlist with no valid mirrors: /var/cache/yum/x86_64/6/base/mirrorlist.txt
Error: Cannot retrieve repository metadata (repomd.xml) for repository: base. Please verify its path and try again


Il va se produire 3 problématiques :
- Il faut basculer sur le dépôt Vault car les miroirs des anciennes versions de CentOS sont sur les archives.
- Il faut trouver un dépôt en HTTP car la version d'openssl est trop ancienne pour les miroirs HTTPS.
- Les dépôts de base sont découpés par version de CentOS 6, on va forcer la version 6.10 pour yum.

A ce jour (mai 2022), le dépôt disponible en http pour CentOS 6 : http://linuxsoft.cern.ch/centos-vault
Pour Epel, les archives de Fedora sont accessible en HTTP non redirigé de force en HTTPS : http://archives.fedoraproject.org

Le script



Plutôt que de faire les manipulation manuelles dans les fichiers, je vous partage mon script BASH permettant d'automatiser les opérations.
Seule la commande sed est nécessaire).

Pour le dépôt de Base, on commente la ligne mirrorlist et on force le dépôt HTTP cité ci-dessus.
Si EPEL a été installé, on fait de même pour EPEL.

Code BASH :
#! /bin/bash
echo "Patch en HTTP du dépôt de base"
sed -e 's@^mirrorlist@#mirrorlist@g' -i /etc/yum.repos.d/CentOS-Base.repo
sed -e 's@^#baseurl=http://mirror.centos.org/centos@baseurl=http://linuxsoft.cern.ch/centos-vault@g' -i /etc/yum.repos.d/CentOS-Base.repo 
echo 6.10 > /etc/yum/vars/releasever
if [[ -e /etc/yum.repos.d/epel.repo ]]
then
    echo "Patch de Epel"
    sed -e 's@^mirrorlist@#mirrorlist@g' -i /etc/yum.repos.d/epel.repo
    sed -e 's@^#baseurl=http://download.fedoraproject.org/pub/epel@baseurl=http://archives.fedoraproject.org/pub/archive/epel@g' -i /etc/yum.repos.d/epel.repo
fi
Cette page a été vue 5827 fois