]> git.llucax.com Git - z.facultad/75.08/llamadas.git/blob - inst/afimonio_daemon.sh
dac8b970ed24cf32743f186e2b578c7691c70f94
[z.facultad/75.08/llamadas.git] / inst / afimonio_daemon.sh
1 #!/bin/bash
2
3 # Configuración
4 WAIT=10
5 DAEMON=afimonio
6
7 # --------------- SCRIPT ---------------------
8
9 BASE_DIR="$HOME/.antifraude"
10
11 . "$BASE_DIR/conf/$DAEMON.conf"
12 . "$BASE_DIR/util.sh"
13
14 ayuda () {
15         perr "Parámetros válidos : start, stop, status"
16 }
17
18 case "$1" in
19         "start")
20                 echo -n "Iniciando demonio '$DAEMON' en modo daemon... "
21                 if is_lock "$DAEMON"; then
22                         echo "ERROR!"
23                         perr "$DAEMON ya está corriendo (PID=`lock_pid $DAEMON`)."
24                         exit 1
25                 fi
26                 nohup "$AFIM_BINDIR/$DAEMON" > /dev/null &
27                 for i in `seq $WAIT`; do
28                         if is_lock "$DAEMON"; then
29                                 echo "OK! (PID=`lock_pid $DAEMON`)"
30                                 exit 0
31                         fi
32                         sleep 1;
33                 done
34                 # Tardó más de 5 segundos en arrancar, algo anda mal...
35                 echo "ERROR!"
36                 perr "$DAEMON tardó más de $WAIT segundos en arrancar, probablemente haya algún problema."
37                 exit 1
38         ;;
39         "stop")
40                 echo -n "Parando el demonio '$DAEMON'... "
41                 if ! is_lock "$DAEMON"; then
42                         echo "ERROR!"
43                         perr "$DAEMON no esta corriendo."
44                         exit 1
45                 fi
46                 kill `lock_pid $DAEMON`
47                 for i in `seq $WAIT`; do
48                         if ! is_lock "$DAEMON"; then
49                                 echo "OK!"
50                                 exit 0
51                         fi
52                         sleep 1;
53                 done
54                 # Tardó más de 5 segundos en parar, algo anda mal...
55                 echo "ERROR!"
56                 perr "$DAEMON tardó más de $WAIT segundos en parar, probablemente haya algún problema."
57                 exit 1
58         ;;
59         "status")
60                 if is_lock "$DAEMON"; then
61                         echo "$DAEMON está corriendo actualmente (PID=`lock_pid $DAEMON`)."
62                 else
63                         echo "$DAEMON no está corriendo."
64                 fi
65         ;;
66         *) ayuda ;;
67 esac
68