2016-07-20 116 views
6

我试图创建和Postgres的一个新的数据库更改目录。当我尝试使用以下命令加载数据库:的Postgres无法在Ubuntu 14.04

sudo -u postgres psql 

我得到此错误。

无法改变目录 “/首页/笔记本电脑/ Dropbox的/ JS/HW/HAS-多对一关系”:权限被拒绝 PSQL(9.3.13)输入 “help” 的帮助。

我试图以root身份更改nautilus中的文件夹权限。此命令将按预期方式工作,当文件夹更改为根(cp和cd /)任何想法?

回答

7

这听起来像你的shell CWD(当前工作目录)是

/home/laptop/Dropbox/js/hw/Has-Many-Relationships 

,并认为“Postgres的用户没有访问该目录。

但是,下一行,你就好像是谈得来运行PostgreSQL服务器,尽管你不同意下一行。

这可能是有益的,如果这是你的本地计算机上的“完全暴殄天物”数据库实例(笔记本电脑):

http://johnmee.com/how-to-reinstall-postgresql-on-ubuntu

此方法将完全清除所有的Postgres包(而不仅仅是虚拟包)并允许您重新安装PostgreSQL。

一旦你得到了一个干净的安装PostgreSQL的,试试这个,因为根:

# cd ~postgres/ 
# sudo -u postgres psql 

,看看错误不会重复。

希望有帮助!

+2

的感谢!它似乎在工作。非常奇怪的是,postgres是有权访问但无法使用该访问的用户。 –

+0

w00t!很高兴我能帮上忙。请记住,您正在以'postgres'用户身份运行,并且该用户只有权写入其自己的主目录。该错误信息并不是关于连接到数据库本身的问题,而是本地CLI客户端的问题,作为'postgres'用户运行,没有权限访问目录根。 –

+0

@JesseAdelman我如何让postgres用户访问我的主目录中的某个文件夹?我想通过一个符号链接将数据存储在另一个硬盘上,所以我认为这是我可能需要的。 –