### BEGIN INIT INFO
# Provides: netatalk
# Required-Start: $remote_fs $syslog
+# Should-Start: avahi-daemon
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 1
### END INIT INFO
#
-# netatalk Netatalk 2.x initscript
+# netatalk Netatalk :NETATALK_VERSION: initscript
# Author: Thomas Kaiser <Thomas.Kaiser@phg-online.de>
set -e
SCRIPTNAME=/etc/init.d/$NAME
# Guard to prevent execution if netatalk was removed.
-test -x :SBINDIR:/atalkd || exit 0
-
-# Set defaults. Please change these options in /etc/default/netatalk
-AFPD_UAMLIST="-U uams_dhx2.so"
-AFPD_GUEST=nobody
-AFPD_MAX_CLIENTS=50
-ATALK_ZONE=
-ATALK_NAME=`/bin/hostname --short`
-ATALK_BGROUND=no
-CNID_METAD_RUN=yes
-ATALK_MAC_CHARSET='MAC_ROMAN'
-ATALK_UNIX_CHARSET='LOCALE'
-
-# /etc/default/netatalk expects hostname in $HOSTNAME by default
-HOSTNAME=`/bin/hostname`
-# next netatalk 2.2 will not expect $HOSTNAME.
-
-# Read in netatalk configuration.
-if [ -f /etc/default/netatalk ]; then
- . /etc/default/netatalk
-fi
+test -x :SBINDIR:/afpd || exit 0
# Start Netatalk servers.
atalk_startup() {
- if [ x"$ATALKD_RUN" = x"yes" ]; then
-
- # Try to load the AppleTalk kernel module if it was intended.
- if grep -q '^appletalk$' /etc/modules; then
- /sbin/modprobe appletalk || echo "[could not load appletalk module]"
+ if [ -x :SBINDIR:/cnid_metad ] ; then
+ :SBINDIR:/cnid_metad
+ echo -n " cnid_metad"
fi
-
- # Start atalkd server.
- :SBINDIR:/atalkd
-
- # register workstation
- :BINDIR:/nbprgstr -p 4 "$ATALK_NAME:Workstation$ATALK_ZONE"
- :BINDIR:/nbprgstr -p 4 "$ATALK_NAME:netatalk$ATALK_ZONE"
-
- echo -n " atalkd"
- fi
-
- # prepare startup of file services
- if [ "x$CNID_METAD_RUN" = "xyes" -a -x :SBINDIR:/cnid_metad ] ; then
- echo -n " cnid_metad"
- :SBINDIR:/cnid_metad $CNID_CONFIG
- fi
-
- if [ x"$AFPD_RUN" = x"yes" ]; then
- :SBINDIR:/afpd $AFPD_UAMLIST -g $AFPD_GUEST -c $AFPD_MAX_CLIENTS \
- -n "$ATALK_NAME$ATALK_ZONE"
- echo -n " afpd"
- fi
-
- if [ "x$ATALKD_RUN" = "xyes" ]; then
- if [ "x$PAPD_RUN" = "xyes" ]; then
- :SBINDIR:/papd
- echo -n " papd"
- fi
-
- if [ x"$TIMELORD_RUN" = x"yes" ]; then
- :SBINDIR:/timelord
- echo -n " timelord"
- fi
+
+ if [ -x :SBINDIR:/afpd ]; then
+ :SBINDIR:/afpd
+ echo -n " afpd"
fi
}
case "$1" in
- start)
- if test "x$ATALK_BGROUND" = "xyes"; then
- echo "Starting Netatalk services in the background."
- atalk_startup >/dev/null &
- else
- echo -n "Starting Netatalk services (this will take a while): "
- atalk_startup
- echo "."
- fi
- ;;
-
- stop)
- echo -n "Stopping Netatalk Daemons:"
- echo -n " afpd"
- start-stop-daemon --stop --quiet --oknodo --exec :SBINDIR:/afpd
-
- echo -n " cnid_metad"
- start-stop-daemon --stop --quiet --oknodo --exec :SBINDIR:/cnid_metad
-
- echo -n " papd"
- start-stop-daemon --stop --quiet --oknodo --exec :SBINDIR:/papd
-
- if test -x :SBINDIR:/timelord; then
- echo -n " timelord"
- start-stop-daemon --stop --quiet --oknodo --exec :SBINDIR:/timelord
- fi
-
- echo -n " atalkd"
- start-stop-daemon --stop --quiet --oknodo --exec :SBINDIR:/atalkd
-
- echo "."
- ;;
-
- restart)
- $0 force-reload
- ;;
-
- force-reload)
- echo -n "Restarting Netatalk Daemons (this will take a while)"
- $0 stop
- echo -n "."
- sleep 2
- echo -n "."
- if $0 start; then
- echo "done."
- fi
- ;;
-
- *)
- echo "Usage: $0 {start|stop|restart|force-reload}" >&2
- exit 1
- ;;
+ start)
+ echo -n "Starting Netatalk services: "
+ atalk_startup
+ echo "."
+ ;;
+
+ stop)
+ echo -n "Stopping Netatalk Daemons:"
+ echo -n " afpd"
+ start-stop-daemon --stop --quiet --oknodo --exec :SBINDIR:/afpd
+
+ echo -n " cnid_metad"
+ start-stop-daemon --stop --quiet --oknodo --exec :SBINDIR:/cnid_metad
+
+ echo "."
+ ;;
+
+ restart)
+ $0 force-reload
+ ;;
+
+ force-reload)
+ echo -n "Restarting Netatalk Daemons"
+ $0 stop
+ echo -n "."
+ sleep 2
+ echo -n "."
+ if $0 start; then
+ echo "done."
+ fi
+ ;;
+
+ *)
+ echo "Usage: $0 {start|stop|restart|force-reload}" >&2
+ exit 1
+ ;;
esac