#!/bin/bash # # chkconfig: 35 20 80 # description: Gluster File System service for volume management # # Get function from functions library . /etc/rc.d/init.d/functions BASE=glusterd PIDFILE=/var/run/$BASE.pid PID=`test -f $PIDFILE && cat $PIDFILE` # Overwriteable from sysconfig LOG_LEVEL='' LOG_FILE='' GLUSTERD_OPTIONS='' [ -f /etc/sysconfig/${BASE} ] && . /etc/sysconfig/${BASE} [ ! -z $LOG_LEVEL ] && GLUSTERD_OPTIONS="${GLUSTERD_OPTIONS} --log-level ${LOG_LEVEL}" [ ! -z $LOG_FILE ] && GLUSTERD_OPTIONS="${GLUSTERD_OPTIONS} --log-file ${LOG_FILE}" GLUSTERFSD=glusterfsd GLUSTERFS=glusterfs GLUSTERD_BIN=@prefix@/sbin/$BASE GLUSTERD_OPTS="--pid-file=$PIDFILE ${GLUSTERD_OPTIONS}" GLUSTERD="$GLUSTERD_BIN $GLUSTERD_OPTS" RETVAL=0 # Start the service $BASE start() { pidofproc -p $PIDFILE $GLUSTERD_BIN &> /dev/null status=$? if [ $status -eq 0 ]; then echo "glusterd service is already running with pid $PID" exit 0 else echo -n $"Starting $BASE:" daemon $GLUSTERD RETVAL=$? echo [ $RETVAL -ne 0 ] && exit $RETVAL fi } # Stop the service $BASE stop() { echo -n $"Stopping $BASE:" pidofproc -p $PIDFILE $GLUSTERD_BIN &> /dev/null status=$? if [ $status -eq 0 ]; then killproc -p $PIDFILE $BASE [ -w $PIDFILE ] && rm -f $PIDFILE else killproc $BASE fi } ### service arguments ### case $1 in start) start ;; stop) stop RETVAL=$? ;; status) status $BASE RETVAL=$? ;; restart) $0 stop $0 start ;; *) echo $"Usage: $0 {start|stop|status|restart}." exit 1 esac exit $RETVAL