Mulai server PostgreSQL, pengguna postgres tidak dikenal

8

Saya mencoba memulai server PostgreSQL (9.3) di Ubuntu 14.04. Saya mengikuti tutorial standar ini: https://help.ubuntu.com/community/PostgreSQL

Setelah memperbarui dari 13,10 ke 14,04 saya membersihkan instalasi PostgreSQL karena berbagai kesulitan yang saya miliki di dalam pgadmin setelah pembaruan.

Menggunakan perintah ini setelah instalasi baru:

    sudo -u postgres psql postgres

pengembalian:

    sudo: unknown user: postgres
    sudo: rule-plugin could not be initialized

Saya tidak dapat menemukan solusi untuk ini, tetapi saya harus mengakui bahwa saya hanya menggunakan postgresql untuk menampung database GIS saya dan saya sangat kewalahan karena menghadapi semua masalah ini.

Edit:

Output dari ls -la / var / lib / postgresql adalah "Tidak dapat mengakses / var / lib / postgresql: File atau direktori tidak ditemukan" ( diterjemahkan dari bahasa Jerman )

Edit 2 (dibersihkan dan diinstal ulang):

    Paketlisten werden gelesen... Fertig
    Abhängigkeitsbaum wird aufgebaut.       
    Statusinformationen werden eingelesen.... Fertig
    Das folgende Paket wurde automatisch installiert und wird nicht mehr benötigt:
      libossp-uuid16
    Verwenden Sie »apt-get autoremove«, um es zu entfernen.
    Vorgeschlagene Pakete:
      oidentd ident-server locales-all
    Die folgenden NEUEN Pakete werden installiert:
      postgresql-9.3
    0 aktualisiert, 1 neu installiert, 0 zu entfernen und 0 nicht aktualisiert.
    Es müssen noch 0 B von 3.451 kB an Archiven heruntergeladen werden.
    Nach dieser Operation werden 17,5 MB Plattenplatz zusätzlich benutzt.
    Vormals nicht ausgewähltes Paket postgresql-9.3 wird gewählt.
    (Lese Datenbank ... 457272 Dateien und Verzeichnisse sind derzeit installiert.)
    Vorbereitung zum Entpacken von .../postgresql-9.3_9.3.4-1.pgdg14.04+1_amd64.deb ...
    Entpacken von postgresql-9.3 (9.3.4-1.pgdg14.04+1) ...
    Trigger für postgresql-common (154.pgdg14.04+1) werden verarbeitet ...
    Building PostgreSQL dictionaries from installed myspell/hunspell packages...
      de_at
      de_ch
      de_de
      en_au
      en_ca
      en_gb
      en_us
      en_za
    Removing obsolete dictionary files:
    postgresql-9.3 (9.3.4-1.pgdg14.04+1) wird eingerichtet ...
    Use of uninitialized value $owneruid in getpwuid at /usr/bin/pg_createcluster line 277.
    Error: clusters must not be owned by root
    Error: could not create default cluster. Please create it manually with

      pg_createcluster 9.3 main --start

    or a similar command (see 'man pg_createcluster').
    update-alternatives: /usr/share/postgresql/9.3/man/man1/postmaster.1.gz wird verwendet, um /usr/share/man/man1/postmaster.1.gz (postmaster.1.gz) im Auto-Modus bereitzustellen
     * No PostgreSQL clusters exist; see "man pg_createcluster"
tobias47n9e
sumber
1
Apa output dari ls -la /var/lib/postgresql?
Salem
@salem - direktori sebenarnya tidak ada (lihat edit di atas). Itu aneh setelah instalasi baru.
tobias47n9e
1
Aneh ... Bisakah Anda menghapusnya lagi ( apt-get purge postgresql-9.3), menginstalnya, dan memposting hasilnya apt-get install postgresql-9.3? Mungkin ada petunjuk di sana. Periksa juga apakah Anda dapat memperoleh informasi yang relevan dari /var/log/postgresql/postgresql-9.3-main.log.
Salem
@salem - beberapa baris terakhir tidak terlihat bagus.
tobias47n9e

Jawaban:

29

CATATAN : Saya berasumsi Anda tidak memiliki data penting di sana atau Anda memiliki cadangannya. Jika bukan itu masalahnya sebelum melakukan sesuatu, Anda harus membuat cadangan data Anda!

Tampaknya, karena alasan tertentu, itu tidak menciptakan pengguna yang diperlukan saat menginstal. Anda dapat mencoba membuatnya secara manual dan melihat bagaimana hasilnya:

$ sudo useradd -U -s /bin/bash postgres

Setelah itu jalankan perintah yang aptdisarankan sebelumnya:

$ sudo pg_createcluster 9.3 main --start
Salem
sumber