gpt4 book ai didi

ruby-on-rails - 即使使用 sudo,如何拒绝访问 postgres 目录?

转载 作者:行者123 更新时间:2023-11-29 14:20:43 26 4
gpt4 key购买 nike

我需要访问 pg_hba.conf 以尝试修复我损坏的 postgres 开发数据库,​​该数据库在 RAILS_ENV=development rails s of

上给出错误
PG::ConnectionBad
fe_sendauth: no password supplied

这篇文章至少似乎表明这种访问可能有所帮助:PG::ConnectionBad: fe_sendauth: no password supplied

问题是,即使我知道路径

/Library/PostgreSQL/9.3/data/pg_hba.conf

当我实际尝试 cd 进入它时:

cd /Library/PostgreSQL/9.3/data/

我得到:cd:cd:13: permission denied:/Library/PostgreSQL/9.3/data/

看似显而易见的解决方法是使用 sudo,所以我尝试这样做:

sudo cd /Library/PostgreSQL/9.3/data/

什么也没有发生。从字面上看,下一行表明我仍然原地不动。 sudo如何被拒绝?我该如何访问此文件或解决我的问题?

谢谢!

最佳答案

这个:

sudo cd /Library/PostgreSQL/9.3/data/

sudo 下运行 cd 命令。 sudo 实际上运行 shell 的新实例(/bin/sh 或其他),然后在 shell 中运行命令。

当前目录是当前进程的一个属性。它由新的子进程继承,但它的更改不会传播到父进程。

您所做的相当于:

sh -c 'cd /tmp'

它创建一个新的 shell,cd 到一个位置,然后退出。 cd 的效果只影响那个 shell,所以它实际上什么也没做。

您应该做的是使用 sudo 通过绝对路径在文本编辑器中打开文件,例如:

sudo nano /Library/PostgreSQL/9.3/data/pg_hba.conf

(nano 是一个简单且用户友好的命令行文本编辑器;鉴于这个问题,我假设您不知道如何使用 vi。)

关于ruby-on-rails - 即使使用 sudo,如何拒绝访问 postgres 目录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28391271/

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