SOURCES: rpcgssd.init (NEW), rpcidmapd.init (NEW), rpcsvcgssd.init...

baggins baggins at pld-linux.org
Tue Mar 20 15:57:03 CET 2007


Author: baggins                      Date: Tue Mar 20 14:57:02 2007 GMT
Module: SOURCES                       Tag: HEAD
---- Log message:
- init scripts for NFSv4 RPC daemons

---- Files affected:
SOURCES:
   rpcgssd.init (NONE -> 1.1)  (NEW), rpcidmapd.init (NONE -> 1.1)  (NEW), rpcsvcgssd.init (NONE -> 1.1)  (NEW)

---- Diffs:

================================================================
Index: SOURCES/rpcgssd.init
diff -u /dev/null SOURCES/rpcgssd.init:1.1
--- /dev/null	Tue Mar 20 15:57:02 2007
+++ SOURCES/rpcgssd.init	Tue Mar 20 15:56:57 2007
@@ -0,0 +1,89 @@
+#!/bin/bash
+#
+# rpcgssd       Start up and shut down RPCSEC GSS daemon
+#
+# Authors:	Chuck Lever <cel at netapp.com>
+#
+# chkconfig: 345 14 81
+# description: Starts user-level daemon that manages RPCSEC GSS contexts \
+#	       for the NFSv4 client.
+
+# 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 -a "$1" != stop -a "$1" != status ]; then
+		msg_network_down "RPC gssd daemon"
+		exit 1
+	fi
+else
+	exit 0
+fi
+
+if [ -x /sbin/pidof ] && [ "$1" != "stop" ]; then
+	[ -z "`/sbin/pidof portmap`" ] && nls "Error: portmap isn't running" && exit 0
+fi
+
+# Get service config
+[ -f /etc/sysconfig/nfsfs ] && . /etc/sysconfig/nfsfs
+
+is_yes "${SECURE_NFS}" || exit 0
+
+# List of kernel modules to load
+[ -z "${SECURE_NFS_MODS}" ] && SECURE_NFS_MODS="des rpcsec_gss_krb5"
+
+# /usr may be on NFS, fail silently, nfsfs will start it
+[ -x /usr/sbin/rpc.gssd ] || exit 0
+
+RETVAL=0
+
+# See how we were called.
+case "$1" in
+  start)
+	# Check if the service is already running?
+	if [ ! -f /var/lock/subsys/gssd ]; then
+		if ! grep -q rpc_pipefs /proc/mounts ; then
+			modprobe -s sunrpc >/dev/null 2>&1
+			run_cmd "Mounting /var/lib/nfs/rpc_pipefs filesystem" \
+				mount -t rpc_pipefs rpc_pipefs /var/lib/nfs/rpc_pipefs
+		fi
+		# Load rpcsec modules
+		for i in ${SECURE_NFS_MODS} ; do 
+			_modprobe single die $i
+		done
+		msg_starting "RPC gssd"
+		daemon rpc.gssd $RPCGSSOPTIONS
+		RETVAL=$?
+		[ $RETVAL = 0 ] && touch /var/lock/subsys/gssd
+	else
+		msg_already_running "RPC gssd"
+	fi
+	;;
+  stop)
+	if [ -f /var/lock/subsys/gssd ]; then
+		msg_stopping "RPC gssd"
+		killproc rpc.gssd
+		rm -f /var/lock/subsys/gssd
+	else
+		msg_not_running "RPC gssd"
+	fi
+	;;
+  status)
+	status rpc.gssd
+	RETVAL=$?
+	;;
+  restart|reload)
+	$0 stop
+	$0 start
+	RETVAL=$?
+	;;
+  *)
+	msg_usage "$0 {start|stop|restart|status}"
+	exit 1
+esac
+
+exit $RETVAL

