gpt4 book ai didi

macos - PostgreSQL 用户配置如何在 MacOSX 上工作?

转载 作者:行者123 更新时间:2023-11-29 13:01:21 29 4
gpt4 key购买 nike

我刚刚安装了 Postgres 9.4 ( EnterpriseDB package ),我对系统中看到的用户感到困惑。

如果我打印 /etc/passwd 我会看到 _postgres 用户:

$ cat /etc/passwd | grep postgres
_postgres:*:216:216:PostgreSQL Server:/var/empty:/usr/bin/false

但是如果我尝试用它登录,我仍然是我的用户。

$ su _postgres
Password:
$ whoami
motta

奇怪的是我可以使用 postgres 用户登录,即使这没有在 /etc/passwd 中列出

$ su postgres
Password:
$ whoami
postgres

这对我来说真的很奇怪。
谁能解释一下这是怎么回事?

谢谢

最佳答案

_postgres:*:216:216:PostgreSQL Server:/var/empty:/usr/bin/false

/etc/passwd 条目的最后一个组成部分是用于该用户的 shell。如果它是类似 /bin/sh 的东西,它会像你期望的那样工作(与没有下划线的 postgres 的条目比较。编辑:实际上没有,不要打扰,因为它可能不存在)。

因为它是 /usr/bin/false,它会立即终止并将控制权交还给调用者,而不是等待 shell 命令。

这意味着 _postgres 作为用户不应该用于 shell 访问。

关于macos - PostgreSQL 用户配置如何在 MacOSX 上工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29117429/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com