Обсуждение: Suggested improvements to INSTALL file "Short Version"
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
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
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