Bắt đầu máy chủ PostgreSQL, người dùng postgres không xác định


8

Tôi đang cố gắng khởi động máy chủ PostgreSQL (9.3) trên Ubuntu 14.04. Tôi đang làm theo hướng dẫn tiêu chuẩn này: https://help.ubfox.com/community/PostgreSQL

Sau khi cập nhật từ 13.10 đến 14.04, tôi đã xóa cài đặt PostgreSQL vì nhiều khó khăn tôi gặp phải trong pgadmin sau khi cập nhật.

Sử dụng lệnh này sau khi cài đặt mới:

    sudo -u postgres psql postgres

trả về:

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

Tôi không thể tìm thấy bất kỳ giải pháp nào cho vấn đề này, nhưng tôi phải thừa nhận rằng tôi chỉ sử dụng postgresql để lưu trữ cơ sở dữ liệu GIS của mình và tôi khá choáng ngợp kể từ khi gặp phải tất cả những vấn đề này.

Biên tập:

Đầu ra của ls -la / var / lib / postgresql là "Không thể truy cập / var / lib / postgresql: Không tìm thấy tệp hoặc thư mục" ( dịch từ tiếng Đức )

Chỉnh sửa 2 (thanh trừng và cài đặt lại):

    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"

1
Đầu ra của là ls -la /var/lib/postgresqlgì?
Salem

@salem - thư mục thực sự bị thiếu (xem chỉnh sửa ở trên). Đó là lạ sau khi cài đặt mới.
tobias47n9e

1
Thật lạ ... Bạn có thể gỡ bỏ nó một lần nữa ( apt-get purge postgresql-9.3), cài đặt nó và đăng kết quả đầu ra apt-get install postgresql-9.3không? Có thể có bất kỳ manh mối nào ở đó. Ngoài ra kiểm tra nếu bạn có thể nhận được bất kỳ thông tin có liên quan từ /var/log/postgresql/postgresql-9.3-main.log.
Salem

@salem - một vài dòng cuối không nhìn tốt.
tobias47n9e

Câu trả lời:


29

LƯU Ý : Tôi giả sử bạn không có bất kỳ dữ liệu quan trọng nào ở đó hoặc bạn có một số bản sao lưu của nó. Nếu đó không phải là trường hợp trước khi làm bất cứ điều gì bạn nên tạo một bản sao lưu dữ liệu của bạn!

Dường như, vì một số lý do, nó không tạo ra người dùng cần thiết trong khi cài đặt. Bạn có thể thử tạo nó bằng tay và xem cách nó diễn ra:

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

Sau đó chạy lệnh được aptđề xuất trước đó:

$ sudo pg_createcluster 9.3 main --start
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.