#!/bin/bash
+#
# init file for ClusterNFS
#
-# chkconfig: 345 50 50
+# chkconfig: 345 50 50
+#
# description: ClusterNFS server
#
-# processname: /usr/sbin/rpc.mountd
-# processname: /usr/sbin/rpc.nfsd
-# config: /etc/exports
# source function library
. /etc/rc.d/init.d/functions
+# Get network config
+. /etc/sysconfig/network
+
+# Check that networking is up.
+if is_yes "${NETWORKING}"; then
+ if [ ! -f /var/lock/subsys/network ]; then
+ msg_network_down ClusterNFS
+ exit 1
+ fi
+else
+ exit 0
+fi
+
OPTIONS_NFSD="-T"
OPTIONS_MNTD="-T"
-RETVAL=0
prog_nfsd="rpc.nfsd"
prog_mntd="rpc.mountd"
-start() {
- msg_starting "ClusterNFS ($prog_mntd)"
- daemon /usr/sbin/rpc.mountd $OPTIONS_MNTD
- RETVAL=$?
- msg_starting "ClusterNFS ($prog_nfsd)"
- daemon /usr/sbin/rpc.nfsd $OPTIONS_NFSD
- RETVAL=$?
- touch /var/lock/subsys/clusternfs
- return $RETVAL
-}
-
-stop() {
- msg_stopping "ClusterNFS ($prog_nfsd)"
- killproc /usr/sbin/rpc.nfsd
- RETVAL=$?
- msg_stopping "ClusterNFS ($prog_mntd)"
- killproc /usr/sbin/rpc.mountd
- RETVAL=$?
- rm -f /var/lock/subsys/clusternfs
- return $RETVAL
-}
-
-reload(){
- stop
- start
-}
-
-restart(){
- stop
- start
-}
-
-condrestart(){
- [ -e /var/lock/subsys/clusternfs ] && restart
- return 0
-}
-
+#See how we were called.
case "$1" in
start)
- start
+ # Check if the service is already running?
+ if [ ! -f /var/lock/subsys/clusternfs ]; then
+ msg_starting "ClusterNFS ($prog_mntd)"
+ daemon /usr/sbin/rpc.mountd $OPTIONS_MNTD
+ RETVAL=$?
+ if [ "$RETVAL" = "0" ]; then
+ msg_starting "ClusterNFS ($prog_nfsd)"
+ daemon /usr/sbin/rpc.nfsd $OPTIONS_NFSD
+ RETVAL=$?
+ fi
+ [ $RETVAL -eq 0 ] && touch /var/lock/subsys/clusternfs
+ else
+ msg_already_running ClusterNFS
+ exit 1
+ fi
;;
stop)
- stop
+ # Stop daemons.
+ if [ ! -f /var/lock/subsys/clusternfs ]; then
+ msg_stopping "ClusterNFS ($prog_nfsd)"
+ killproc /usr/sbin/rpc.nfsd
+ msg_stopping "ClusterNFS ($prog_mntd)"
+ killproc /usr/sbin/rpc.mountd
+ rm -f /var/lock/subsys/clusternfs
+ else
+ msg_not_running ClusterNFS
+ exit 1
+ fi
+ ;;
+ status
;;
- restart)
- restart
- ;;
- reload)
- reload
- ;;
- condrestart)
- condrestart
+ restart|reload)
+ $0 stop
+ $0 start
;;
- status)
- status rpc.nfsd
- status rpc.mountd
- RETVAL=$?
- ;;
*)
- gprintf "Usage: $0 {start|stop|status|restart|condrestart|reload}"
- RETVAL=1
+ msg_usage "$0 {start|stop|restart|reload|status}"
+ exit 1
esac
exit $RETVAL