#!/sbin/runscript # Copyright 1999-2004 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql/files/postgresql.init-8.0.5,v 1.1 2005/12/25 11:32:46 nakano Exp $ opts="${opts} reload" depend() { use net } checkconfig() { if [ ! -d $PGDATA ]; then eerror "directory not found: $PGDATA" eerror "You should create PGDATA directory first." return 1 fi } start() { checkconfig || return 1 ebegin "Starting PostgreSQL" if [ -f $PGDATA/postmaster.pid ]; then rm $PGDATA/postmaster.pid fi su - $PGUSER -c "/usr/bin/pg_ctl start -D '$PGDATA' -s -l '$PGLOG' -o '$PGOPTS'" while : do cnt=$(($cnt + 1)) if [ -f "$PGDATA/postmaster.pid" ]; then ret=0 break fi if [ $cnt -eq 30 ]; then eerror "Please see log file: $PGLOG" ret=1 break fi sleep 1 done eend $ret } stop() { ebegin "Stopping PostgreSQL" su - $PGUSER -c "/usr/bin/pg_ctl stop -D '$PGDATA' -s -m fast" eend $? } svc_restart() { ebegin "Restarting PostgreSQL" su - $PGUSER -c "/usr/bin/pg_ctl restart -D '$PGDATA' -s -m fast -l '$PGLOG' -o '$PGOPTS'" eend $? } reload() { ebegin "Reloading PostgreSQL configuration" su - $PGUSER -c "/usr/bin/pg_ctl reload -D '$PGDATA' -s" eend $? }