dont use deprecated commands in the init scripts.
[asterisk/asterisk.git] / contrib / init.d / rc.debian.asterisk
index 5e50eb7..76406db 100755 (executable)
@@ -22,6 +22,7 @@ NAME=asterisk
 DESC="Asterisk PBX"
 # Full path to asterisk binary
 DAEMON=/usr/sbin/asterisk
+TRUE=/bin/true
 
 # Uncomment this ONLY if you know what you are doing.
 # export LD_ASSUME_KERNEL=2.4.1
@@ -51,6 +52,14 @@ fi
 
 case "$1" in
   start)
+       # Check if Asterisk is already running.  If it is, then bug out, because
+       # starting up Asterisk when Asterisk is already running is very bad.
+       VERSION=`${DAEMON} -rx 'core show version' || ${TRUE}`
+       if [ "`echo $VERSION | cut -c 1-8`" = "Asterisk" ]; then
+               echo "Asterisk is already running.  $0 will exit now."
+               exit 1
+       fi
+
        log_begin_msg "Starting $DESC: $NAME"
         if [ $AST_USER ] ; then
                 ASTARGS="-U $AST_USER"
@@ -70,7 +79,7 @@ case "$1" in
        ;;
   reload)
        echo "Reloading $DESC configuration files."
-       $DAEMON -rx 'reload' > /dev/null 2> /dev/null
+       $DAEMON -rx 'module reload' > /dev/null 2> /dev/null
        ;;
   restart|force-reload)
        $0 stop