Frage

Irgendwie habe ich völlig geschafft bugger die Installation von postgresql auf Ubuntu karmischen. Ich möchte von Grund auf neu beginnen, aber wenn ich „Säuberung“ das Paket mit noch Blätter Spuren hinter solchen apt-get, dass die erneute Installation Konfiguration läuft nicht richtig.

Nachdem ich getan habe:

apt-get purge postgresql
apt-get install postgresql

Es wird gesagt,

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 eine "/ etc / postgresql" mit nichts drin und "/ etc / postgresql-common /" hat ein 'pg_upgradecluser.d' Verzeichnis und root.crt und user_clusters Dateien.

Die Datei / etc / passwd hat einen Postgres Benutzer; das Reinigungs Skript nicht angezeigt, es zu berühren. Es gibt eine Reihe von Symptomen gewesen, die ich durch nur arbeiten, um die nächsten zu belichten.

Right diese zweite, wenn ich diesen Befehl ausführen „pg_createcluster ...“, klagt er, dass ‚/var/lib/postgresql/8.4/main/postgresql.conf nicht existiert‘, so dass ich einen von denen finden würde gehen aber ich bin sicher, dass nicht das Ende wird es sein.

Gibt es nicht einige einfache Einzeiler (oder zwei), die es vollständig verbrennen und lassen Sie mich von vorne anfangen?

War es hilfreich?

Lösung

hatte ich eine ähnliche Situation: Ich Säuberung postgresql benötigen 9.1 auf einem Debian sid (I zuvor von 8,4 gewandert war, und ich war immer Fehler).

Was ich getan habe:

Zuerst habe ich gelöscht config und Datenbank

$ sudo pg_dropcluster --stop 9.1 main

Dann entfernte postgresql

$ sudo apt-get remove --purge postgresql postgresql-9.1 

und dann neu installiert

$ sudo apt-get install postgresql postgresql-9.1

In meinem Fall habe ich bemerkt /etc/postgresql/9.1 war leer, und service postgresql start zurück nichts läuft

Also, nach mehr googeln ich auf diesen Befehl bekam:

$ sudo pg_createcluster 9.1 main

Damit ich den Server starten konnte, aber jetzt war ich log-Fehlern zu bekommen. Nach mehr Suchens, landete ich Berechtigungen in das Verzeichnis / var / log / postgresql Verzeichnis wechseln up

$ sudo chown root.postgres /var/log/postgresql
$ sudo chmod g+wx /var/log/postgresql

Dass das Problem behebt, Hoffnung, das hilft

Andere Tipps

Option A

Wenn Du ist das Gerät nicht bereits beschädigt ist, können Sie unerwünschten PostgreSQL-Server fallen ( „Cluster“) pg_dropcluster verwenden. Verwenden Sie, dass in dem Vorzug eine vollständige Säuberung und wieder installieren, wenn Sie nur mit einer frischen PostgreSQL-Instanz neu gestartet werden sollen.

$ pg_lsclusters
Ver Cluster Port Status Owner    Data directory              Log file
11  main    5432 online postgres /var/lib/postgresql/11/main /var/log/postgresql/postgresql-11-main.log
$ sudo systemctl stop postgresql@11-main
$ sudo pg_dropcluster --stop 11 main
$ sudo pg_createcluster --start 11 main

Option B

Wenn Sie wirklich eine vollständige Säuberung und erneut installieren müssen tun, zuerst sicherstellen, dass PostgreSQL nicht ausgeführt wird. ps -C postgres sollte keine Ergebnisse zeigen.

Jetzt laufen:

apt-get --purge remove postgresql\*

alles PostgreSQL von Ihrem System zu entfernen. das postgres Paket nur Spülen nicht genug ist, da es nur ein leeres Meta-Paket.

Wenn alle PostgreSQL-Pakete entfernt wurden, führen Sie:

rm -r /etc/postgresql/
rm -r /etc/postgresql-common/
rm -r /var/lib/postgresql/
userdel -r postgres
groupdel postgres

Sie sollten nun in der Lage sein:

apt-get install postgresql

oder für eine komplette installieren:

apt-get install postgresql-8.4 postgresql-contrib-8.4 postgresql-doc-8.4

