我将CentOS 7与EPEL Repo一起使用,并安装了Postgresql 9.6,这是Webshop应用程序所需要的。现在,一些推进安装脚本希望执行pg_ctlcluster
。安装以错误结束:
Exception: sudo: pg_ctlcluster: command not found
我检查了/usr/pgsql-9.6/bin
,只有pg_ctl
,但没有pg_ctlcluster
。有人说pg_ctl
和pg_ctlcluster
并不完全相同。 pg_ctlcluster
似乎是Ubuntu的东西。它用于Postgres Cluster(...)。
您有什么想法替换pg_ctlcluster
的最佳方法是什么?
仅复制/符号链接pg_ctlcluster-> pg_ctl听起来不应该如此。也许有人拥有合适的RPM。
答案 0 :(得分:0)
pg_ctlcluster
不是核心PostgreSQL的一部分,但是PGDG Debian安装软件包附带了该名称的附加实用程序命令。
因此,该推进安装脚本是为Debian或Ubuntu Linux编写的。
您最好向脚本提供者询问支持基于Redhat的Linux发行版的脚本。
答案 1 :(得分:0)
我不想过度使用整个PHP安装脚本,因此此修复程序对我有用:
- $process = $this->getProcess(sprintf('sudo pg_ctlcluster %s main restart --force', $postgresVersion));
+ $process = $this->getProcess(sprintf('sudo -i -u postgres /usr/pgsql-9.6/bin/pg_ctl %s restart', NULL));
+ $process = $this->getProcess(sprintf('exit', NULL));
不适用于生产环境