mirror of
https://github.com/postgres/postgres.git
synced 2025-04-21 12:05:57 +03:00
Make Linux startup support sh and csh.
This commit is contained in:
parent
f554af0a9f
commit
77bc683869
@ -11,7 +11,6 @@
|
|||||||
# and then set USE_SYSLOG to "yes" below
|
# and then set USE_SYSLOG to "yes" below
|
||||||
#
|
#
|
||||||
#PGBIN="/opt/postgres/current/bin" # not used
|
#PGBIN="/opt/postgres/current/bin" # not used
|
||||||
|
|
||||||
PGACCOUNT="postgres" # the postgres account (you called it something else?)
|
PGACCOUNT="postgres" # the postgres account (you called it something else?)
|
||||||
POSTMASTER="postmaster" # this probably won't change
|
POSTMASTER="postmaster" # this probably won't change
|
||||||
|
|
||||||
@ -19,7 +18,8 @@ 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
|
FACILITY="local5" # can assign local0-local7 as the facility for logging
|
||||||
PGLOGFILE="/tmp/postgres.log" # only used if syslog is disabled
|
PGLOGFILE="/tmp/postgres.log" # only used if syslog is disabled
|
||||||
|
|
||||||
PGOPTS="-i -B 2048"
|
PGOPTS="-B 256"
|
||||||
|
#PGOPTS="-i -B 256" # -i to enable TCP/IP rather than Unix socket
|
||||||
|
|
||||||
# Source function library.
|
# Source function library.
|
||||||
. /etc/rc.d/init.d/functions
|
. /etc/rc.d/init.d/functions
|
||||||
@ -39,12 +39,13 @@ fi
|
|||||||
# See how we were called.
|
# See how we were called.
|
||||||
case "$1" in
|
case "$1" in
|
||||||
start)
|
start)
|
||||||
if [ -f ${PGLOGFILE} ]
|
if [ -f ${PGLOGFILE} ]
|
||||||
then
|
then
|
||||||
mv ${PGLOGFILE} ${PGLOGFILE}.old
|
mv ${PGLOGFILE} ${PGLOGFILE}.old
|
||||||
fi
|
fi
|
||||||
echo -n "Starting postgres: "
|
echo -n "Starting postgres: "
|
||||||
# force full login to get path names
|
# force full login to get path names
|
||||||
|
# my postgres runs SH/BASH so use proper syntax in redirection...
|
||||||
if [ ${USE_SYSLOG} = "yes" ]; then
|
if [ ${USE_SYSLOG} = "yes" ]; then
|
||||||
su - ${PGACCOUNT} -c "(${POSTMASTER} ${PGOPTS} 2>&1 | logger -p ${FACILITY}.notice) &" > /dev/null 2>&1 &
|
su - ${PGACCOUNT} -c "(${POSTMASTER} ${PGOPTS} 2>&1 | logger -p ${FACILITY}.notice) &" > /dev/null 2>&1 &
|
||||||
else
|
else
|
||||||
@ -53,19 +54,16 @@ case "$1" in
|
|||||||
sleep 5
|
sleep 5
|
||||||
pid=`pidof ${POSTMASTER}`
|
pid=`pidof ${POSTMASTER}`
|
||||||
echo -n "${POSTMASTER} [$pid]"
|
echo -n "${POSTMASTER} [$pid]"
|
||||||
sleep 2
|
|
||||||
# touch /var/lock/subsys/${POSTMASTER}
|
# touch /var/lock/subsys/${POSTMASTER}
|
||||||
# use the name of the symlink
|
|
||||||
touch /var/lock/subsys/postgres
|
|
||||||
echo
|
echo
|
||||||
;;
|
;;
|
||||||
stop)
|
stop)
|
||||||
echo -n "Stopping postgres: "
|
echo -n "Stopping postgres: "
|
||||||
pid=`pidof ${POSTMASTER}`
|
pid=`pidof ${POSTMASTER}`
|
||||||
if [ "$pid" != "" ] ; then
|
if [ "$pid" != "" ] ; then
|
||||||
echo -n "${POSTMASTER} [$pid]"
|
echo -n "${POSTMASTER} [$pid]"
|
||||||
kill -TERM $pid
|
kill -TERM $pid
|
||||||
sleep 3
|
sleep 1
|
||||||
fi
|
fi
|
||||||
echo
|
echo
|
||||||
;;
|
;;
|
75
contrib/linux/postgres.init.sh
Executable file
75
contrib/linux/postgres.init.sh
Executable file
@ -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 CSH/TCSH so use proper syntax in redirection...
|
||||||
|
if [ ${USE_SYSLOG} = "yes" ]; then
|
||||||
|
su - ${PGACCOUNT} -c "(${POSTMASTER} ${PGOPTS} |& logger -p ${FACILITY}.notice) &" > /dev/null&
|
||||||
|
else
|
||||||
|
su - ${PGACCOUNT} -c "${POSTMASTER} ${PGOPTS} >>&! ${PGLOGFILE} &" > /dev/null&
|
||||||
|
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
|
Loading…
x
Reference in New Issue
Block a user