summaryrefslogtreecommitdiffstats
path: root/contrib/start-scripts/freebsd
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/start-scripts/freebsd')
-rw-r--r--contrib/start-scripts/freebsd66
1 files changed, 66 insertions, 0 deletions
diff --git a/contrib/start-scripts/freebsd b/contrib/start-scripts/freebsd
new file mode 100644
index 0000000..ed4f9ba
--- /dev/null
+++ b/contrib/start-scripts/freebsd
@@ -0,0 +1,66 @@
+#! /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