OpenVPN entfernt, aber /etc/openvpn bleibt: entfernen oder purgen
Ein übrig gebliebenes /etc/openvpn heißt nicht, dass das Paket installiert ist. Lesen Sie den dpkg-Status, wählen Sie zwischen Entfernen und Purgen und prüfen Sie dann, was dpkg niemals löscht.
Das Verzeichnis ist noch da, der Dienst ist weg, und es ist nicht offensichtlich, ob das Paket installiert ist. Auf Systemen der Debian-Familie bedeutet ein zurückgebliebenes /etc/openvpn meist, dass das Paket entfernt wurde, ohne gepurged zu werden; das ist ein dokumentierter Zustand und kein defekter. Die Dateien, die Sie sehen, sind wahrscheinlich Konfiguration, kein Programm.
Arbeiten Sie in Runbook-Reihenfolge: Lesen Sie den Paketstatus, entscheiden Sie, was bleiben soll, purgen Sie bewusst und prüfen Sie dann, was übrig bleibt. Jeder Schritt ist bis zum Purge umkehrbar.
Lesen Sie zuerst den Paketstatus
Beginnen Sie mit der Paketdatenbank statt mit dem Dateisystem. dpkg -l openvpn gibt einen zweibuchstabigen Status aus, und rc bedeutet, dass das Paket entfernt wurde, während seine Konfigurationsdateien erhalten blieben. dpkg-query -W -f='${Status}\n' openvpn liefert dieselbe Antwort in Worten. Ein Verzeichnislisting kann Ihnen nichts davon sagen.
Verwechseln Sie Community OpenVPN nicht mit Access Server oder einem NetworkManager-Plugin. Das sind verschiedene Pakete mit verschiedenen Entfernungspfaden.
Ist der Status ii, ist das Paket installiert und das Verzeichnis zu erwarten. Ist er rc, bleibt nur die Konfiguration. Liefert die Abfrage nichts, wurde das Paket gepurged und das Verzeichnis gehört zu etwas anderem.
Zwischen Entfernen und Purgen wählen
remove löscht die Programme und lässt die Konfiguration stehen. purge löscht auch die Konfiguration und führt das Aufräumskript des Pakets aus. Beides sind administrative Entscheidungen über den Zustand, nicht zwei Schreibweisen desselben Befehls.
Listen Sie vor der Wahl mit dpkg -L openvpn auf, was dem Paket gehört. Diese Ausgabe ist die Karte der paketverwalteten Pfade und der richtige Input für die Entscheidung, was ein Purge löschen würde. Alles, was Sie im Verzeichnis sehen und nicht auf dieser Liste steht, kam von woanders. Behandeln Sie diese Dateien als Ihre eigenen zur Prüfung, nicht als Paketreste.
Ein bereits entferntes Paket zu purgen ist erlaubt. Eine vorherige Neuinstallation ist keine Voraussetzung.
Bewahren Sie, was Sie noch brauchen
Bewahren Sie vor dem Purge, was Sie noch brauchen: Profile, Client-Zertifikate, private Schlüssel, CCD-Dateien und alle lokalen Skripte. Kopieren Sie sie mit Rechten, die zu Geheimnissen passen, und notieren Sie, wo die Kopien liegen.
Prüfen Sie, ob ein anderer Dienst oder Manager dasselbe Verzeichnis nutzt. Eine zweite VPN-Instanz oder ein Automatisierungsskript kann von einem Pfad abhängen, der wie übrig gebliebene Konfiguration aussieht.
Wird die Maschine außer Betrieb genommen, sind die lokalen Dateien die kleinere Hälfte des Problems. Exportierte Profile und entfernte Berechtigungen überleben jedes Verzeichnis, das Sie löschen.
Purgen und prüfen
Führen Sie den Purge über den Paketmanager aus, nicht durch Löschen des Verzeichnisses. sudo apt purge openvpn hält die Paketdatenbank und die Aufräumskripte im Spiel.
Wiederholen Sie danach die Statusabfrage und bestätigen Sie, dass das Paket nicht mehr erscheint. Prüfen Sie mit systemctl status openvpn@server oder dem verwendeten Unit-Namen, dass der Dienst weg ist, und testen Sie gewöhnliches Netzwerken.
Dateien, die ein Purge nicht entfernt
Manche Dateien überleben einen Purge mit Absicht. Erzeugte Konfiguration, die Maintainer-Skripte verwalten, ist der Dateidatenbank von dpkg nicht immer bekannt. Konfiguration in den Home-Verzeichnissen von Benutzern liegt außerhalb der Systemverzeichnis-Aufräumung. Und alles, was ein Administrator von Hand angelegt hat, gehörte nie dem Paket. Jedes davon braucht seine eigene Prüfung.
Ein rekursives Löschen jedes Pfads mit VPN im Namen ist der Weg, auf dem funktionierende Anmeldedaten und unzusammenhängende Konfiguration verschwinden.
Beenden Sie mit dem Widerrufen dessen, was die Maschine nicht mehr braucht: exportierte Profile, ausgestellte Client-Zertifikate und jedes Konto, das sich darüber authentifiziert hat. Das Löschen eines lokalen Verzeichnisses widerruft keine Anmeldedaten, die anderswo noch bestehen. Die dpkg-Referenz dokumentiert die Zustände und den Umfang des Purge.