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
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
![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“](/assets/images/kb/almalinux-remi-php-modulok.webp)