无法运行pg_dump,除非它来自没有“sudo”的命令行

时间:2016-03-19 16:48:29

标签: postgresql debian

我有一个以“admin”运行的cron作业。在shell脚本中,我正在使用pg_dump并获得权限被拒绝。

我不懂。毕竟,从命令行我得到了这个:

    $ whomi
    admin

    $ pg_dump
    (it works....)

    $ sudo pg_dump
    doesn't work. (permission denied)


    $ sudo -u admin pg_dump 
    still doesn't work (permission denied).

如何让它发挥作用?或者更好的是,如何让用户“www-data”能够在没有权限被拒绝的情况下运行pg_dump,这样就可以了:

sudo -u www-data pd_dump

1 个答案:

答案 0 :(得分:0)

两部分:

  1. 连接到数据库的用户应该在pg_hba.conf
  2. ' user'被认为是您登录的linux用户名,除非您专门提供-U newuser以及pg_dump命令。
  3. 因此,对于您的查询,添加' www-data'在pg_hba.conf +重启(或重新加载)应该完成这项工作。