如何阻止 Homebrew 以 root 身份安装 Postgres?
How can stop Homebrew installing Postgres as root?
我有一个 Postgres 权限问题,每次我 brew install postgres 都会以 root 用户身份执行,导致 initdb
、createdb
和/或我尝试的任何其他操作的权限被拒绝。
我 sudo chown
/usr/local/var/postgres
的所有权,它似乎改变了并允许我从 cmd 行手动进入目录,然后只包含一个 server.log
文件列出错误:
postgres cannot access the server configuration file "/usr/local/var/postgres/postgresql.conf": No such file or directory
然后我去 initdb
然后它 returns:
The files belonging to this database system will be owned by user "jamesbkemp".
This user must also own the server process.
The database cluster will be initialized with locale "en_GB.UTF-8".
The default database encoding has accordingly been set to "UTF8".
The default text search configuration will be set to "english".
Data page checksums are disabled.
initdb: directory "/usr/local/var/postgres" exists but is not empty
If you want to create a new database system, either remove or empty
the directory "/usr/local/var/postgres" or run initdb
with an argument other than "/usr/local/var/postgres"
然后我回去查看/usr/local/var/postgres
发现所有者已经变回root了。经过几个小时的思考,我真的不知道发生了什么事。大家有什么想法吗?
以非 root 身份安装 Postgresql 即使不是不可能,也是一件痛苦的事情,因为它不是这样设计的:它是一个多用户服务。
此处相同:apache2 作为非 root - 您将不得不自己构建服务器并更改大量配置。
让我补充一点,对于经验丰富的数据中心操作员来说,这是一个奇怪的想法,就像在您的公寓里驾驶赛车一样。
我有一个 Postgres 权限问题,每次我 brew install postgres 都会以 root 用户身份执行,导致 initdb
、createdb
和/或我尝试的任何其他操作的权限被拒绝。
我 sudo chown
/usr/local/var/postgres
的所有权,它似乎改变了并允许我从 cmd 行手动进入目录,然后只包含一个 server.log
文件列出错误:
postgres cannot access the server configuration file "/usr/local/var/postgres/postgresql.conf": No such file or directory
然后我去 initdb
然后它 returns:
The files belonging to this database system will be owned by user "jamesbkemp".
This user must also own the server process.
The database cluster will be initialized with locale "en_GB.UTF-8".
The default database encoding has accordingly been set to "UTF8".
The default text search configuration will be set to "english".
Data page checksums are disabled.
initdb: directory "/usr/local/var/postgres" exists but is not empty
If you want to create a new database system, either remove or empty
the directory "/usr/local/var/postgres" or run initdb
with an argument other than "/usr/local/var/postgres"
然后我回去查看/usr/local/var/postgres
发现所有者已经变回root了。经过几个小时的思考,我真的不知道发生了什么事。大家有什么想法吗?
以非 root 身份安装 Postgresql 即使不是不可能,也是一件痛苦的事情,因为它不是这样设计的:它是一个多用户服务。
此处相同:apache2 作为非 root - 您将不得不自己构建服务器并更改大量配置。
让我补充一点,对于经验丰富的数据中心操作员来说,这是一个奇怪的想法,就像在您的公寓里驾驶赛车一样。