Irgendwie habe ich es geschafft, die Installation von postgresql auf Ubuntu karmic komplett zu nerven. Ich möchte von vorne anfangen, aber wenn ich das Paket mit apt-get "bereinige", hinterlässt es immer noch Spuren, so dass die Neuinstallationskonfiguration nicht richtig ausgeführt wird.
Nachdem ich fertig bin:
apt-get purge postgresql
apt-get install postgresql
Es sagte
Setting up postgresql-8.4 (8.4.3-0ubuntu9.10.1) ...
Configuring already existing cluster (configuration: /etc/postgresql/8.4/main, data: /var/lib/postgresql/8.4/main, owner: 108:112)
Error: move_conffile: required configuration file /var/lib/postgresql/8.4/main/postgresql.conf does not exist
Error: could not create default cluster. Please create it manually with
pg_createcluster 8.4 main --start
or a similar command (see 'man pg_createcluster').
update-alternatives: using /usr/share/postgresql/8.4/man/man1/postmaster.1.gz to provide /usr/share/man/man1/postmaster.1.gz (postmaster.1.gz) in auto mode.
Setting up postgresql (8.4.3-0ubuntu9.10.1) ...
Ich habe ein "/ etc / postgresql" mit nichts darin und "/ etc / postgresql-common /" hat ein 'pg_upgradecluser.d'-Verzeichnis und root.crt- und user_clusters-Dateien.
Das / etc / passwd hat einen Postgres-Benutzer; Das Bereinigungsskript scheint es nicht zu berühren. Es gab eine Reihe von Symptomen, die ich nur durcharbeite, um die nächsten aufzudecken.
Genau in dieser Sekunde, wenn ich diesen Befehl "pg_createcluster ..." ausführe, beschwert es sich, dass '/var/lib/postgresql/8.4/main/postgresql.conf nicht existiert', also werde ich einen von denen finden, aber ich ' Ich bin mir sicher, dass das nicht das Ende sein wird.
Gibt es nicht einen einfachen Einzeiler (oder zwei), der ihn vollständig verbrennt und mich von vorne anfangen lässt?
quelle
Antworten:
Option A.
Wenn Ihre Installation noch nicht beschädigt ist, können Sie unerwünschte PostgreSQL-Server ("Cluster") mit löschen
pg_dropcluster
. Verwenden Sie dies vor einer vollständigen Bereinigung und Neuinstallation, wenn Sie nur mit einer neuen PostgreSQL-Instanz neu starten möchten.Option B.
Wenn Sie wirklich eine vollständige Bereinigung und Neuinstallation durchführen müssen, stellen Sie zunächst sicher, dass PostgreSQL nicht ausgeführt wird.
ps -C postgres
sollte keine Ergebnisse zeigen.Führen Sie jetzt aus:
um alles PostgreSQL von Ihrem System zu entfernen. Das Löschen des
postgres
Pakets reicht nicht aus, da es sich nur um ein leeres Metapaket handelt.Führen Sie Folgendes aus, nachdem alle PostgreSQL-Pakete entfernt wurden:
Sie sollten jetzt in der Lage sein:
oder für eine vollständige Installation:
quelle
/etc/passwd
und/etc/group
für sicherereuserdel
und sichereregroupdel
.dselect
Verwenden Sie auch einen passenden Platzhalter, um diese zuverlässig zuzuordnen , anstatt sie von Hand auszuwählen.pg_dropcluster
!! (Verwendungsbeispiel:pg_dropcluster --stop 9.1 main
)rm -r /var/log/postgresql
.Ich hatte eine ähnliche Situation: Ich musste postgresql 9.1 auf einem Debian-Keuchen löschen (ich war zuvor von 8.4 migriert und bekam Fehler).
Was ich getan habe:
Zuerst habe ich Konfiguration und Datenbank gelöscht
Dann postgresql entfernt
und dann neu installiert
In meinem Fall bemerkte ich, dass /etc/postgresql/9.1 leer war und das Ausführen
service postgresql start
nichts zurückgabNachdem ich weiter gegoogelt hatte, kam ich zu diesem Befehl:
Damit konnte ich den Server starten, aber jetzt bekam ich log-bezogene Fehler. Nach weiteren Suchen habe ich die Berechtigungen für das Verzeichnis / var / log / postgresql geändert
Das hat das Problem behoben. Ich hoffe, das hilft
quelle
Schritte, die für mich gearbeitet haben
Ubuntu 8.04.2
, um zu entfernenpostgres 8.3
Alle Postgres-bezogenen Pakete auflisten
Entfernen Sie alle oben aufgeführten
Entfernen Sie die folgenden Ordner
quelle
apt-get --purge remove postgresql\*
Ich weiß, dass bereits eine Antwort gegeben wurde, aber dselect hat bei mir nicht funktioniert. Folgendes hat funktioniert, um die zu entfernenden Pakete zu finden:
Zum Schluss bearbeiten Sie / etc / passwd und / etc / group
quelle
reicht.
quelle
Befolgen Sie die Schritte zum Deinstallieren und Neuinstallieren. Welches hat bei mir funktioniert.
Entfernen Sie zuerst die installierten Postgres: -
Dann installieren Sie 'synaptic':
Dann installieren Sie postgres
quelle
Ich bin gerade auf das gleiche Problem für Ubuntu 13.04 gestoßen. Diese Befehle haben Postgres 9.1 entfernt:
Mir fällt ein, dass vielleicht nur der zweite Befehl notwendig ist, aber von dort aus konnte ich Postgres 9.2 installieren (sudo apt-get install postgresql-9.2).
quelle
Ich habe die Antworten verfolgt. Beim Bearbeiten von / etc / group habe ich auch diese Zeile gelöscht:
Beim Versuch, postgresql zu installieren, wurde dieser Fehler angezeigt
Das Zurücksetzen der Zeile "ssl-cert: x: 112: postgres" in / etc / group scheint das Problem zu beheben (also konnte ich postgresql installieren).
quelle
/etc/passwd
. Mach das niemals . Verwenden Sie dieuserdel
undgroupdel
Befehle , und Sie werden nicht das Problem in Zukunft haben.Ich hatte das gleiche Problem in meinem Ubuntu 16.04
Aber ich habe dieses Problem behoben und es ist sehr einfach. Befolgen Sie einfach diesen Schritt und Sie können Postgresql 10 auf Ihrem System installieren:
Fügen Sie dies Ihrer Quellenliste hinzu:
Danach fügen Sie diesen Link zu Ihrer pgdg.list-Datei hinzu. Wenn er nicht vorhanden ist, müssen Sie einen Link erstellen und hinzufügen.
Aktualisieren Sie dann Ihr System
und installieren Sie diese nicht erfüllten Abhängigkeiten:
das ist es. Installieren Sie jetzt postgresql mit diesem Befehl
quelle