尽管定义了PGPASSFILE var,psql仍会提示输入用户密码

时间:2014-06-25 22:00:08

标签: postgresql ubuntu-10.04 psql

我声明了一个环境变量PGPASSFILE,指向我.pgpass文件的位置。

>echo $PGPASSFILE
/somedir/.pgpass

根据this doc,文件的权限标记适合不将文件公开给其他任何人:

>ls -la /somedir
drwxr-xr-x 2 root root 4096 2014-06-25 17:40 .
drwxr-xr-x 6 root root 4096 2014-06-25 16:37 ..
-rw------- 1 root root  354 2014-06-25 16:43 .pgpass
-rw-r--r-- 1 root root   30 2014-06-25 16:37 .pgpass_path

该文件看起来正确:

  1 localhost:*:*:postgres:blabla
  2 localhost:*:somedb:somedb_master:blabla
  3 localhost:*:somedb:somedb_rw:blabla

但是,当我尝试调用psql时,它仍然提示我输入密码:

>psql -h localhost -d somedb -U somedb_rw
Password for user somedb_rw:

输入密码后连接成功,但不会提示我。知道什么可能是错的吗?这是在Ubuntu 10.04 VM上。在我的Mac主机上,相同的配置无需提示即可运行。

0 个答案:

没有答案