updated new log messges to better fit the situation
[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 DIR_RUN=/var/run/tuer
16
17 CFG_UWEB=/flash/tuer/update-web-status.cfg
18
19 DOOR_SOCKET=${DIR_RUN}/door_cmd.socket
20 DOOR_DEV=/dev/door
21 DOOR_LOG="--log syslog:3,door_daemon,local1"
22 DOOR_USR=tuer
23 DOOR_GRP=nogroup
24 #DOOR_HOME=$DIR_RUN
25
26 PIDFILE1=${DIR_RUN}/door_daemon.pid
27 PIDFILE2=${DIR_RUN}/checkcard.pid
28 PIDFILE3=${DIR_RUN}/update-web-status.pid
29
30 test -f $EXE_DOOR  || exit 1
31 test -f $EXE_CARD  || exit 1
32 if [ ! -d $DIR_RUN ]; then
33         mkdir -p $DIR_RUN || exit 2
34         chown -R $DOOR_USR:$DOOR_GRP $DIR_RUN
35 fi
36 chown $DOOR_USR:$DOOR_GRP $DOOR_DEV
37
38 . /lib/lsb/init-functions
39
40 # Read the system's locale and set cron's locale. This locale
41 # will be inherited by cron (used to set charset of emails)
42 # and tasks running under it.
43
44 case "$1" in
45 start)  
46         log_daemon_msg "Starting door daemon" "door_daemon"
47         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
48         log_end_msg $?
49         log_daemon_msg "Starting door daemon" "checkcard"
50         start-stop-daemon --start --quiet --pidfile $PIDFILE2 -b -m --name checkcard.pl --startas $EXE_CARD  -- $DOOR_SOCKET
51         #start-stop-daemon --start --quiet --pidfile $PIDFILE2 -c $DOOR_USR -b -m --name checkcard.pl --startas $EXE_CARD  -- $DOOR_SOCKET
52         log_end_msg $?  
53         log_daemon_msg "Starting door daemon" "update-web-status"
54         start-stop-daemon --start --quiet --pidfile $PIDFILE3 -b -m -c $DOOR_USR --name update-web-status.py --startas $EXE_UWEB  -- $DOOR_SOCKET $CFG_UWEB
55         log_end_msg $?  
56         ;;
57 stop)
58         log_daemon_msg "Stopping door daemon" "door_daemon"
59         start-stop-daemon --stop --quiet --pidfile $PIDFILE1 -m --name door_daemon 
60         log_end_msg $?
61         log_daemon_msg "Stopping door daemon" "checkcard"
62         start-stop-daemon --stop --quiet --pidfile $PIDFILE2 -m --name checkcard.pl
63         log_end_msg $?  
64         log_daemon_msg "Stopping door daemon" "update-web-status"
65         start-stop-daemon --stop --quiet --pidfile $PIDFILE3 -m --retry TERM/1/TERM/1/KILL 
66         log_end_msg $?  
67         killall "mifare-read" 2>/dev/null
68         ;;
69 restart) 
70         $0 stop
71         $0 start
72         ;;
73 *)      log_action_msg "Usage: $0 {start|stop|restart|reload|force-reload}"
74         exit 2
75         ;;
76 esac
77 exit 0