Re: Problem starting pgsql server on Mac OS X. Pg_hba.conf reading permission. - Mailing list pgsql-novice

From Tim Bowden
Subject Re: Problem starting pgsql server on Mac OS X. Pg_hba.conf reading permission.
Date
Msg-id 1251775788.4295.11.camel@mordor
Whole thread Raw
In response to Problem starting pgsql server on Mac OS X. Pg_hba.conf reading permission.  (nextstopsun <nextstopsun@gmail.com>)
List pgsql-novice
On Mon, 2009-08-31 at 02:44 -0700, nextstopsun wrote:
> Hello.
> I’m having a problem starting server on mac os x.
>
> -------------
> bash-3.2$ /usr/local/pgsql/bin/pg_ctl start -D /usr/local/pgsql/data
> server starting
> bash-3.2$ LOG:  could not open configuration file
> "/usr/local/pgsql/data/pg_hba.conf": Permission denied
> FATAL:  could not load pg_hba.conf
> -------------
>
> The problem appears after changing permissions for /data folder in finder. I
> did this:
>
> I’m installing postgresql 8.4 from MacOS binary and it installs and starts
> ok. Then I try to edit pg_hba.conf in pgAdmin3 to add a line
> --------------
> host    all         all         10.0.0.6              md5
> --------------
> After I click save icon to save a file it doesn’t save – probably it doesn’t
> have enough permission for that. So I go to my /usr/local/pgsql/data/ folder
> in Finder – unlock it’s permissions and set read/write to everyone group.
> Then I edit the pg_hba file with TextEdit.app and it looks like this
>
> -------------
> # "local" is for Unix domain socket connections only
> local   all         all                               trust
> # IPv4 local connections:
> host    all         all         127.0.0.1/32          trust
> host    all         all         10.0.0.6              md5
> # IPv6 local connections:
> host    all         all         ::1/128               trust
> -------------
>
> Then server doesn’t start – start server.app exits with non-zero value.
> Command line returns
> -------------
> BigMac:~ postgres$ FATAL:  data directory "/usr/local/pgsql/data" has group
> or world access
> DETAIL:  Permissions should be u=rwx (0700).
>
> chmod 700 /usr/local/pgsql/data/
> BigMac:~ postgres$ /usr/local/pgsql/bin/pg_ctl start -D
> /usr/local/pgsql/data
>
> server starting
> BigMac:~ postgres$ LOG:  could not open configuration file
> "/usr/local/pgsql/data/pg_hba.conf": Permission denied
> FATAL:  could not load pg_hba.conf
> -------------
>
> I’ve tried installing postgre from source thru fink, and the problem stays
> the same. I’m really stuck here, and I really need postgre to be accessed
> from 10.0.0.6 machine.
> What am I doing wrong? As I understand it’s a folder access permission
> problem, but I don’t know how to fix it. Can anyone PLEASE help me?

PostgreSQL (/not/ postgre; no such name!) is trying to tell you it won't
run if the permissions are too liberal (for security reasons).  You need
to set the "/usr/local/pgsql/data" permissions to u=rwx (0700) as the
error message says.  The problem you're having is that with those
permissions you're unable to edit the pg_hba.conf file.  The solution is
to 'su - postgres' (assuming the user account postgres owns the
directory; or 'sudo su - postgres' or just 'sudo
vi /usr/local/pgsql/data/pg_hba.conf' or whatever else works for you on
OSX) and then edit the file with the privileges of that account.  There
is a reason your normal user account isn't allowed to have write access
to that directory.  You cannot have both weak security and tight
security at the same time.

HTH,
Tim Bowden


pgsql-novice by date:

Previous
From: Heikki Linnakangas
Date:
Subject: Re: [BUGS] psql: FATAL: the database system is in recovery mode
Next
From: Bhushan Verma
Date:
Subject: Re: [BUGS] psql: FATAL: the database system is in recovery mode