]> arthur.barton.de Git - netatalk.git/blob - distrib/initscripts/rc.atalk.sysv.tmpl
ee979d2d4e8bfd9341de2e9683dfa9a4eba0a7e3
[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         :SBINDIR:/cnid_metad $CNID_CONFIG
54         echo ' cnid_metad\c'
55         fi
56
57         if [  x"${AFPD_RUN}" = x"yes" -a -x :SBINDIR:/afpd ]; then
58                 :SBINDIR:/afpd  ${AFPD_UAMLIST} -g ${AFPD_GUEST} \
59                -c ${AFPD_MAX_CLIENTS} -n "${ATALK_NAME}${ATALK_ZONE}";  echo ' afpd\c'
60         fi
61
62         echo '.'
63 }
64
65
66 case "$1" in
67
68 'start')
69         if [ x"${ATALK_BGROUND}" = x"yes" ]; then
70             echo "Starting netatalk in the background ... "
71             atalk_startup > /dev/null &
72         else
73             atalk_startup
74         fi
75         ;;
76
77 #
78 # Stop the appletalk server processes.
79 #
80 'stop')
81
82         echo 'stopping appletalk daemons:\c'
83
84         if [ -x :SBINDIR:/papd ]; then
85                 killproc papd;                  echo ' papd\c'
86         fi
87
88         if [ -x :SBINDIR:/afpd ]; then
89                 killproc afpd;                  echo ' afpd\c'
90         fi
91
92         if [ -x :SBINDIR:/cnid_metad ]; then
93                 killproc cnid_met;              echo ' cnid_metad\c'
94         fi
95
96         if [ -x :SBINDIR:/timelord ]; then
97                 killproc timelord;              echo ' timelord\c'
98         fi
99
100         # kill atalkd last, since without it the plumbing goes away.
101         if [ -x :SBINDIR:/atalkd ]; then
102                 killproc atalkd;                echo ' atalkd\c'
103         fi
104
105         echo '.'
106         ;;
107
108 #
109 # Usage statement.
110 #
111
112 *)
113         echo "usage: $0 {start|stop}"
114         exit 1
115         ;;
116 esac