Ubuntu 14.04 上的 PostgreSQL 安装失败

PostgreSQL installation failed on Ubuntu 14.04

我最近从我的电脑上卸载了 postgresql。我尝试再次安装它,但遇到了一些问题。我试图像这样再次完全卸载它: 我找到了所有与 postgres 相关的包:

$ dpkg -l | grep postgres

他们我删除了所有的包和相关文件夹:

$ sudo apt-get --purge remove postgresql postgresql-9.3 postgresql-client-9.3 postgresql-client-common postgresql-common postgresql-contrib-9.3

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

我尝试重新安装,但安装后无法访问 postgres 用户。

$ sudo apt-get install postgresql postgresql-contrib
$ sudo -i -u postgres
sudo: unable to change directory to /home/postgres: No such file or directory

如果我访问 root,我就可以访问 postgres,但是会发生这样的事情:

$ sudo su -
$ su - postgres
No directory, logging in with HOME=/
postgres@rafael-pc:/$ psql
psql (9.3.9)
Type "help" for help.
postgres=# \q
could not save history to file "/home/postgres/.psql_history": No such file or directory

我不知道发生了什么。我试过很多次卸载它,但是当我重新安装它时总是出现某种错误。

这里只是一个猜测,但在我看来问题确实在于没有 /home/postgres 目录。我不确定在删除它的卸载过程中可能发生了什么,但看起来这就是你列出的两个步骤中错误的原因。

你能试试这个(或这些步骤的一些近似,创建那个目录并确保它归 postgres 用户所有)吗?

# sudo mkdir /home/postgres
# sudo chown postgres /home/postgres