Die Schritte, die für mich auf arbeiten Ubuntu 8.04.2 entfernen postgres 8.3

  1. Alle US Postgres verwandte Pakete

    dpkg -l | grep postgres
    
    ii  postgresql                            8.3.17-0ubuntu0.8.04.1           object-relational SQL database (latest versi
    ii  postgresql-8.3                        8.3.9-0ubuntu8.04                object-relational SQL database, version 8.3
    ii  postgresql-client                     8.3.9-0ubuntu8.04                front-end programs for PostgreSQL (latest ve
    ii  postgresql-client-8.3                 8.3.9-0ubuntu8.04                front-end programs for PostgreSQL 8.3
    ii  postgresql-client-common              87ubuntu2                        manager for multiple PostgreSQL client versi
    ii  postgresql-common                     87ubuntu2                        PostgreSQL database-cluster manager
    ii  postgresql-contrib                    8.3.9-0ubuntu8.04                additional facilities for PostgreSQL (latest
    ii  postgresql-contrib-8.3                8.3.9-0ubuntu8.04                additional facilities for PostgreSQL
    
  2. Entfernen Sie alle oben aufgeführten

    sudo apt-get --purge remove postgresql postgresql-8.3  postgresql-client  postgresql-client-8.3 postgresql-client-common postgresql-common  postgresql-contrib postgresql-contrib-8.3
    
  3. Entfernen Sie den folgenden Ordner

    sudo rm -rf /var/lib/postgresql/
    sudo rm -rf /var/log/postgresql/
    sudo rm -rf /etc/postgresql/
    

Ich weiß eine Antwort bereits zur Verfügung gestellt worden, aber dselect nicht für mich arbeiten. Hier ist, was daran gearbeitet, die Pakete zu entfernen zu finden:

# search postgr  | grep ^i
i   postgresql                      - object-relational SQL database (supported 
i A postgresql-8.4                  - object-relational SQL database, version 8.
i A postgresql-client-8.4           - front-end programs for PostgreSQL 8.4     
i A postgresql-client-common        - manager for multiple PostgreSQL client ver
i A postgresql-common               - PostgreSQL database-cluster manager       

# aptitude purge postgresql-8.4 postgresql-client-8.4 postgresql-client-common postgresql-common postgresql

rm -r /etc/postgresql/
rm -r /etc/postgresql-common/
rm -r /var/lib/postgresql/

Schließlich Bearbeiten von / etc / passwd und / etc / group

apt-get purge postgresql*

ist genug.

Nach ae den Schritten gefolgt i deinstallieren und erneut installieren. Welches ist für mich.

Entfernen Sie zuerst die installierten Postgres: -

sudo apt-get purge Postgrad *

sudo apt-get autoremove

Dann installieren 'synaptic':

sudo apt-get install synaptic

sudo apt-get update

Dann installieren Postgres

sudo apt-get install postgresql postgresql-contrib

Ich lief in das gleiche Problem für Ubuntu 13.04. Diese Befehle entfernt Postgres 9.1:

sudo apt-get purge postgresql
sudo apt-get autoremove postgresql

Es kommt zu mir, dass vielleicht nur der zweite Befehl notwendig ist, aber von dort konnte ich Postgres 9.2 (sudo apt-get install postgresql-9.2) installieren.

Ich habe die Antworten folgen, Bei der Bearbeitung von / etc / group Ich löschte auch diese Zeile:

ssl-cert:x:112:postgres

dann, wenn postgresql zu installieren versucht, ich habe diesen Fehler

Preconfiguring packages ...
dpkg: unrecoverable fatal error, aborting:
 syntax error: unknown group 'ssl-cert' in statoverride file
E: Sub-process /usr/bin/dpkg returned an error code (2)

Inbetriebnahme des "ssl-cert: x: 112: Postgres" Linie zurück in / etc / group, es zu beheben scheint (so konnte ich postgresql installieren)

Ich war mit Blick auf gleiches Problem in meinem ubuntu 16.04

, aber ich festgelegt, dieses Problem und es ist sehr einfach, nur diesem Schritt folgen und Sie werden in der Lage postgresql 10 in dem System zu installieren:

Fügen Sie diese auf Ihren sources.list:

sudo vim /etc/apt/sources.list

deb http://ftp.de.debian.org/debian/ wheezy main non-free contrib

deb-src http://ftp.de.debian.org/debian/ wheezy main non-free contrib

danach diesen Link zu Ihrer pgdg.list Datei hinzufügen, wenn es nicht gibt, müssen Sie erstellen && Link hinzufügen && speichert es.

sudo vim /etc/apt/sources.list.d/pgdg.list

deb http://apt.postgresql.org/pub/repos/apt/ xenial-pgdg main

deb http://apt.postgresql.org/pub/repos/apt/ precise-pgdg main

dann aktualisieren Ihr System

sudo apt-get update

sudo apt-get upgrade

und installiert, die unerfüllten Abhängigkeiten:

apt-get install ssl-cert

, die es ist. Installieren Sie postgresql nun unter Verwendung dieses Befehls

sudo apt-get install postgresql-10
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top