Installation des Remi-Repositorys unter AlmaLinux

Linux 5 Min. Lesezeit

Das Remi-Repository (Remi’s RPM-Repository) ist das Repository von Remi Collet, einem Entwickler, der auch die PHP-Pakete für Red Hat pflegt. Es stellt für AlmaLinux, Rocky Linux und Red Hat Enterprise Linux neuere oder ältere PHP-Versionen bereit, als sie im System vorhanden sind, sowie Redist, Valkey, Composer und zahlreiche PHP-Erweiterungen. Dies ist erforderlich, wenn eine Anwendung eine andere PHP-Version benötigt als die, die AlmaLinux bereitstellt, oder wenn Sie auf einem Server mehrere PHP-Versionen ausführen möchten.

Wir haben die Schritte auf Systemen mit AlmaLinux 10.2 und 9.8 getestet; führen Sie die Befehle bitte als Root-Benutzer oder mit „sudo“ aus.

1. Aktivierung von EPEL

Die Remi-Pakete basieren auf dem EPEL-Repository; aktivieren Sie dieses daher zunächst (ausführliche Anleitung: Installation des EPEL-Repositorys unter AlmaLinux):

sudo dnf install epel-release
sudo crb enable

2. Installation des Remi-Repositorys

Das Konfigurationspaket wird von der Remi-Seite über die URL installiert, die der Hauptversion des Systems entspricht.

AlmaLinux 10:

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

AlmaLinux 9:

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

Im Test wurde für AlmaLinux 10 das Paket „remi-release-10.2-1“ und für AlmaLinux 9 das Paket „remi-release-9.8-1“ installiert. Bei der Installation des ersten Remi-Pakets fordert „dnf“ Sie auf, den Signaturschlüssel von Remi zu importieren (Userid : "Remi's RPM repository (https://rpms.remirepo.net/) <remi@remirepo.net>"), was Sie mit „y“ bestätigen.

3. Was ist in dem Paket enthalten?

dnf repolist

Remi legt mehrere Speicherbereiche an, von denen zwei aktiv sind:

Speicher Standardmäßig Wozu dient das?
remi-modular be Austauschbare Versionen von PHP, Redis, Valkey und anderen Programmen als Module (siehe unten)
remi-safe be Nur solche Pakete, die keine Änderungen am System vornehmen, wie beispielsweise die parallel installierbaren Pakete „php84“ und „php85“
remi ki Updates, die die systemeigenen Pakete überschreiben
remi-test ki Pakete, die sich derzeit in der Testphase befinden

Aktivieren Sie die Repos „remi“ und „remi-test“ nicht auf einem Produktionsserver. Die Repos „remi-modular“ und „remi-safe“ ersetzen an sich nichts: Solange Sie kein Modul auswählen oder kein phpXY-Paket installieren, bleiben die System-Pakete erhalten.

4. Die verfügbaren Varianten

Remi bietet die Programmversionen als Module an. Die Liste der verfügbaren PHP-Versionen lautet wie folgt:

dnf module list php

PHP-Ausgabe der dnf-Modulliste auf einem AlmaLinux 10-System mit dem Remi-Repository: von remi-7.4 bis remi-8.6, wobei remi-8.5 mit einem [e] gekennzeichnet ist; darunter die Ausgabe von „php -v“

Die Angabe „[e]“ (enabled) neben „remi-8.5“ auf dem Bild bedeutet, dass diese Version ausgewählt ist. Zum Zeitpunkt des Tests (Oktober 2026) standen folgende Optionen zur Verfügung:

Programm Module (Streams)
php remi-7.4, remi-8.0 … remi-8.5, remi-8.6 (8.6 befindet sich noch in der Vorabversion, RC)
redis remi-7.2, remi-8.0, remi-8.2 … remi-8.10
valkey remi-8.1, remi-9.0, remi-9.1, remi-9.2
composer 2
memcached remi

Unter AlmaLinux 9 zeigt der Befehl „dnf module list php“ neben den Modulen aus dem Remi-Repository (8.1, 8.2, 8.3) auch die systemeigenen Module an. AlmaLinux 10 verwendet keine Module mehr für seine eigenen Pakete; dort werden nur noch die Remi-Module angezeigt, und dnf gibt folgende Warnung aus: „modularity is deprecated, and functionality will be removed in a future release of DNF5“. Dennoch funktionierten die Remi-Module unter AlmaLinux 10 zum Zeitpunkt des Tests einwandfrei.

5. Auswahl einer Version

Beispiel für PHP 8.4:

sudo dnf module reset php
sudo dnf module enable php:remi-8.4
sudo dnf install php php-cli php-fpm

Mit „reset“ wird die bisherige Auswahl gelöscht, mit „enable“ wird die neue Einstellung festgelegt. Ab diesem Zeitpunkt stammen „php“, „php-fpm“ und alle „php-…“-Erweiterungspakete aus der Version 8.4 von Remi, und auch die Updates erfolgen innerhalb dieser Version. Mit dem Befehl „switch-to“ können Sie zu einer anderen Version wechseln; dabei werden auch die installierten Pakete ausgetauscht:

