Thread: Re: [HACKERS] postmaster crash and .s.pgsql file

Re: [HACKERS] postmaster crash and .s.pgsql file

From
Andrew Martin
Date:
> On Thu, 29 Jan 1998, Andrew Martin wrote:
>
> > >    > I would opt for /var/run to store the pid files and have the name set to
> > >
> > >        That would assume that postmaster runs as root, which is not
> > >    allowed...has to be in /tmp somewhere
> > >
> > > Maybe both should be under /usr/local/pgsql
> > I assume you mean the root of the installation rather than specifically
> > /usr/local/pgsql.
> >
> > > somewhere, so they will not be removed by any
> > > '/tmp'-clean-up-scripts.
> > >
> > In $PGDATA would seem as good as anywhere (maybe $PGDATA/.run or some such)
> >
> > /usr/local is mounted r/o on my system - $PGDATA lives elsewhere and is
> > writable.
>
>     $PGDATA is created 700...general users need to be able to read the
> directory in order to connect to the socket, so we'd have to lax up
> security in order to accomplish this...
>
OK, no problem, a subdirectory of $PGDATA which has world read permission

Andrew

----------------------------------------------------------------------------
Dr. Andrew C.R. Martin                             University College London
EMAIL: (Work) martin@biochem.ucl.ac.uk    (Home) andrew@stagleys.demon.co.uk
URL:   http://www.biochem.ucl.ac.uk/~martin
Tel:   (Work) +44(0)171 419 3890                    (Home) +44(0)1372 275775

Re: [HACKERS] postmaster crash and .s.pgsql file

From
The Hermit Hacker
Date:
On Thu, 29 Jan 1998, Andrew Martin wrote:

> > On Thu, 29 Jan 1998, Andrew Martin wrote:
> >
> > > >    > I would opt for /var/run to store the pid files and have the name set to
> > > >
> > > >        That would assume that postmaster runs as root, which is not
> > > >    allowed...has to be in /tmp somewhere
> > > >
> > > > Maybe both should be under /usr/local/pgsql
> > > I assume you mean the root of the installation rather than specifically
> > > /usr/local/pgsql.
> > >
> > > > somewhere, so they will not be removed by any
> > > > '/tmp'-clean-up-scripts.
> > > >
> > > In $PGDATA would seem as good as anywhere (maybe $PGDATA/.run or some such)
> > >
> > > /usr/local is mounted r/o on my system - $PGDATA lives elsewhere and is
> > > writable.
> >
> >     $PGDATA is created 700...general users need to be able to read the
> > directory in order to connect to the socket, so we'd have to lax up
> > security in order to accomplish this...
> >
> OK, no problem, a subdirectory of $PGDATA which has world read permission

    You'd have to relax the 700 permissions on $PGDATA to get at
anything under that directory, even if the subdirectory under it had 777
access to it...


    And, it also makes the assumption that you'll only ever have 1
postmaster process running on a machine, or else you are now having to set
the PGDATA environment variable depending on which database you want to
connect to...:(


Re: [HACKERS] postmaster crash and .s.pgsql file

From
James Hughes
Date:

On Thu, 29 Jan 1998, Andrew Martin wrote:

: > On Thu, 29 Jan 1998, Andrew Martin wrote:
: >
: > > >    > I would opt for /var/run to store the pid files and have the name set to
: > > >
: > > >        That would assume that postmaster runs as root, which is not
: > > >    allowed...has to be in /tmp somewhere
: > > >
: > > > Maybe both should be under /usr/local/pgsql
: > > I assume you mean the root of the installation rather than specifically
: > > /usr/local/pgsql.
: > >
: > > > somewhere, so they will not be removed by any
: > > > '/tmp'-clean-up-scripts.
: > > >
: > > In $PGDATA would seem as good as anywhere (maybe $PGDATA/.run or some such)
: > >
: > > /usr/local is mounted r/o on my system - $PGDATA lives elsewhere and is
: > > writable.
: >
: >     $PGDATA is created 700...general users need to be able to read the
: > directory in order to connect to the socket, so we'd have to lax up
: > security in order to accomplish this...
: >
: OK, no problem, a subdirectory of $PGDATA which has world read permission
:

I think $PGDATA would be a problem. I did an initdb to my directory and
ran a postmaster on port 5440 with $PGDATA pointing to my home
directory. This postmaster never saw the main postmaster's $PGDATA
directory. All postmasters should use the same location to get
information about processes running. It wouldn't matter where, as long
as the location is flexible and easily configured.

All this raises other questions for me. I believe Goran was right about
the can of worms :)



-James