Atu*_*ind 25 linux postgresql openerp odoo private-key
我使用命令启动PostgreSQL:
$ sudo /etc/init.d/postgresql start
Run Code Online (Sandbox Code Playgroud)
Pg没有启动.报告的错误是:
* Starting PostgreSQL 8.4 database server
* The PostgreSQL server failed to start. Please check the log output:
2010-01-21 22:10:00 PST FATAL: private key file "server.key" has group or world access
2010-01-21 22:10:00 PST DETAIL: File must be owned by the database user or root, must have no write permission for "group", and must have no permissions for "other".
Run Code Online (Sandbox Code Playgroud)
......当我尝试访问psql的postgres与用户:
$ sudo su postgres
$ psql
Run Code Online (Sandbox Code Playgroud)
它给了我一个错误:
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"?
Run Code Online (Sandbox Code Playgroud)
Atu*_*ind 49
我用它解决了它..
1)进入相关目录(使用> locate server.key)
2)备份旧的server.key链接.
3)将ssl-cert-snakeoil.key复制到server.key
4-5)将其所有者和团体更改为postgres
6)确保权限为700或740(根据错误消息的要求)
我的Ubuntu 12.04和postgresql-8.3的配方:
sudo cd /var/lib/postgresql/8.3/main/
sudo mv server.key server.key-0
sudo cp /etc/ssl/private/ssl-cert-snakeoil.key server.key
sudo chown postgres server.key
sudo chgrp postgres server.key
sudo chmod 740 server.key
sudo /etc/init.d/postgres-8.3 start
Run Code Online (Sandbox Code Playgroud)
现在它的工作!感谢你的支持.
如错误消息所示,修复密钥文件的权限server.key.服务器以用户"postgres"运行,该用户应该拥有该文件.尝试
#cd <path/to/pgsql/data>
#chown postgres server.key
#chmod 0640 server.key
Run Code Online (Sandbox Code Playgroud)
小智 6
如何不硬复制服务器密钥并将其留在哪里和喜欢它.
相反,它更简单:
更改PostgreSQL数据目录中的"server.key"链接权限(其为私有certificate.key文件所在的位置)
# cd /var/lib/postgresql/9.1/main/
至
# chown -R postgres:postgres server.key`
Run Code Online (Sandbox Code Playgroud)
并确保原始证书在
# /etc/ssl/private/ssl-cert-snakeoil.key
Run Code Online (Sandbox Code Playgroud)
有这些属性,通过设置它们
# chmod 640 ssl-cert-snakeoil.key
# chown root:ssl-cert ssl-cert-snakeoil.key
Run Code Online (Sandbox Code Playgroud)
此解决方案已在Debian上测试过.请记住,CentOS可以使用SELinux扩展用户权限管理,可以查看
# ls -laZ *
Run Code Online (Sandbox Code Playgroud)