Beispiel: PHP
7.3 vollständig entfernen
System: Debian mit ISPConfig und PHP-Paketen von packages.sury.org
1. Voraussetzungen und Sicherheit
Vor der Deinstallation sicherstellen, dass:
- Keine Website in ISPConfig mehr PHP 7.3 verwendet.
- Keine Cronjobs, Skripte oder sonstigen Dienste PHP 7.3 benötigen.
- Alle betroffenen Websites auf eine andere installierte PHP-Version umgestellt wurden.
- Ein aktuelles Backup vorhanden ist.
Die folgenden Schritte beziehen sich auf
PHP 7.3. Für andere Versionen die Versionsnummer entsprechend ersetzen.
2. Installierte PHP-7.3-Pakete prüfen
dpkg -l | grep -E '^(ii|rc)\s+php7\.3([-. ]|$)'
Statuskennzeichen:
ii: Paket ist installiert.
rc: Paket wurde entfernt, Konfigurationsreste sind noch registriert.
Zusätzlich installierte PHP-Pakete anzeigen:
dpkg -l | grep -E '^ii\s+php'
3. ISPConfig und Webserver prüfen
In ISPConfig unter
System →
Additional PHP Versions kontrollieren, ob PHP 7.3 noch als zusätzliche PHP-Version eingetragen ist.
Vor der Entfernung sicherstellen, dass keine Website mehr PHP 7.3 verwendet.
Apache-Konfiguration prüfen:
apache2ctl -M | grep -i php
ls -l /etc/apache2/mods-enabled/ | grep php
PHP-FPM-Dienste prüfen:
systemctl --type=service --all | grep 'php7.3-fpm'
Zusätzlich Webserver-Konfigurationen und gegebenenfalls benutzerdefinierte PHP-FPM-Konfigurationen kontrollieren.
4. PHP 7.3 mit APT entfernen
Zunächst eine Vorschau der geplanten Entfernung erstellen:
sudo apt-get -s purge 'php7.3*'
Die Ausgabe sorgfältig prüfen. Es dürfen
keine benötigten Pakete anderer PHP-Versionen, keine Datenbankpakete und keine wichtigen Systempakete zur Entfernung vorgeschlagen werden.
Wenn die Paketliste unerwartete Entfernungen enthält:
abbrechen und nichts bestätigen.
Wenn die Vorschau plausibel ist, die Entfernung ausführen:
sudo apt-get purge 'php7.3*'
Auch hier die geplante Paketliste vor der Bestätigung kontrollieren.
Hinweis: Das Muster php7.3* erfasst Paketnamen, die mit php7.3 beginnen. Es ist gezielter als ein allgemeines Muster wie php7.*.
5. Verbliebene Konfigurationsreste prüfen
Nach der Deinstallation:
dpkg -l | grep -E '^(ii|rc)\s+php7\.3([-. ]|$)'
Falls noch
rc-Pakete angezeigt werden, können diese einzeln und gezielt bereinigt werden. Paketnamen aus der Ausgabe übernehmen und keine allgemeinen Purge-Muster für sämtliche Konfigurationsreste verwenden.
Verbliebene Dateien anzeigen:
find /etc/php/7.3 -maxdepth 3 -type f 2>/dev/null
Falls noch Dateien vorhanden sind, kann geprüft werden, ob sie einem Paket gehören:
dpkg -S /etc/php/7.3/mods-available/DATEI.ini
DATEI.ini durch den tatsächlichen Dateinamen ersetzen. Eine fehlende Paketzuordnung allein beweist nicht, dass die Datei unbenötigt ist.
6. Verwaiste Konfigurationsdateien entfernen
Wenn PHP 7.3 vollständig entfernt ist und die verbliebenen Konfigurationen
nicht mehr benötigt werden, zuerst eine Sicherung erstellen:
sudo cp -a /etc/php/7.3 /root/php-7.3-backup
Anschließend den Inhalt kontrollieren:
ls -la /etc/php/7.3
ls -la /etc/php/7.3/mods-available
Falls dort noch alte Erweiterungskonfigurationen wie apcu.ini, imagick.ini oder memcache.ini liegen, prüfen, ob sie ausschließlich zu PHP 7.3 gehören.
Nur wenn das gesamte Verzeichnis nicht mehr benötigt wird, kann es entfernt werden:
sudo rm -r /etc/php/7.3
Alternativ ausschließlich leere Verzeichnisse mit rmdir entfernen. rmdir löscht keine Verzeichnisse, die noch Dateien enthalten.
7. Abschlusskontrolle
Installierte PHP-7.3-Pakete erneut prüfen:
dpkg -l | grep -E '^ii\s+php7\.3([-. ]|$)'
PHP-FPM-Dienst prüfen:
systemctl status php7.3-fpm
Ein nicht vorhandener Dienst ist nach der vollständigen Deinstallation erwartbar.
Abschließend prüfen, ob die verbliebenen PHP-Versionen und Websites ordnungsgemäß funktionieren. Bei Bedarf die Webserver-Konfiguration testen:
sudo apache2ctl configtest
Nur wenn der Konfigurationstest erfolgreich ist und die übrigen Websites funktionieren, ist die Bereinigung abgeschlossen.
Wichtige Hinweise
- Niemals apt-get purge '?config-files' 'php7.*' verwenden, um nur PHP-7-Konfigurationsreste zu entfernen. Das Muster ?config-files erfasst Konfigurationsreste aller Pakete und kann zu umfangreichen, unerwünschten Paketentfernungen führen.
- Vor jeder Paketentfernung die APT-Vorschau kontrollieren.
- PHP-Konfigurationsverzeichnisse erst nach Prüfung der Paketzugehörigkeit und tatsächlichen Verwendung löschen.
- Datenbankdaten und ISPConfig-Konfigurationen nicht im Rahmen dieser Bereinigung löschen.
Zuletzt geändert: 2026-10-23 17:59:50Weiterlesen