]> arthur.barton.de Git - netatalk.git/blob - distrib/initscripts/rc.atalk.sysv.tmpl
2263084feafc8be8bddb25e67d711afc974ad729
[netatalk.git] / distrib / initscripts / rc.atalk.sysv.tmpl
1 #! /bin/sh
2 #
3 # Start/stop the Netatalk daemons.
4 #
5 # AppleTalk daemons. Make sure not to start atalkd in the background:
6 # its data structures must have time to stablize before running the
7 # other processes.
8 #
9
10 #
11 # kill the named process(es)
12 #
13 killproc() {
14         pid=`/usr/bin/ps -e |
15              /usr/bin/grep $1 |
16              /usr/bin/sed -e 's/^  *//' -e 's/ .*//'`
17         [ "$pid" != "" ] && kill $pid
18 }
19
20 # netatalk.conf expects hostname in $HOSTNAME by default
21 HOSTNAME=`hostname`
22
23 . :ETCDIR:/netatalk.conf
24
25
26 #
27 # Start the appletalk server processes.
28 #
29
30 atalk_startup() {
31         echo 'starting appletalk daemons: \c'
32         if [ x"${ATALKD_RUN}" != x"no" ]; then
33                 if [ -x :SBINDIR:/atalkd ]; then
34                         :SBINDIR:/atalkd;               echo ' atalkd\c'
35                 fi
36
37                 if [ -x :BINDIR:/nbprgstr ]; then
38                         :BINDIR:/nbprgstr -p 4 "${ATALK_NAME}:Workstation${ATALK_ZONE}";
39                         :BINDIR:/nbprgstr -p 4 "${ATALK_NAME}:netatalk${ATALK_ZONE}";
40                                                         echo ' nbprgstr\c'
41                 fi
42
43                 if [ x"${PAPD_RUN}" = x"yes"  -a -x :SBINDIR:/papd ]; then
44                         :SBINDIR:/papd;                 echo ' papd\c'
45                 fi
46
47                 if [ x"${TIMELORD_RUN}" = x"yes"  -a -x :SBINDIR:/timelord ]; then
48                         :SBINDIR:/timelord;             echo ' timelord\c'
49                 fi
50         fi
51
52         if [ x"${CNID_METAD_RUN}" = x"yes" -a -x :SBINDIR:/cnid_metad ]; then
53         if [ "x$CNID_DBD_LOGCONFIG" = "x" ]; then
54             :SBINDIR:/cnid_metad
55         else
56             :SBINDIR:/cnid_metad -l "$CNID_DBD_LOGCONFIG"
57         fi
58         echo ' cnid_metad\c'
59         fi
60
61         if [  x"${AFPD_RUN}" = x"yes" -a -x :SBINDIR:/afpd ]; then
62                 :SBINDIR:/afpd  ${AFPD_UAMLIST} -g ${AFPD_GUEST} \
63                -c ${AFPD_MAX_CLIENTS} -n "${ATALK_NAME}${ATALK_ZONE}";  echo ' afpd\c'
64         fi
65
66         echo '.'
67 }
68
69
70 case "$1" in
71
72 'start')
73         if [ x"${ATALK_BGROUND}" = x"yes" ]; then
74             echo "Starting netatalk in the background ... "
75             atalk_startup > /dev/null &
76         else
77             atalk_startup
78         fi
79         ;;
80
81 #
82 # Stop the appletalk server processes.
83 #
84 'stop')
85
86         echo 'stopping appletalk daemons:\c'
87
88         if [ -x :SBINDIR:/papd ]; then
89                 killproc papd;                  echo ' papd\c'
90         fi
91
92         if [ -x :SBINDIR:/afpd ]; then
93                 killproc afpd;                  echo ' afpd\c'
94         fi
95
96         if [ -x :SBINDIR:/cnid_metad ]; then
97                 killproc cnid_met;              echo ' cnid_metad\c'
98         fi
99
100         if [ -x :SBINDIR:/timelord ]; then
101                 killproc timelord;              echo ' timelord\c'
102         fi
103
104         # kill atalkd last, since without it the plumbing goes away.
105         if [ -x :SBINDIR:/atalkd ]; then
106                 killproc atalkd;                echo ' atalkd\c'
107         fi
108
109         echo '.'
110         ;;
111
112 #
113 # Usage statement.
114 #
115
116 *)
117         echo "usage: $0 {start|stop}"
118         exit 1
119         ;;
120 esac