================================================================
Index: SOURCES/rpcidmapd.init
diff -u /dev/null SOURCES/rpcidmapd.init:1.1
--- /dev/null	Tue Mar 20 15:57:03 2007
+++ SOURCES/rpcidmapd.init	Tue Mar 20 15:56:57 2007
@@ -0,0 +1,82 @@
+#!/bin/bash
+#
+# rpcidmapd     Start up and shut down RPC name to UID/GID mapper
+#
+# Authors:	Chuck Lever <cel at netapp.com>
+#
+# chkconfig: 345 13 82
+# description: Starts user-level daemon for NFSv4 that maps user \
+#              names to UID and GID numbers.
+
+# 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 -a "$1" != stop -a "$1" != status ]; then
+		msg_network_down "RPC svcgssd daemon"
+		exit 1
+	fi
+else
+	exit 0
+fi
+
+if [ -x /sbin/pidof ] && [ "$1" != "stop" ]; then
+	[ -z "`/sbin/pidof portmap`" ] && nls "Error: portmap isn't running" && exit 0
+fi
+
+# Get service config
+[ -f /etc/sysconfig/nfsfs ] && . /etc/sysconfig/nfsfs
+[ -f /etc/sysconfig/nfsd ] && . /etc/sysconfig/nfsd
+
+# /usr may be on NFS, fail silently, nfsfs will start it
+[ -x /usr/sbin/rpc.idmapd ] || exit 0
+
+RETVAL=0
+
+# See how we were called.
+case "$1" in
+  start)
+	# Check if the service is already running?
+	if [ ! -f /var/lock/subsys/idmapd ]; then
+		if ! grep -q rpc_pipefs /proc/mounts ; then
+			modprobe -s sunrpc >/dev/null 2>&1
+			run_cmd "Mounting /var/lib/nfs/rpc_pipefs filesystem" \
+				mount -t rpc_pipefs rpc_pipefs /var/lib/nfs/rpc_pipefs
+		fi
+
+		msg_starting "RPC idmapdd"
+		daemon rpc.idmapd $RPCIDMAPOPTIONS
+		RETVAL=$?
+		[ $RETVAL -eq 0 ] && touch /var/lock/subsys/idmapd
+	else
+		msg_already_running "RPC idmapdd"
+	fi
+	;;
+  stop)
+	if [ -f /var/lock/subsys/idmapd ]; then
+		msg_stopping "RPC idmapd"
+		killproc rpc.idmapd
+		rm -f /var/lock/subsys/idmapd
+	else
+		msg_not_running "RPC idmapd"
+	fi
+	;;
+  status)
+	status rpc.idmapd
+	RETVAL=$?
+	;;
+  restart|reload)
+	$0 stop
+	$0 start
+	RETVAL=$?
+	;;
+  *)
+	msg_usage "$0 {start|stop|restart|status}"
+	exit 1
+esac
+
+exit $RETVAL

================================================================
Index: SOURCES/rpcsvcgssd.init
diff -u /dev/null SOURCES/rpcsvcgssd.init:1.1
--- /dev/null	Tue Mar 20 15:57:03 2007
+++ SOURCES/rpcsvcgssd.init	Tue Mar 20 15:56:57 2007
@@ -0,0 +1,86 @@
+#!/bin/bash
+#
+# rpcsvcgssd    Start up and shut down RPCSEC GSS daemon
+#
+# Authors:	Chuck Lever <cel at netapp.com>
+#
+# chkconfig: - 14 81
+# description: Starts user-level daemon that manages RPCSEC GSS contexts \
+#	       for the NFSv4 server.
+
+# 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 -a "$1" != stop -a "$1" != status ]; then
+		msg_network_down "RPC svcgssd daemon"
+		exit 1
+	fi
+else
+	exit 0
+fi
+
+if [ -x /sbin/pidof ] && [ "$1" != "stop" ]; then
+	[ -z "`/sbin/pidof portmap`" ] && nls "Error: portmap isn't running" && exit 0
+fi
+
+# Get service config
+[ -f /etc/sysconfig/nfsd ] && . /etc/sysconfig/nfsd
+
+is_yes "${SECURE_NFS}" || exit 0
+
+# List of kernel modules to load
+[ -z "${SECURE_NFS_MODS}" ] && SECURE_NFS_MODS="des rpcsec_gss_krb5"
+
+RETVAL=0
+
+# See how we were called.
+case "$1" in
+  start)
+	# Check if the service is already running?
+	if [ ! -f /var/lock/subsys/svcgssd ]; then
+		if ! grep -q rpc_pipefs /proc/mounts ; then
+			modprobe -s sunrpc >/dev/null 2>&1
+			run_cmd "Mounting /var/lib/nfs/rpc_pipefs filesystem" \
+				mount -t rpc_pipefs rpc_pipefs /var/lib/nfs/rpc_pipefs
+		fi
+		# Load rpcsec modules
+		for i in ${SECURE_NFS_MODS} ; do 
+			_modprobe single die $i
+		done
+		msg_starting "RPC svcgssd"
+		daemon rpc.svcgssd $RPCSVCGSSOPTIONS
+		RETVAL=$?
+		[ $RETVAL = 0 ] && touch /var/lock/subsys/svcgssd
+	else
+		msg_already_running "RPC svcgssd"
+	fi
+	;;
+  stop)
+	if [ -f /var/lock/subsys/svcgssd ]; then
+		msg_stopping "RPC svcgssd"
+		killproc rpc.svcgssd
+		rm -f /var/lock/subsys/svcgssd
+	else
+		msg_not_running "RPC svcgssd"
+	fi
+	;;
+  status)
+	status rpc.svcgssd
+	RETVAL=$?
+	;;
+  restart|reload)
+	$0 stop
+	$0 start
+	RETVAL=$?
+	;;
+  *)
+	msg_usage "$0 {start|stop|restart|status}"
+	exit 1
+esac
+
+exit $RETVAL
================================================================


More information about the pld-cvs-commit mailing list