我相信我最终混淆了/ etc / ssl目录树中的权限,因为最后一次修改是在11月18日,也就是我无法使PostgreSQL工作的第二天。
当我输入
sudo服务postgresql启动
我懂了
严重:无法访问私钥文件“ /etc/ssl/private/ssl-cert-snakeoil.key”:权限被拒绝
检查权限
〜$ sudo -i〜
$ ls -la / etc / ssl / private
drw-r ----- 2 root ssl-cert 4096十一月18 21:10。
-rwxrwxrwx 1 postgres postgres 1704设置4 11:26 ssl-cert-snakeoil.key
检查组组成
〜$ id postgres
uid = 114(postgres)gid = 127(postgres)组= 127(postgres),114(ssl-cert)
我还注意到/ etc / ssl / certs /中的ssl-cert-snakeoil.pem文件没有符号链接。我不知道这有什么不同...
请帮我解决这个问题。
谢谢。
编辑:应该将其发布在serverfault上吗?
尝试将postgres
用户添加到组ssl-cert
运行以下代码以修复上述问题并修复权限
# > It happened to me and it turned out that I removed erroneously the postgres user from "ssl-cert" group, set it back with sudo gpasswd -a postgres ssl-cert # Fixed ownership and mode sudo chown root:ssl-cert /etc/ssl/private/ssl-cert-snakeoil.key sudo chmod 740 /etc/ssl/private/ssl-cert-snakeoil.key # now postgresql starts! (and install command doesn't fail anymore) sudo /etc/init.d/postgresql start
加布勒鲁治