]> CyberLeo.Net >> Repos - FreeBSD/releng/10.0.git/blob - contrib/amd/scripts/redhat-ctl-amd.in
- Copy stable/10 (r259064) to releng/10.0 as part of the
[FreeBSD/releng/10.0.git] / contrib / amd / scripts / redhat-ctl-amd.in
1 #!/bin/bash
2 #
3 # Version: 1.3
4 #
5 # chkconfig: - 72 28
6 # description: Runs the automount daemon that mounts devices and NFS hosts \
7 #              on demand.
8 # processname: amd
9 # config: /etc/amd.conf
10 #
11
12 # we require the /etc/amd.conf file
13 [ -f /etc/amd.conf ] || exit 0
14 [ -f /etc/sysconfig/amd ] || exit 0
15
16 # Source function library.
17 . /etc/init.d/functions
18
19 # Recover AMDOPTS from /etc/sysconfig/amd.
20 if [ -f /etc/sysconfig/amd ] ; then
21         . /etc/sysconfig/amd
22 fi
23
24 RETVAL=0
25 prog=amd
26 prefix=@prefix@
27 exec_prefix=@exec_prefix@
28 amd=@sbindir@/amd
29
30 start() {
31         echo -n "Starting $prog: "
32         daemon $amd -F /etc/amd.conf $AMDOPTS $OPTIONS $MOUNTPTS
33         RETVAL=$?
34         echo
35         [ $RETVAL = 0 ] && touch /var/lock/subsys/amd
36         return $RETVAL
37 }
38
39 stop() {
40
41         echo -n "Stopping $prog: "
42         # modeled from /usr/sbin/ctl-amd
43         pid=`/usr/sbin/amq -p 2>/dev/null`
44         if [ "$pid" = "" ] ; then
45                 # amq -p did not give pid, so try ps
46                 pid=`ps acx 2>/dev/null | grep "amd" | sed -e 's/^  *//' -e 's/ .*//'`
47         fi
48         if [ "$pid" = "" ] ; then
49                 failure "amd shutdown pid"
50                 echo
51                 return 1
52         fi
53         kill $pid
54         # and this part is from wait4amd2die
55         delay=5
56         count=6
57         i=1
58         maxcount=`expr $count + 1`
59         while [ $i != $maxcount ]; do
60                 # run amq
61                 /usr/sbin/amq > /dev/null 2>&1
62                 if [ $? != 0 ]
63                 then
64                         # amq failed to run (because amd is dead)
65                         success "amd shutdown"
66                         rm -f /var/lock/subsys/amd
67                         echo
68                         return 0
69                 fi
70                 sleep $delay
71                 i=`expr $i + 1`
72         done
73         failure "amd shutdown (still up)"
74         echo
75         return 1
76 }
77 # See how we were called.
78 case "$1" in
79   start)
80         start
81         ;;
82   stop)
83         stop
84         ;;
85   status)
86         status $amd
87         ;;
88   restart)
89         stop
90         start
91         ;;
92   condrestart)
93         if [ -f /var/lock/subsys/amd ]; then
94             stop
95             start
96         fi
97         ;;
98   reload)
99         action "Reloading $prog:" killall -HUP $amd
100         ;;
101   *)
102         echo "Usage: $0 {start|stop|restart|reload|condrestart|status}"
103         exit 1
104 esac
105
106 exit 0