diff options
author | Harshavardhana <harsha@zresearch.com> | 2009-03-01 05:35:18 -0800 |
---|---|---|
committer | Anand V. Avati <avati@amp.gluster.com> | 2009-03-03 11:44:21 +0530 |
commit | da71d1359c1335997595935dbaa07c5747231861 (patch) | |
tree | 944744ee0a455b3684c20cac18849e5ff19af0f7 /extras/init.d/glusterfsd-Debian | |
parent | b29a555c0be1c0db47c290d61f8c4dfe1e6fecbf (diff) |
Added proper handling for the init scripts for (Debian, Ubuntu, SuSE, Redhat), SuSE init script also added.
* Init scripts added for Debian, Redhat, SuSE distribution, each are installed
by checking each distribution specific.
Tested on
1. Debian, Ubuntu.
2. Redhat, CentOS.
3. OpenSUSE.
Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
Diffstat (limited to 'extras/init.d/glusterfsd-Debian')
-rwxr-xr-x | extras/init.d/glusterfsd-Debian | 100 |
1 files changed, 100 insertions, 0 deletions
diff --git a/extras/init.d/glusterfsd-Debian b/extras/init.d/glusterfsd-Debian new file mode 100755 index 000000000..dcd3e0c50 --- /dev/null +++ b/extras/init.d/glusterfsd-Debian @@ -0,0 +1,100 @@ +#!/bin/sh +### BEGIN INIT INFO +# Provides: glusterfsd +# Required-Start: $local_fs $network +# Required-Stop: $local_fs $network +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: gluster server +# Description: This file starts / stops the gluster server +### END INIT INFO + +# Author: Chris AtLee <chris@atlee.ca> +# Patched by: Matthias Albert < matthias@linux4experts.de> + +PATH=/sbin:/usr/sbin:/bin:/usr/bin +NAME=glusterfsd +SCRIPTNAME=/etc/init.d/$NAME +DAEMON=/usr/sbin/$NAME +PIDFILE=/var/run/$NAME.pid +CONFIGFILE=/etc/glusterfs/glusterfsd.vol +GLUSTERFS_OPTS="-f $CONFIGFILE" +PID=`test -f $PIDFILE && cat $PIDFILE` + + +# Gracefully exit if the package has been removed. +test -x $DAEMON || exit 0 + +# Load the VERBOSE setting and other rcS variables +. /lib/init/vars.sh + +# Define LSB log_* functions. +. /lib/lsb/init-functions + +check_config() +{ + if [ ! -f "$CONFIGFILE" ]; then + echo "Config file $CONFIGFILE is missing...exiting!" + exit 0 + fi +} + +do_start() +{ + check_config; + pidofproc -p $PIDFILE $DAEMON >/dev/null + status=$? + if [ $status -eq 0 ]; then + log_success_msg "glusterfs server is already running with pid $PID" + else + log_daemon_msg "Starting glusterfs server" "glusterfsd" + start-stop-daemon --start --quiet --oknodo --pidfile $PIDFILE --startas $DAEMON -- -p $PIDFILE $GLUSTERFS_OPTS + log_end_msg $? + start_daemon -p $PIDFILE $DAEMON -f $CONFIGFILE + return $? + fi +} + +do_stop() +{ + log_daemon_msg "Stopping glusterfs server" "glusterfsd" + start-stop-daemon --stop --quiet --oknodo --pidfile $PIDFILE + log_end_msg $? + rm -f $PIDFILE + killproc -p $PIDFILE $DAEMON + return $? +} + +do_status() +{ + pidofproc -p $PIDFILE $DAEMON >/dev/null + status=$? + if [ $status -eq 0 ]; then + log_success_msg "glusterfs server is running with pid $PID" + else + log_failure_msg "glusterfs server is not running." + fi + exit $status +} + +case "$1" in + start) + do_start + ;; + stop) + do_stop + ;; + status) + do_status; + ;; + restart|force-reload) + do_stop + sleep 2 + do_start + ;; + *) + echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2 + exit 3 + ;; +esac + |