无法在PostgreSQL 9.5中运行psql
我正在Ubuntu 16.04 LTS上使用PostgreSQL 9.5。 当我键入无法在PostgreSQL 9.5中运行psql,postgresql,ssl,psql,postgresql-9.5,Postgresql,Ssl,Psql,Postgresql 9.5,我正在Ubuntu 16.04 LTS上使用PostgreSQL 9.5。 当我键入psql时,我收到以下错误: psql: could not connect to server: No such file or directory Is the server running locally and accepting connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"? 在检查/var
psql
时,我收到以下错误:
psql: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?
在检查/var/log/postgresql/postgresql-9.5-main.log
中的日志时,我发现错误如下:
2018-11-26 13:17:41 IST[3508-1]致命:无法访问私钥文件“/etc/ssl/private/ssl cert snakeoil.key”:权限被拒绝
以下是/etc/ssl/private
和ssl cert snakeoil.key
文件的权限:
vivek@vivek-ThinkPad-E480:~$ ls -l /etc/ssl
total 36
drwxr-xr-x 2 root root 20480 Nov 22 13:06 certs
-rwxr-xr-x 1 root root 10835 Dec 8 2017 openssl.cnf
drwxr--r-- 2 root ssl-cert 4096 Nov 22 13:06 private
vivek@vivek-ThinkPad-E480:~$ sudo ls -l /etc/ssl/private
total 4
-rw-r----- 1 root ssl-cert 1704 Nov 22 13:06 ssl-cert-snakeoil.key
postgres
用户也被添加到组ssl证书
vivek@vivek-ThinkPad-E480:~$ getent group ssl-cert
ssl-cert:x:112:postgres
注意:我发现/var/lib/postgresql/9.5/main
中没有server.key
我也在网上发布了这篇文章,但还没有回应
有谁能指导我设置权限的正确方向吗?这永远无法工作,您的服务器将无法启动,因为操作系统用户
postgres
无权访问etc/ssl/private
中的文件
要允许组ssl cert
中的用户访问目录中的文件,请运行
chmod g+x /etc/ssl/private
在进行此操作时,请确保/etc/ssl
具有所需的权限
要测试一切是否正常,请变成user
postgres
并尝试读取文件。您确定服务器正在运行吗?对于本地连接,它甚至可能不需要SSL。@当我运行sudo service postgresql status
时,我会获得active
状态,如图所示。奇怪的是,当我运行sudonetstat-lntp时,我看不到任何服务在端口5432
上运行。这正在运行。g+x
到底是做什么的?我已经将postgres
添加到组ssl cert
,并且我还注意到,当我重新启动sudo服务postgresql
时,日志正在创建中。因此,这意味着服务器从未重新启动过(不确定它是否一开始就启动过)。奇怪的是,它没有在终点站报告任何事情。啊,我的错!对于组ssl证书
,5,即r-x
,对于其他组ssl证书
,0,即--
。再次感谢。