问题描述
每当我使用以下方法安装PostgreSQL服务器时,我都会尝试安装和运行该服务器
sudo apt-get install postgresql
我收到以下错误:
* Starting PostgreSQL 9.1 database server
* The PostgreSQL server failed to start. Please check the log output:
2014-04-03 17:18:16 PDT FATAL: could not create lock file "/var/run/postgresql/.s.PGSQL.5432.lock": Permission denied
[fail]
invoke-rc.d: initscript postgresql, action "start" failed.
dpkg: error processing postgresql-common (--configure):
subprocess installed post-installation script returned error exit status 1
dpkg: dependency problems prevent configuration of postgresql-9.1:
postgresql-9.1 depends on postgresql-common (>= 115~); however:
Package postgresql-common is not configured yet.
dpkg: error processing postgresql-9.1 (--configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of postgresql:
postgresql depends on postgresql-9.1; however:
Package postgresql-9.1 is not configured yet.
dpkg: error processing postgresql (--configure):
dependency problems - leaving unconfigured
No apport report written because the error message indicates its a followup error from a previous failure.
Errors were encountered while
processing:
postgresql-common
postgresql-9.1
postgresql
E: Sub-process /usr/bin/dpkg returned an error code (1)
我猜这是一个权限问题;我该如何解决呢?我正在运行Ubuntu 13.10
最佳方法
检查/var /run /postgresql的所有者并将其设置为postgres(如果尚未这样做),请键入
sudo chown -R postgres:postgres /var/run/postgresql
如果您所运行的用户没有sudo特权,则
1)更改为root
su -
2)将/var /run /postgresql的所有权更改为postgres用户和postgres组
chown -R postgres:postgres /var/run/postgresql
在Ubuntu 14.04上安装postgres并更改所有权后,我遇到了同样的问题,从而为我解决了这个问题。
次佳方法
锁定文件最终位于/var/run
中。要修复此目录的权限,我需要运行sudo chmod a+w /var/run/postgresql
。