【问题标题】:PostgreSQL permissions issue after upgrading to OS X Lion升级到 OS X Lion 后的 PostgreSQL 权限问题
【发布时间】:2011-10-13 15:06:50
【问题描述】:

升级到 Lion 后,尝试启动 Postgres 服务器时出现以下错误:

pg_ctl:无法打开 PID 文件“/usr/local/var/postgres/postmaster.pid”:权限被拒绝

我也尝试重新运行initdb命令,但遇到了类似的问题:

initdb:无法访问目录“/usr/local/var/postgres”:权限被拒绝

如果重要的话,PostgreSQL 是通过 Homebrew 安装的。运行 brew info postgresql 会产生预期的结果(版本、摘要文档)。

【问题讨论】:

  • Matt - 是的,我看到了这个问题,但我不认为这是路径问题。运行 which psql 产生 /usr/local/bin/psql,这应该是正确的 Homebrew 路径。我已经在 .bash_login 中设置了正确的路径导出。另外,我的问题是启动服务器,而不是连接。
  • 这些问题不涉及“路径问题”。他们处理权限问题,因为 postgres 用户已被删除
  • 第一个问题(主要)涉及路径,第二个问题涉及删除 postgres 用户。 Homebrew 似乎也被冲洗掉了,所以我要卸载/重新安装,看看是否可行。

标签: macos postgresql osx-lion


【解决方案1】:

好吧,事实证明解决方案非常简单。我将 /usr/local/var 上的组更改为人员(来自 wheel)并将所有权(chown -R)更改为我的系统帐户(来自 root)。

之后,postgres 启动正常。

更改这些权限我有点紧张,但我的 /usr/local/var 中唯一的东西是一个 postgres 目录,所以一切都应该很好。如果您在 /usr/local/var 中有其他目录/文件,也许在 chown'ing 时不要使用 -R 标志?

Homebrew ruby​​ 安装程序脚本将 /usr/local/var 组更改为人员,因此在升级到 Lion 时必须撤消该操作。不确定所有权是 root 而不是我的系统帐户...

【讨论】:

  • 一定要确定:你做了chgrp -R staff /usr/local/var和chown -R [username here] /usr/local/var,对吧?
【解决方案2】:

sudo chown -R $(whoami) /usr/local/var

【讨论】:

    猜你喜欢
    • 2012-02-03
    • 1970-01-01
    • 1970-01-01
    • 2011-12-08
    • 2023-04-03
    • 2012-07-29
    • 1970-01-01
    • 2012-03-16
    • 2011-10-09
    相关资源
    最近更新 更多