less error msg clutter on nonexistant socketfile
[svn42.git] / tuer.initscript
1 #!/bin/sh
2 # Start/stop the tuer daemon.
3 #
4 ### BEGIN INIT INFO
5 # Provides:          tuer
6 # Required-Start:    $remote_fs $syslog $time
7 # Required-Stop:     $remote_fs $syslog $time
8 # Default-Start:     2 3 4 5
9 # Default-Stop:      1
10 ### END INIT INFO
11
12 EXE_DOOR=/flash/tuer/door_daemon
13 EXE_CARD=/flash/tuer/checkcard.pl
14 EXE_UWEB=/flash/tuer/update-web-status.py
15 EXE_XMPP=/flash/tuer/update-xmpp-status.py
16 DIR_RUN=/var/run/tuer
17
18 CFG_UWEB=/flash/tuer/update-web-status.cfg
19 CFG_XMPP=/flash/tuer/update-xmpp-status.cfg
20
21 DOOR_SOCKET=${DIR_RUN}/door_cmd.socket
22 DOOR_DEV=/dev/door
23 DOOR_LOG="--log syslog:3,door_daemon,local1"
24 DOOR_USR=tuer
25 DOOR_GRP=nogroup
26 #DOOR_HOME=$DIR_RUN
27
28 PIDFILE1=${DIR_RUN}/door_daemon.pid
29 PIDFILE2=${DIR_RUN}/checkcard.pid
30 PIDFILE3=${DIR_RUN}/update-web-status.pid
31 PIDFILE4=${DIR_RUN}/update-xmpp-status.pid
32
33 test -f $EXE_DOOR  || exit 1
34 test -f $EXE_CARD  || exit 1
35 if [ ! -d $DIR_RUN ]; then
36         mkdir -p $DIR_RUN || exit 2
37         chown -R $DOOR_USR:$DOOR_GRP $DIR_RUN
38 fi
39 chown $DOOR_USR:$DOOR_GRP $DOOR_DEV
40
41 . /lib/lsb/init-functions
42
43 # Read the system's locale and set cron's locale. This locale
44 # will be inherited by cron (used to set charset of emails)
45 # and tasks running under it.
46
47 case "$1" in
48 start)  
49         log_daemon_msg "Starting door daemon" "door_daemon"
50         start-stop-daemon --start --quiet --pidfile $PIDFILE1 --name door_daemon --startas $EXE_DOOR -- -d $DOOR_DEV -s $DOOR_SOCKET -u $DOOR_USR -g $DOOR_GRP -P $PIDFILE1 $DOOR_LOG
51         log_end_msg $?
52         log_daemon_msg "Starting door daemon" "checkcard"
53         start-stop-daemon --start --quiet --pidfile $PIDFILE2 -b -m --name checkcard.pl --startas $EXE_CARD  -- $DOOR_SOCKET
54         #start-stop-daemon --start --quiet --pidfile $PIDFILE2 -c $DOOR_USR -b -m --name checkcard.pl --startas $EXE_CARD  -- $DOOR_SOCKET
55         log_end_msg $?  
56         log_daemon_msg "Starting door daemon" "update-web-status"
57         start-stop-daemon --start --quiet --pidfile $PIDFILE3 -b -m -c $DOOR_USR --name update-web-status.py --startas $EXE_UWEB  -- $DOOR_SOCKET $CFG_UWEB
58         log_end_msg $?  
59         log_daemon_msg "Starting door daemon" "update-xmpp-status"
60         start-stop-daemon --start --quiet --pidfile $PIDFILE4 -b -m -c $DOOR_USR --name update-xmpp-status.py --startas $EXE_XMPP  -- $DOOR_SOCKET $CFG_XMPP
61         log_end_msg $?  
62         ;;
63 stop)
64         log_daemon_msg "Stopping door daemon" "door_daemon"
65         start-stop-daemon --stop --quiet --pidfile $PIDFILE1 -m --name door_daemon 
66         log_end_msg $?
67         log_daemon_msg "Stopping door daemon" "checkcard"
68         start-stop-daemon --stop --quiet --pidfile $PIDFILE2 -m --name checkcard.pl
69         log_end_msg $?  
70         log_daemon_msg "Stopping door daemon" "update-web-status"
71         start-stop-daemon --stop --quiet --pidfile $PIDFILE3 -m --retry TERM/1/TERM/1/KILL 
72         log_end_msg $?  
73         log_daemon_msg "Stopping door daemon" "update-xmpp-status"
74         start-stop-daemon --stop --quiet --pidfile $PIDFILE4 -m --retry TERM/1/TERM/1/KILL 
75         log_end_msg $?  
76         killall "mifare-read" 2>/dev/null
77         ;;
78 restart) 
79         $0 stop
80         $0 start
81         ;;
82 *)      log_action_msg "Usage: $0 {start|stop|restart|reload|force-reload}"
83         exit 2
84         ;;
85 esac
86 exit 0