Thread: Suggested improvements to INSTALL file "Short Version"

Suggested improvements to INSTALL file "Short Version"

From
Vicki Brown
Date:
Installing PostgreSQL 7.3.2 on FreeSD 4.7, I found these discrepancies
between the "Short Version" instructions in the INSTALL file and "reality".


                                 Short Version

  ./configure
  gmake

1) The "Longer Version" makes note of a "gmake check" option for testing.
This SHOULD be mentioned in the short version as well!

  su
  gmake install
  adduser postgres

2) It should be noted here to set the shell as /bin/sh or something similar
(e.g. bash) or else the postmaster command below will fail. Specifically, do
not use a Csh equivalent or /sbin/nologin.

  mkdir /usr/local/pgsql/data
  chown postgres /usr/local/pgsql/data

3) It should be noted here that the directory /usr/local/pgsql should also be
chown'd to postgresql, or the logfile created below with the postmaster
command will not be able to be written.


4) I can't help but wonder why the
    make install
didn't do the adduser, create the data directory, and set ownership
correctly. The (FreeBSD ports collection version of) PostgreSQL 7.2.2 did the
adduser for me...


5) Subdirs of my /usr/local/bin/pgsql directory have ownership root:wheel
(due to having been created before the postgres user existed).
  drwxr-xr-x   2 root  wheel   512 Feb 11 19:30 bin
  drwxr-xr-x   3 root  wheel   512 Feb 11 19:30 doc
  drwxr-xr-x   4 root  wheel   512 Feb 11 19:30 include
  drwxr-xr-x   2 root  wheel  1024 Feb 11 19:30 lib
  drwxr-xr-x   4 root  wheel   512 Feb 11 19:30 man
  drwxr-xr-x   2 root  wheel   512 Feb 11 19:30 share


I see nothing in the INSTALL doc to cover these permissions and do not know,
therefore, if they are "correct", if it is "OK" to change the ownership to
postgres, or... what?  I find this disturbing. Please update the docs (and
the install process) to handle the ownership of this directory.
--
- Vicki

Vicki Brown     ZZZ                  Journeyman Sourceror:
P.O. Box 1269      zz  |\     _,,,---,,_        Scripts & Philtres
San Bruno, CA       zz /,`.-'`'    -.  ;-;;,_    Perl, Unix, MacOS
94066     USA         |,4-  ) )-,_. ,\ ( `'-'
mailto:vlb@cfcl.com  '---''(_/--'  `-'\_)  http://www.cfcl.com/~vlb

Re: Suggested improvements to INSTALL file "Short Version"

From
Peter Eisentraut
Date:
Vicki Brown writes:

> 1) The "Longer Version" makes note of a "gmake check" option for testing.
> This SHOULD be mentioned in the short version as well!

Running the regression tests is not part of the essential installation
procedure and is there not in the short version.

> 2) It should be noted here to set the shell as /bin/sh or something similar
> (e.g. bash) or else the postmaster command below will fail. Specifically, do
> not use a Csh equivalent or /sbin/nologin.

The Bourne shell is the standard Unix shell.  Sorry.

> 3) It should be noted here that the directory /usr/local/pgsql should also be
> chown'd to postgresql,

The files under /usr/local/pgsql, except for the data directory, should
*not* be owned by the postgres user.

> or the logfile created below with the postmaster
> command will not be able to be written.

If you follow the commands *exactly* then the logfile cannot possibly be
created under /usr/local/pgsql.  If you alter some of the paths then you
need to figure out yourself what you want to do.

> 4) I can't help but wonder why the
>     make install
> didn't do the adduser, create the data directory, and set ownership
> correctly.

Because make install installs files and that's it.

> The (FreeBSD ports collection version of) PostgreSQL 7.2.2 did the
> adduser for me...

The ports collection does package management, which is different from
build management.

--
Peter Eisentraut   peter_e@gmx.net


Re: Suggested improvements to INSTALL file "Short Version"

From
Vicki Brown
Date:
At 15:10 +0100 2003-02-16, Peter Eisentraut wrote:
>Vicki Brown writes:
>
>> 1) The "Longer Version" makes note of a "gmake check" option for testing.
>> This SHOULD be mentioned in the short version as well!
>
>Running the regression tests is not part of the essential installation
>procedure and is there not in the short version.

Excuse me? __Running tests is not "essential" __?
We must disagree. Running tests is ALWAYS essential.

>> 2) It should be noted here to set the shell as /bin/sh or something similar
>
>The Bourne shell is the standard Unix shell.  Sorry.

Not anymore. Sorry.

>
>> 3) It should be noted here that the directory /usr/local/pgsql should also
>>be
>> chown'd to postgresql,
>
>The files under /usr/local/pgsql, except for the data directory, should
>*not* be owned by the postgres user.

That's not what I said. I said the DIRECTORY  /usr/local/pgsql  should be
chowned. Or it won't be possible to create the logfile.

>
>> or the logfile created below with the postmaster
>> command will not be able to be written.
>
>If you follow the commands *exactly* then the logfile cannot possibly be
>created under /usr/local/pgsql.

I followed the commands exactly.
     su - postgres
puts you into the postgres home dir.

>If you alter some of the paths

I didn't.

>
>> 4) I can't help but wonder why the
>>     make install
>> didn't do the adduser, create the data directory, and set ownership
>> correctly.
>
>Because make install installs files and that's it.

so it's a "design decision".


--
- Vicki

Vicki Brown     ZZZ                  Journeyman Sourceror:
P.O. Box 1269      zz  |\     _,,,---,,_        Scripts & Philtres
San Bruno, CA       zz /,`.-'`'    -.  ;-;;,_    Perl, Unix, MacOS
94066     USA         |,4-  ) )-,_. ,\ ( `'-'
mailto:vlb@cfcl.com  '---''(_/--'  `-'\_)  http://www.cfcl.com/~vlb