CentOS 7 pg_ctl:无法访问目录“/var/lib/pgsql/data”:权限被拒绝

Ric*_*h_F 5 postgresql centos7 pg-ctl

PostgreSQL 10.6 和 CentOS 7

pg_ctl status
pg_ctl: could not access directory "/var/lib/pgsql/data": Permission denied`
Run Code Online (Sandbox Code Playgroud)

鉴于拥有所有权,无法pg_ctl访问此内容? /var/lib/pgsql/datapostgres:postgres

drwx------   3 postgres postgres   94 Nov 14 06:43 pgsql
Run Code Online (Sandbox Code Playgroud)

如何在不产生漏洞的情况下修复此问题?为什么这会抛出错误?

附加信息(编辑):

su - postgres
cd /var/lib
/var/lib/pgsql: drwx------  3 postgres postgres   94 Nov 14 06:43 pgsql
/var/lib/pgsql/10: drwx------ 4 postgres postgres  33 Nov 14 06:38 10
/var/lib/pgsql/10/data:  drwx------ 20 postgres postgres 4096 Nov 15 03:47 data
Run Code Online (Sandbox Code Playgroud)

Lau*_*lbe 3

在 UNIX 中,每个进程都以启动可执行文件的用户的权限运行,而不是以可执行文件的所有者的权限运行(除非设置了SETUID标志)。

所以谁拥有并不重要,但运行它时pg_ctl你必须是用户。postgres