startup scripts don't function properly

Jason Vasquez <vasquez_jason@lilly.com>

From: VASQUEZ_JASON@LILLY.COM
To: pgsql-bugs@postgresql.org
Date: 2001-04-18T13:08:14Z
Lists: pgsql-bugs
There are 2 problems:

1.  The "su" commands for start/stop/restart/status are in the form of "su 
-".  This picks up the environment of the postgres user, which wipes out 
the environment variables that were set earlier in this script (e.g., 
PGDATA).  Quick solution is to remove the extra dashes.

2.  (Not necessarily a problem!) Scripts default to not allow TCP/IP 
connections.  Adding -o "-i" to start and restart fixed this problem. This 
is understandable from a security standpoint.  Maybe an environment 
variable could be set in the "Editable" portion of the script which would 
turn this on or off, or at least a set of parameters to pass to 
postmaster.

Here's a diff against 7.1 (release) that represents my current startup 
script:


$ diff -u /usr/local/src/postgresql-7.1/contrib/start-scripts/linux 
/etc/rc.d/init.d/postgres
--- /usr/local/src/postgresql-7.1/contrib/start-scripts/linux   Thu Feb  8 
14:53:33 2001
+++ /etc/rc.d/init.d/postgres   Wed Apr 18 07:48:53 2001
@@ -64,21 +64,21 @@
 case $1 in
   start)
        $ECHO_N "Starting PostgreSQL: "$ECHO_C
-       su - $PGUSER -c "$DAEMON start -s -l $PGLOG"
+       su $PGUSER -c "$DAEMON start -o "-i" -s -l $PGLOG"
        echo "ok"
        ;;
   stop)
        echo -n "Stopping PostgreSQL: "
-       su - $PGUSER -c "$DAEMON stop -s -m fast"
+       su $PGUSER -c "$DAEMON stop -s -m fast"
        echo "ok"
        ;;
   restart)
        echo -n "Restarting PostgreSQL: "
-       su - $PGUSER -c "$DAEMON restart -s -m fast"
+       su $PGUSER -c "$DAEMON restart -o "-i" -s -m fast"
        echo "ok"
        ;;
   status)
-       su - $PGUSER -c "$DAEMON status"
+       su $PGUSER -c "$DAEMON status"
        ;;
   *)
        # Print help