]> git.pld-linux.org Git - packages/nfs-utils.git/blob - rpcsvcgssd.init
- updated to 2.3.4
[packages/nfs-utils.git] / rpcsvcgssd.init
1 #!/bin/sh
2 #
3 # svcgssd       Start up and shut down RPCSEC GSS daemon
4 #
5 # chkconfig:    345 12 82
6 # description:  Starts user-level daemon that manages RPCSEC GSS contexts \
7 #               for the NFSv4 server.
8
9 # Source function library.
10 . /etc/rc.d/init.d/functions
11
12 # Get network config
13 . /etc/sysconfig/network
14
15 # Check that networking is up.
16 if is_yes "${NETWORKING}"; then
17         if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then
18                 msg_network_down "RPC svcgssd"
19                 exit 1
20         fi
21 else
22         exit 0
23 fi
24
25 if [ "$1" != "stop" ]; then
26         check_portmapper || { nls "Error: portmap isn't running" && exit 0; }
27 fi
28
29 # Get service config
30 [ -f /etc/sysconfig/nfsd ] && . /etc/sysconfig/nfsd
31
32 is_yes "${SECURE_NFS}" || exit 0
33
34 # List of kernel modules to load
35 [ -z "${SECURE_NFS_MODS}" ] && SECURE_NFS_MODS="des rpcsec_gss_krb5"
36
37 start() {
38         # Check if the service is already running?
39         if [ -f /var/lock/subsys/svcgssd ]; then
40                 msg_already_running "RPC svcgssd"
41                 return
42         fi
43
44         # We need /proc/fs/nfsd mounted before starting svcgssd
45         if ! grep -q nfsd /proc/mounts ; then
46                 modprobe nfsd > /dev/null 2>&1
47                 run_cmd "Mounting /proc/fs/nfsd filesystem" mount -t nfsd nfsd /proc/fs/nfsd
48         fi
49         # Load rpcsec modules
50         for i in ${SECURE_NFS_MODS} ; do 
51                 _modprobe single die $i
52         done
53         msg_starting "RPC svcgssd"
54         daemon /usr/sbin/rpc.svcgssd $RPCSVCGSSOPTIONS
55         RETVAL=$?
56         [ $RETVAL = 0 ] && touch /var/lock/subsys/svcgssd
57 }
58
59 stop() {
60         if [ ! -f /var/lock/subsys/svcgssd ]; then
61                 msg_not_running "RPC svcgssd"
62                 return
63         fi
64
65         msg_stopping "RPC svcgssd"
66         killproc rpc.svcgssd
67         rm -f /var/lock/subsys/svcgssd
68 }
69
70 # See how we were called.
71 RETVAL=0
72 case "$1" in
73   start)
74         start
75         ;;
76   stop)
77         stop
78         ;;
79   restart|reload)
80         stop
81         start
82         ;;
83   status)
84         status rpc.svcgssd
85         RETVAL=$?
86         ;;
87   *)
88         msg_usage "$0 {start|stop|restart|status}"
89         exit 1
90 esac
91
92 exit $RETVAL
This page took 0.035837 seconds and 3 git commands to generate.