Installer le dépôt EPEL et le dépôt Remi sur une distribution EL actuelle

Il manque un paquet, ou la version de PHP du système ne convient pas à votre application : c'est le rôle d'EPEL et de Remi. Voici les commandes officielles pour les versions EL 9 et 10, et les précautions qui vont avec.

Les distributions de la famille Red Hat (RHEL, Rocky Linux, AlmaLinux, CentOS Stream) livrent un catalogue volontairement restreint. Deux dépôts complémentaires comblent l'essentiel des manques :

La différence compte : le configurateur de Remi précise que sa méthode « une seule version » remplace les paquets PHP de la distribution. Ajouter un dépôt tiers change la provenance des mises à jour du serveur ; testez sur une machine de lab et prenez un instantané avant de le faire en production.

CentOS 7 : les anciennes commandes ne s'appliquent plus

Les tutoriels « epel centos 7 » visent un système que le projet CentOS a déclaré en fin de vie le 30 juin 2024. Le configurateur officiel de Remi ne propose d'ailleurs plus que EL 8, EL 9 et EL 10, ainsi que les RHEL et CentOS Stream correspondants. Sur un serveur CentOS 7, la priorité n'est pas d'ajouter des dépôts mais de migrer vers une version supportée, par exemple avec une installation de Rocky Linux.

La suite vise EL 10 (Rocky Linux 10, AlmaLinux 10, RHEL 10), avec les différences pour EL 9 quand il y en a.

Avant de commencer

PrérequisPourquoi
un compte root ou sudoinstallation de paquets
le dépôt CRB activablele configurateur Remi l'active avant EPEL
le contenu de /etc/redhat-releasele configurateur Remi conseille de le vérifier pour choisir la bonne version
un instantané de la VMrevenir en arrière si un paquet remplacé casse une application

Étape 1 : activer CRB

Le dépôt CRB (CodeReady Linux Builder) fait partie de la distribution mais n'est pas activé par défaut. Le configurateur de Remi demande de l'activer avant EPEL et donne la commande pour chaque système :

dnf config-manager --set-enabled crb

Cette commande vaut pour Rocky Linux et AlmaLinux 9 et 10 ; la documentation Rocky Linux l'indique aussi pour ses versions 9 et 10. Sur RHEL 10, abonné, le dépôt s'active par le gestionnaire d'abonnement :

subscription-manager repos --enable codeready-builder-for-rhel-10-x86_64-rpms

Étape 2 : installer epel-release

Le paquet epel-release ne contient que la configuration du dépôt. Le configurateur de Remi donne l'adresse officielle, sur les serveurs du projet Fedora :

dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-10.noarch.rpm

Sur EL 9, remplacez 10 par 9 dans le nom du fichier. La documentation Rocky Linux mentionne aussi l'installation d'epel-release comme préalable à certains groupes de paquets, avec CRB activé.

Vérifiez ensuite que le dépôt apparaît dans la liste des dépôts actifs :

dnf repolist

Une ligne epel doit figurer dans la sortie. À partir de là, dnf install trouve les paquets EPEL comme ceux de la distribution.

Savoir d'où vient un paquet

Avec plusieurs dépôts actifs, vérifiez la provenance d'un paquet avant de l'installer. La commande dnf info affiche un champ Repository :

Étape 3 : installer le dépôt Remi

Le configurateur place cette étape après CRB et EPEL :

dnf install https://rpms.remirepo.net/enterprise/remi-release-10.rpm

Sur EL 9, le fichier s'appelle remi-release-9.rpm. Selon le configurateur, le sous-dépôt remi-safe, qui contient des dépendances communes, est activé par défaut. Les versions de PHP qui remplacent celles du système sont publiées dans remi-modular : sur EL 10, dont les dépôts officiels n'utilisent plus de modules pour PHP, ce sont donc les flux de ce dépôt Remi que manipule dnf module.

Étape 4 : choisir sa version de PHP

C'est l'usage principal du dépôt Remi. Le configurateur indique qu'EL 10 fournit PHP 8.3 dans ses dépôts officiels, et EL 9 les versions 8.0 à 8.3. Si votre application exige une autre branche, deux méthodes existent.

Une seule version, à la place de celle du système

Les paquets gardent les mêmes noms (php-*) et remplacent ceux de la distribution. Pour PHP 8.4, le configurateur donne :

dnf module install php:remi-8.4
php --version
php --modules

Si PHP est déjà installé, la commande dnf module switch-to php:remi-8.4 bascule la version ; le configurateur précise qu'elle met à niveau ou rétrograde les paquets en place.

SituationCommande
PHP absentdnf module install php:remi-8.4
PHP déjà installédnf module switch-to php:remi-8.4
extension supplémentairednf install php-<extension>

Plusieurs versions côte à côte

Le configurateur propose aussi des collections logicielles (SCL) : chaque version a ses propres noms de paquets et de commandes, par exemple php84. Remi recommande d'installer une version par défaut et de n'utiliser les collections que pour les versions supplémentaires.

dnf install php84
php84 --version

Quelle branche de PHP choisir

Ne choisissez pas une version au hasard. Le projet PHP publie la durée de support de chaque branche : 8.2 n'a plus que des correctifs de sécurité jusqu'au 31 décembre 2026, et toutes les branches 7.x sont en fin de vie. Le configurateur de Remi affiche encore les versions 7.x et 8.0 pour d'anciennes applications, en précisant qu'elles n'ont plus de support amont. Ne les installez pas sur un serveur exposé.

Pour une pile web complète, voyez le serveur LAMP sur Rocky Linux ou sa variante Nginx et PHP-FPM. Les commandes dnf et systemctl sont reprises dans la liste des commandes Linux, et les autres guides dans les tutoriels Serveurs Linux.

Questions fréquentes

Qu'est-ce que le dépôt EPEL ?

EPEL (Extra Packages for Enterprise Linux) est un dépôt maintenu au sein du projet Fedora. Il ajoute aux distributions Red Hat Enterprise Linux et compatibles des paquets qu'elles ne fournissent pas. Son paquet de configuration s'appelle epel-release.

Faut-il installer EPEL avant Remi ?

Oui. Le configurateur officiel de Remi donne les commandes dans cet ordre : activer CRB, installer epel-release, puis remi-release. Suivez cet ordre plutôt que d'installer Remi seul.

Peut-on encore utiliser EPEL sur CentOS 7 ?

CentOS Linux 7 est en fin de vie depuis le 30 juin 2024, et le configurateur de Remi ne le propose plus. Plutôt que d'ajouter des dépôts à un système non maintenu, migrez vers une distribution EL supportée.

Le dépôt Remi remplace-t-il les paquets de la distribution ?

Avec la méthode « une seule version », oui : les paquets php-* de Remi remplacent ceux du système. Avec les collections (php84 par exemple), les versions s'installent à côté sans rien remplacer.

Comment voir les dépôts activés ?

La commande dnf repolist liste les dépôts actifs. Après l'installation, epel doit y apparaître, puis les dépôts Remi activés comme remi-safe.