无法使用用户 postgres 启动 psql “无法将目录更改为 /home/user ”

Ste*_*fan 18 postgresql permissions psql

我犯了一个愚蠢的错误。我想为文件夹设置 postgres 权限,以便从数据库导出数据。所以我设置了类似的东西sudo chmod 777 -u postgres /home/user,然后我的主分区只有 root 权限,没有 root 权限什么都不能工作。我通过使用解决了这个问题sudo chown user /home/user,然后在Linux上的文件管理器中手动设置权限。这是非常愚蠢的,我不太了解如何为目录和用户分配权限。

现在的问题是,我无法再连接到我的数据库。

 ~ $ sudo -u postgres psql
[sudo] password for user: 
could not change directory to "/home/user"
psql: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?
Run Code Online (Sandbox Code Playgroud)

我想我想连接到 postgres 用户无法读取的文件夹中。

重新启动服务器也sudo service postgresql restart不起作用。

我正在使用 PostgreSQL 9.1。

Ste*_*fan 18

我在亲戚的帮助下解决了这个问题。

第一个问题是我的/home/home/user文件夹没有正确的权限。

我们使用 正确设置它们chmod og+rX /home /home/user

然后我忘记了,我PGDATA/home/user. 并且该目录的权限错误。所以我们为用户 postgres 再次设置它们chown postgres:postrgres -R /home/user/PGDATA

我决定放置该PGDATA目录是/home/user因为在使用 PostGIS/PostgreSQL 数据库进行栅格数据查询期间会产生巨大的日志文件。有时我使用 Sublime Text 2 进行查询,然后在不停止数据库进程的情况下退出它们,然后日志文件变得越来越大,空间不足,什么都不起作用了。

  • `chmod og+X /home /home/user` 对于我来说似乎就足够了。 (3认同)