aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>2001-02-01 18:31:10 +0000
committerBruce Momjian <bruce@momjian.us>2001-02-01 18:31:10 +0000
commit58f882d4b22193755918704971e93c2ed1e107f4 (patch)
tree3a6048836bff7f1c0c750edd9ca8e79797a44b18
parentc9ecf3d1f15448da62555a971446e5ddef7a1a91 (diff)
downloadpostgresql-58f882d4b22193755918704971e93c2ed1e107f4.tar.gz
postgresql-58f882d4b22193755918704971e93c2ed1e107f4.zip
Please replace with the one attached to this email message. The
previous version depended on the below patch, this one does not. It is also a bit cleaner and has a few more helpful comments. Ryan Kirkpatrick
-rw-r--r--contrib/init.d/postgresql37
1 files changed, 31 insertions, 6 deletions
diff --git a/contrib/init.d/postgresql b/contrib/init.d/postgresql
index 205ccda4325..ab81a24f6ef 100644
--- a/contrib/init.d/postgresql
+++ b/contrib/init.d/postgresql
@@ -1,40 +1,65 @@
#! /bin/sh
#
-# PostgreSQL Start the pgsql RDMBS.
+# PostgreSQL Start, stop, and get status on the PostgreSQL RDMBS.
+# This script is Linux distribution independent
+# (or at least should be :).
+#
+# By Ryan Kirkpatrick <pgsql@rkirkpat.net>.
+#
+# If you find any problems with this script, or have suggestions
+# please send them to me.
+
+# Arguements for pg_ctl and then for the postmaster. Change as needed.
+ARGS="-w -D /home/postgres/data"
+PM_ARGS="-i -F"
+
+# Changes should not be needed beyond this point.
+# The path that is to be used for the script.
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
+
+# What to use to start up the postmster, and a few names.
DAEMON=/home/postgres/bin/pg_ctl
NAME=postmaster
FILE=postgresql
-ARGS="-w -D /home/postgres/data -o -i -o -F"
-USER="postgres:postgres"
-LOG="/home/postgres/server.log"
DESC="PostgreSQL RDBMS"
-test -f $DAEMON || exit 0
+# Who to run pg_ctl as, should be postgres.
+USER="postgres:postgres"
+# Where to keep a log file.
+LOG="/usr/local/pgsql/server.log"
+
+# Only start if we can find pg_ctl.
+test -f $DAEMON || exit 0
set -e
+# Parse command line parameters.
case "$1" in
start)
+ # Start the postmaster using pg_ctl and given options.
echo -n "Starting $DESC: "
- su - postgres sh -c "$DAEMON start $ARGS >& $LOG"
+ su - postgres sh -c "$DAEMON start $ARGS -o \"$PM_ARGS\" >& $LOG"
echo "$NAME."
;;
stop)
+ # Stop the postmaster using pg_ctl.
echo -n "Stopping $DESC: "
su - postgres sh -c "$DAEMON stop >& /dev/null"
echo "$NAME."
;;
restart)
+ # Restart the postmaster by calling ourselves.
/etc/init.d/$FILE stop
sleep 5
/etc/init.d/$FILE start
;;
status)
+ # Print the status of the postmaster.
su - postgres $DAEMON status
;;
*)
+ # Print help.
N=/etc/init.d/$FILE
echo "Usage: $N {start|stop|restart|status}" >&2
exit 1