正在启动 PostgreSQL 服务器,postgres 用户未知

正在启动 PostgreSQL 服务器,postgres 用户未知

我正在尝试在 Ubuntu 14.04 上启动 PostgreSQL 服务器 (9.3)。我正在遵循以下标准教程:https://help.ubuntu.com/community/PostgreSQL

从 13.10 更新到 14.04 后,我清除了 PostgreSQL 安装,因为更新后我在 pgadmin 内部遇到了各种困难。

全新安装后使用此命令:

    sudo -u postgres psql postgres

返回:

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

我找不到任何解决方案,但我不得不承认我只使用 postgresql 来存储我的 GIS 数据库,而且自从遇到所有这些问题以来我感到不知所措。

编辑:

输出ls -la /var/lib/postgresql是“无法访问 /var/lib/postgresql:未找到文件或目录”(从德语翻译而来

编辑2(清除并重新安装):

    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

笔记:我假设您那里没有任何重要数据,或者您有一些备份。如果不是这种情况,在做任何事情之前,您应该创建数据的备份!

似乎由于某种原因,安装时没有创建所需的用户。您可以尝试手动创建它并查看其运行情况:

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

之后运行之前建议的命令apt

$ sudo pg_createcluster 9.3 main --start

相关内容