]> arthur.barton.de Git - netatalk.git/blob - distrib/initscripts/rc.atalk.gentoo.tmpl
Fix dbd vs cnid_dbd locking
[netatalk.git] / distrib / initscripts / rc.atalk.gentoo.tmpl
1 #!/sbin/runscript
2
3 # Netatalk daemons.
4 # If you use AppleTalk, Make sure not to start atalkd in the background:
5 # its data structures must have time to stablize before running the
6 # other processes.
7
8 depend() {
9         need net
10         use logger dns
11 }
12
13 atalk_startup () {
14 #       . :ETCDIR:/netatalk.conf
15
16         if [ "${ATALKD_RUN}" != "no" ]; then
17                 ebegin "Starting atalkd"
18                 start-stop-daemon --start --quiet --exec :SBINDIR:/atalkd
19                 eend $?
20
21                 for reg in \
22                         "${ATALK_NAME}:Workstation${ATALK_ZONE}" \
23                         "${ATALK_NAME}:netatalk${ATALK_ZONE}"
24                 do
25                         ebegin "  Registering $reg"
26                         :BINDIR:/nbprgstr "$reg"
27                         eend $?
28                 done
29
30                 if [ "${PAPD_RUN}" = "yes" ]; then
31                         ebegin "  Starting papd"
32                         start-stop-daemon --start --quiet --exec :SBINDIR:/papd
33                         eend $?
34                 fi
35
36         fi
37
38         if [ "${CNID_METAD_RUN}" = "yes" ] ; then
39         ebegin "Starting cnid_metad"
40                 start-stop-daemon --start --quiet --exec :SBINDIR:/cnid_metad -- \
41                         ${CNID_CONFIG}
42                 eend $?
43         fi
44
45
46         if [ "${AFPD_RUN}" = "yes" ]; then
47                 ebegin "Starting afpd"
48                 start-stop-daemon --start --quiet --exec :SBINDIR:/afpd -- \
49                         ${AFPD_UAMLIST} -g ${AFPD_GUEST} -c ${AFPD_MAX_CLIENTS} \
50                         -n "${ATALK_NAME}${ATALK_ZONE}"
51                 eend $?
52         fi
53
54         if [ "${TIMELORD_RUN}" = "yes" ]; then
55                 ebegin "Starting timelord"
56                 start-stop-daemon --start --quiet --exec :SBINDIR:/timelord
57                 eend $?
58         fi
59 }
60
61 start () {
62         . :ETCDIR:/netatalk.conf
63
64         if [ x"${ATALK_BGROUND}" = x"yes" ]; then
65             echo "Starting netatalk in the background ... "
66             atalk_startup >& /dev/null &
67         else
68             atalk_startup
69         fi
70 }
71
72 stop () {
73         . :ETCDIR:/netatalk.conf
74
75         if [ "${AFPD_RUN}" = "yes" ]; then
76                 ebegin "Stopping afpd"
77                 start-stop-daemon --stop --quiet --exec :SBINDIR:/afpd
78                 eend $?
79         fi
80
81         if [ "${TIMELORD_RUN}" = "yes" ]; then
82                 ebegin "Stopping timelord"
83                 start-stop-daemon --stop --quiet --exec :SBINDIR:/timelord
84                 eend $?
85         fi
86
87         if [ "${ATALKD_RUN}" != "no" ]; then
88                 if [ "${PAPD_RUN}" = "yes" ]; then
89                         ebegin "Stopping papd"
90                         start-stop-daemon --stop --quiet --exec :SBINDIR:/papd
91                         eend $?
92                 fi
93
94                 for reg in \
95                         "${ATALK_NAME}:Workstation${ATALK_ZONE}" \
96                         "${ATALK_NAME}:netatalk${ATALK_ZONE}"
97                 do
98                         ebegin "Unregistering $reg"
99                         :BINDIR:/nbpunrgstr "$reg"
100                         eend $?
101                 done
102
103                 ebegin "Stopping atalkd"
104                 start-stop-daemon --stop --quiet --exec :SBINDIR:/atalkd
105                 eend $?
106         fi
107
108         if [ "${CNID_METAD_RUN}" = "yes" ] ; then
109                 ebegin "Stopping cnid_metad"
110                 start-stop-daemon --stop --quiet --exec :SBINDIR:/cnid_metad
111                 eend $?
112         fi
113 }