sudo dnf module switch-to php:remi-8.5

Wenn Sie versuchen, einen weiteren Stream ohne reset zu starten, lehnt dnf dies ab:

Error: It is not possible to switch enabled streams of a module unless explicitly enabled via configuration option module_stream_switch.

Verwenden Sie in diesem Fall den Befehl „switch-to“ oder zuvor den Befehl „reset“. Welcher Stream gerade ausgewählt ist, zeigt der Befehl „dnf module list php --enabled“.

Bei Remi PHP stammen auch die gängigen PECL-Plugins aus dem Modul und sind an die jeweilige PHP-Version angepasst, beispielsweise „php-pecl-redis6“ (Redis) und „php-pecl-memcached“ (Memcached).

Der gesamte Ablauf der PHP-Installation, die Plugins sowie die Konfiguration des Webservers werden im Artikel „PHP-Installation unter AlmaLinux 9 und 10“ beschrieben, die Installation von Redis im Artikel „Installation von Redis und Valkey unter AlmaLinux“.

6. Mehrere PHP-Versionen gleichzeitig (remi-safe)

Im remi-safe-Repository ist jede PHP-Version mit einem eigenen Präfix verfügbar (php81, php82 … php86). Diese werden zusätzlich zum systemeigenen PHP in einem separaten Verzeichnis installiert, sodass auf einem Server mehrere Versionen gleichzeitig ausgeführt werden können:

sudo dnf install php85-php-cli php85-php-fpm php85-php-mysqlnd
php85 -v
sudo systemctl enable --now php85-php-fpm
  System: PHP Parallel (Beispiel: 8.5)
Befehl php php85
Dienstleistung php-fpm php85-php-fpm
Einstellungen /etc/php.ini, /etc/php-fpm.d/ /etc/opt/remi/php85/
FPM-Socket /run/php-fpm/www.sock /var/opt/remi/php85/run/php-fpm/www.sock

Auf dem Webserver muss der PHP-Interpreter der jeweiligen Seite auf den entsprechenden Socket geleitet werden, sodass beispielsweise eine ältere Anwendung unter PHP 8.1 und die neue Seite unter PHP 8.5 auf demselben Server ausgeführt werden können.

Updates und Sicherheit

Die Remi-Pakete werden mit dem Befehl „dnf upgrade“ innerhalb des ausgewählten Moduls aktualisiert. Die PHP-Entwickler unterstützen jede Version zwei Jahre lang aktiv und danach weitere zwei Jahre lang ausschließlich mit Sicherheitspatches (Quelle: php.net, „Supported Versions“):

Version Aktiver Support Sicherheitsupdates
PHP 8.2 abgelaufen Bis zum 31. Dezember 2026
PHP 8.3 abgelaufen Bis zum 31. Dezember 2027
PHP 8.4 Bis zum 31. Dezember 2026 Bis zum 31. Dezember 2028
PHP 8.5 Bis zum 31. Dezember 2027 Bis zum 31. Dezember 2029

Wählen Sie für eine Neuinstallation die Version 8.4 oder 8.5. Ältere Versionen, die von den PHP-Entwicklern nicht mehr unterstützt werden (zum Zeitpunkt des Tests waren dies die Versionen 7.4, 8.0 und 8.1), werden von Remi zwar weiterhin angeboten, erhalten jedoch keine Sicherheitsupdates mehr von den PHP-Entwicklern. Verwenden Sie diese nur vorübergehend, um alte Anwendungen zu migrieren. Über die Support-Laufzeiten der PHP-Versionen berichten wir auch in unserem Blogbeitrag zum Ende des Supports für PHP 8.2.

Wenn Sie PHP-Versionen nicht manuell verwalten möchten, können Sie bei cPanel-Hosting-Paketen die PHP-Version und die Plugins mit einem Klick auswählen, während bei VPS-Lösungen der verwaltete Betrieb Ihnen diese Arbeit abnimmt.

Entfernung von Remi

Ersetzen Sie zunächst die über das Modul installierten Pakete durch die systemeigenen und entfernen Sie die parallel installierten Versionen:

sudo dnf module reset php
sudo dnf distro-sync
sudo dnf remove 'php85-*'

Im Test hat distro-sync die PHP-8.5-Pakete von Remi durch die eigenen PHP-8.3.36-Pakete von AlmaLinux 10 ersetzt (Downgrading), einschließlich der Plugins; die php85-*-Pakete blieben jedoch unberührt und müssen separat entfernt werden. Falls Sie auch ein Redis- oder Valkey-Modul verwendet haben, setzen Sie dieses auf dieselbe Weise zurück (dnf module reset redis). Abschließend:

sudo dnf remove remi-release
Zurück: Linux-Artikel (62)