diff options
author | Bruce Momjian <bruce@momjian.us> | 1998-04-28 03:25:33 +0000 |
---|---|---|
committer | Bruce Momjian <bruce@momjian.us> | 1998-04-28 03:25:33 +0000 |
commit | 77bc683869b38b300a7192a23668a1d36dd82e9c (patch) | |
tree | 9520f7880f3f7f11d1a6397c25938b1f01bc84fc /contrib/linux/postgres.init.csh | |
parent | f554af0a9fdbe0e9636fce36d6c809e81ce1539c (diff) | |
download | postgresql-77bc683869b38b300a7192a23668a1d36dd82e9c.tar.gz postgresql-77bc683869b38b300a7192a23668a1d36dd82e9c.zip |
Make Linux startup support sh and csh.
Diffstat (limited to 'contrib/linux/postgres.init.csh')
-rwxr-xr-x | contrib/linux/postgres.init.csh | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/contrib/linux/postgres.init.csh b/contrib/linux/postgres.init.csh new file mode 100755 index 00000000000..ebe9d70c84f --- /dev/null +++ b/contrib/linux/postgres.init.csh @@ -0,0 +1,75 @@ +#!/bin/sh +# +# postgres.init Start postgres back end system. +# +# Author: Thomas Lockhart <lockhart@alumni.caltech.edu> +# modified from other startup files in the RedHat Linux distribution +# +# This version can log backend output through syslog using the local5 facility. +# To enable this, edit /etc/syslog.conf to include a line similar to: +# local5.* /var/log/postgres +# and then set USE_SYSLOG to "yes" below +# +#PGBIN="/opt/postgres/current/bin" # not used +PGACCOUNT="postgres" # the postgres account (you called it something else?) +POSTMASTER="postmaster" # this probably won't change + +USE_SYSLOG="yes" # "yes" to enable syslog, "no" to go to /tmp/postgres.log +FACILITY="local5" # can assign local0-local7 as the facility for logging +PGLOGFILE="/tmp/postgres.log" # only used if syslog is disabled + +PGOPTS="-B 256" +#PGOPTS="-i -B 256" # -i to enable TCP/IP rather than Unix socket + +# Source function library. +. /etc/rc.d/init.d/functions + +# Get config. +. /etc/sysconfig/network + +# Check that networking is up. +# Pretty much need it for postmaster. +if [ ${NETWORKING} = "no" ] +then + exit 0 +fi + +#[ -f ${PGBIN}/${POSTMASTER} ] || exit 0 + +# See how we were called. +case "$1" in + start) + if [ -f ${PGLOGFILE} ] + then + mv ${PGLOGFILE} ${PGLOGFILE}.old + fi + echo -n "Starting postgres: " +# force full login to get path names +# my postgres runs SH/BASH so use proper syntax in redirection... + if [ ${USE_SYSLOG} = "yes" ]; then + su - ${PGACCOUNT} -c "(${POSTMASTER} ${PGOPTS} 2>&1 | logger -p ${FACILITY}.notice) &" > /dev/null 2>&1 & + else + su - ${PGACCOUNT} -c "${POSTMASTER} ${PGOPTS} 2>>&1 ${PGLOGFILE} &" > /dev/null 2>&1 & + fi + sleep 5 + pid=`pidof ${POSTMASTER}` + echo -n "${POSTMASTER} [$pid]" +# touch /var/lock/subsys/${POSTMASTER} + echo + ;; + stop) + echo -n "Stopping postgres: " + pid=`pidof ${POSTMASTER}` + if [ "$pid" != "" ] ; then + echo -n "${POSTMASTER} [$pid]" + kill -TERM $pid + sleep 1 + fi + echo + ;; + *) + echo "Usage: $0 {start|stop}" + exit 1 +esac + +exit 0 |