3

我是 postgreSQL 和 Linux 的新手。我刚刚安装它,发现它创建了自己的用户 postgres。我很确定这一点,因为您甚至可以在几乎所有 linux 发行版(针对 ubuntu 和 fedora)中以 GUI 模式以该用户身份登录。但是您不会在主文件夹中找到与此用户相关的单个目录。猫 /etc/passwd | grep /主页 | cut -d: -f1 尝试上面的方法来查看所有用户,你不会在那里有 postgres。要更改 postgres 的密码,请使用 su 切换到 root 并使用 passwd postgres 更改密码,然后使用切换用户登录 gui。该帐户功能齐全。但是为什么 HOME 文件夹中没有这个用户的目录呢?请在答案中给出 linux 和 postgresql 的完整工作细节。提前致谢!!:)

4

1 回答 1

5

PostgreSQL 有一个专用用户是一种安全措施,因此数据库进程可以使用该用户的(有限)特权运行,而不是作为root运行。

您是否可以实际使用该用户登录,以及该用户的主目录应该是什么,是软件包维护者/相关 Linux 发行版的决定。由于不应将 postgresql 用户(ab-)用作另一个用户(具有自己的桌面设置、用户数据等),我不会质疑不给它一个家的智慧,而是为什么他能够登录首先。

编辑:由于不了解 PostgreSQL 的细则,并且对你的问题的措辞有点困惑,我争论了一般情况。Ignacio 指出,您必须真正破坏系统(使用 root 权限解锁用户密码)才能postgresql 用户身份登录。所以答案可以更简单地说:

该用户没有目录,/home因为您不应该以该用户身份登录。它用于在没有 root 权限的情况下运行数据库进程,仅此而已。

(请注意,您可以使用相同的技术以 userman或 userlp或 user身份登录mail。您可以,但这没有意义,解锁这些用户的密码实际上会削弱系统的安全性。)

于 2013-05-22T13:31:33.120 回答