我尝试使用age目录中的make PG_CONFIG=../postgresql-11.17/bin/pg_config installcheck
运行PostgreSQL的安装检查,收到错误消息“pg_regress:initdb failed”,并显示DETAIL消息,说明数据目录的权限无效。我还检查了initdb.log文件的内容,其中显示:
“正在运行引导脚本... 2023-04-11 09:48:37.706 WAT [1262]致命:数据目录“/mnt/c/Users/HP/documents/the_age_project/age/./regress/instance/data”具有无效权限2023-04-11 09:48:37.706 WAT [1262]详细信息:权限应为u=rwx(0700)或u=rwx,g=rx(0750)。子进程已退出,退出代码为1 initdb:数据目录“/mnt/c/Users/HP/documents/the_age_project/age/./regress/instance/data”未应用户请求删除“
任何人都可以建议一个解决方案或故障排除步骤来解决这个问题?任何帮助将不胜感激。
我尝试将数据目录的权限更改为u=rwx和g=rx,但错误仍然存在。我还检查了initdb.log文件的内容,但无法确定问题的原因。
3条答案
按热度按时间shstlldc1#
如果你成功安装了PostgreSQL,那么我认为应该没有问题。但是,如果你没有,那么我建议你在运行
installcheck
之前运行下面的命令sudo make PG_CONFIG=../postgreql-11.17/bin/pg_config install
(之后没有必要运行这个)。如果这个问题仍然存在,我想你必须从头开始安装AGE。qvk1mo1f2#
感谢大家的帮助,我发现尝试在Windows文件系统中更改权限不起作用,因为默认情况下它们不会保留Linux权限。然而,有一种方法可以实现这一点。通过创建(使用sudo)
/etc/wsl.conf
并添加以下行:来源👉https://superuser.com/questions/1323645/unable-to-change-file-permissions-on-ubuntu-bash-for-windows-10
pgky5nke3#
您可能需要检查是否有一个PostgreSQL进程在后台运行。|grep postgres.然后尝试停止并重新安装后更改thr文件的权限.您可能需要使用make不sudo make与安装检查..并使用sudo make安装...最后一件事确保权限设置正确的linux