| #! /bin/sh |
| |
| # PostgreSQL boot time startup script for FreeBSD. Copy this file to |
| # /usr/local/etc/rc.d/postgresql. |
| |
| # Created through merger of the Linux start script by Ryan Kirkpatrick |
| # and the script in the FreeBSD ports collection. |
| |
| # contrib/start-scripts/freebsd |
| |
| ## EDIT FROM HERE |
| |
| # Installation prefix |
| prefix=/usr/local/pgsql |
| |
| # Data directory |
| PGDATA="/usr/local/pgsql/data" |
| |
| # Who to run postgres as, usually "postgres". (NOT "root") |
| PGUSER=postgres |
| |
| # Where to keep a log file |
| PGLOG="$PGDATA/serverlog" |
| |
| ## STOP EDITING HERE |
| |
| # 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 postgres. (If you want the script to wait |
| # until the server has started, you could use "pg_ctl start" here.) |
| DAEMON="$prefix/bin/postgres" |
| |
| # What to use to shut down postgres |
| PGCTL="$prefix/bin/pg_ctl" |
| |
| # Only start if we can find postgres. |
| test -x $DAEMON || |
| { |
| echo "$DAEMON not found" |
| exit 0 |
| } |
| |
| case $1 in |
| start) |
| su -l $PGUSER -c "$DAEMON -D '$PGDATA' >>$PGLOG 2>&1 &" |
| echo -n ' postgresql' |
| ;; |
| stop) |
| su -l $PGUSER -c "$PGCTL stop -D '$PGDATA' -s" |
| ;; |
| restart) |
| su -l $PGUSER -c "$PGCTL stop -D '$PGDATA' -s" |
| su -l $PGUSER -c "$DAEMON -D '$PGDATA' >>$PGLOG 2>&1 &" |
| ;; |
| status) |
| su -l $PGUSER -c "$PGCTL status -D '$PGDATA'" |
| ;; |
| *) |
| # Print help |
| echo "Usage: `basename $0` {start|stop|restart|status}" 1>&2 |
| exit 1 |
| ;; |
| esac |
| |
| exit 0 |