Debian Squeeze 上 9.1 和 9.3 版的 pg_createcluster ssl 证书行为不同

Debian Squeeze 上 9.1 和 9.3 版的 pg_createcluster ssl 证书行为不同

我认为在创建 9.3 集群时,我发现了 pg_createcluster 中的一个错误。首先,我的配置是:Debian Squeeze,带有 squeeze-backports 中的 PostgreSQL 9.1 和 apt.postgresql.org(官方存储库)中的 PostgreSQL 9.3。

在已经运行的 9.1 集群旁边安装 9.3 源和 PG 9.3 服务器一切顺利,但在创建新集群时我遇到了以下无法解释的问题。

当创建另一个 9.1 集群时,如下所示: pg_createcluster --locale=de_DE.UTF-8 9.1 test 集群已创建,并且 snakeoil 证书和密钥被符号链接到 /var/lib/postgresql/9.1/test/,就像man pg_createcluster告诉我的那样。

但是执行此操作时: pg_createcluster --locale=de_DE.UTF-8 9.3 test 集群也会创建但无法启动。在默认配置中,ssl 为 true,但 pg_createcluster 不会像 9.1 那样为 snakeoil ssl 证书创建 2 个符号链接。因此,在尝试启动 9.3 集群时,它会中止并抱怨 server.crt 丢失。

有人知道为什么吗?我的意思是,我可以自己用 puppet 创建 2 个符号链接,但这不是最好的解决方案。这是一个错误还是为什么会发生这种情况!?

答案1

这是我的错。从 9.3 版开始,PostgreSQL 不再将文件符号链接到数据文件夹,而是使用以下两个配置选项 - 这两个选项更简洁。

ssl_cert_file = '/etc/ssl/certs/ssl-cert-snakeoil.pem' # (change requires restart) ssl_key_file = '/etc/ssl/private/ssl-cert-snakeoil.key' # (change requires restart)

相关内容