Subject: Suggested improvements to INSTALL file "Short Version"

From: Vicki Brown <[email-masked]>
Date: Tue, 11 Feb 2003 20:01:24 -0800

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:[email-masked]  '---''(_/--'  `-'\_)  http://www.cfcl.com/~vlb

---

From: Peter Eisentraut <[email-masked]>
Date: Sun, 16 Feb 2003 15:10:20 +0100 (CET)

> 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.

> not use a Csh equivalent or /sbin/nologin.

The Bourne shell is the standard Unix shell.  Sorry.

> 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

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.

> 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   [email-masked]

---

From: Vicki Brown <[email-masked]>
Date: Sun, 16 Feb 2003 09:22:02 -0800

>procedure and is there not in the short version.

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

>The Bourne shell is the standard Unix shell.  Sorry.

Not anymore. Sorry.

>*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.

>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.

>Because make install installs files and that's it.

so it's a "design decision".

-- 
- Vicki