]> git.pld-linux.org Git - packages/nfs-utils.git/blob - rpcgssd.init
- added systemd packages
[packages/nfs-utils.git] / rpcgssd.init
1 #!/bin/sh
2 #
3 # gssd          Start up and shut down RPCSEC GSS daemon
4 #
5 # chkconfig:    345 15 81
6 # description:  Starts user-level daemon that manages RPCSEC GSS contexts \
7 #               for the NFSv4 client.
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 gssd"
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/nfsfs ] && . /etc/sysconfig/nfsfs
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 # /usr may be on NFS, fail silently, nfsfs will start it
38 [ -x /usr/sbin/rpc.gssd ] || exit 0
39
40 start() {
41         # Check if the service is already running?
42         if [ -f /var/lock/subsys/gssd ]; then
43                 msg_already_running "RPC gssd"
44                 return
45         fi
46
47         if ! grep -q rpc_pipefs /proc/mounts; then
48                 modprobe sunrpc >/dev/null 2>&1
49                 run_cmd "Mounting /var/lib/nfs/rpc_pipefs filesystem" \
50                         mount -t rpc_pipefs rpc_pipefs /var/lib/nfs/rpc_pipefs
51         fi
52         # Load rpcsec modules
53         for i in ${SECURE_NFS_MODS}; do
54                 _modprobe single die $i
55         done
56         msg_starting "RPC gssd"
57         daemon rpc.gssd $RPCGSSOPTIONS
58         RETVAL=$?
59         [ $RETVAL = 0 ] && touch /var/lock/subsys/gssd
60 }
61
62 stop() {
63         if [ ! -f /var/lock/subsys/gssd ]; then
64                 msg_not_running "RPC gssd"
65                 return
66         fi
67
68         msg_stopping "RPC gssd"
69         killproc rpc.gssd
70         rm -f /var/lock/subsys/gssd
71 }
72
73 # See how we were called.
74 RETVAL=0
75 case "$1" in
76   start)
77         start
78         ;;
79   stop)
80         stop
81         ;;
82   restart|reload)
83         stop
84         start
85         ;;
86   status)
87         status rpc.gssd
88         RETVAL=$?
89         ;;
90   *)
91         msg_usage "$0 {start|stop|restart|status}"
92         exit 1
93 esac
94
95 exit $RETVAL
This page took 0.130446 seconds and 3 git commands to generate.