mirror of
https://github.com/NNTmux/newznab-tmux.git
synced 2026-08-29 17:28:55 +00:00
89 lines
2.2 KiB
Bash
89 lines
2.2 KiB
Bash
#!/bin/sh
|
|
#
|
|
# /etc/init.d/newznab: start and stop the newznab update script
|
|
#
|
|
# run update-rc.d newznab_ubuntu.sh defaults
|
|
|
|
|
|
### BEGIN INIT INFO
|
|
# Provides: Newznab
|
|
# Required-Start: $remote_fs $syslog
|
|
# Required-Stop: $remote_fs $syslog
|
|
# Default-Start: 2 3 4 5
|
|
# Default-Stop: 0 1 6
|
|
# Short-Description: Start newznab at boot time
|
|
# Description: Enable newznab service provided by daemon.
|
|
### END INIT INFO
|
|
|
|
RED=$(tput setaf 1)
|
|
GREEN=$(tput setaf 2)
|
|
NORMAL=$(tput sgr0)
|
|
|
|
col=40
|
|
|
|
# Newznab variables
|
|
|
|
NN_PATH="/var/www/newznab/htdocs/misc/update_scripts"
|
|
NN_BINUP="update_binaries.php"
|
|
NN_RELUP="update_releases.php"
|
|
NN_PREDB="update_predb.php true"
|
|
NN_OPT="optimise_db.php"
|
|
NN_TV="update_tvschedule.php"
|
|
NN_THEATERS="update_theaters.php"
|
|
NN_SLEEP_TIME="10" # in seconds . 10sec is good for 100s of groups. 600sec might be a good start for fewer.
|
|
NN_PID_PATH="/var/run/"
|
|
PIDFILE="newznab_sh.pid"
|
|
LASTOPTIMIZE=`date +%s`
|
|
|
|
test -f /lib/lsb/init-functions || exit 1
|
|
. /lib/lsb/init-functions
|
|
|
|
case "$1" in
|
|
start)
|
|
if [ -f ${NN_PID_PATH}${PIDFILE} ]
|
|
then
|
|
echo "$0 is already running."
|
|
else
|
|
echo -n "Starting Newznab binaries update..."
|
|
cd ${NN_PATH}
|
|
while :
|
|
do
|
|
CURRTIME=`date +%s`
|
|
php ${NN_BINUP} 2>&1 > /dev/null && php ${NN_RELUP} 2>&1 > /dev/null && php ${NN_PREDB} 2>&1 > /dev/null
|
|
DIFF=$(($CURRTIME-$LASTOPTIMIZE))
|
|
if [ "$DIFF" -gt 43200 ] || [ "$DIFF" -lt 1 ]
|
|
then
|
|
LASTOPTIMIZE=`date +%s`
|
|
php ${NN_OPT} 2>&1 > /dev/null && php ${NN_TV} 2>&1 > /dev/null && php ${NN_THEATERS} 2>&1 > /dev/null
|
|
fi
|
|
sleep ${NN_SLEEP_TIME}
|
|
done &
|
|
PID=$!
|
|
echo $PID > ${NN_PID_PATH}${PIDFILE}
|
|
sleep 2
|
|
if [ -f ${NN_PID_PATH}${PIDFILE} ]
|
|
then
|
|
printf '%s%*s%s\n' "$GREEN" $col '[OK]' "$NORMAL"
|
|
else
|
|
printf '%s%*s%s\n' "$RED" $col '[FAIL]' "$NORMAL"
|
|
fi
|
|
fi &
|
|
;;
|
|
stop)
|
|
echo -n "Stopping Newznab binaries update..."
|
|
kill -9 `cat ${NN_PID_PATH}${PIDFILE}` && kill -9 `cat ${NN_PID_PATH}${PIDFILE}` && rm ${NN_PID_PATH}${PIDFILE}
|
|
sleep 2
|
|
if [ -f ${NN_PID_PATH}${PIDFILE} ]
|
|
then
|
|
printf '%s%*s%s\n' "$RED" $col '[FAIL]' "$NORMAL"
|
|
else
|
|
printf '%s%*s%s\n' "$GREEN" $col '[OK]' "$NORMAL"
|
|
fi
|
|
;;
|
|
|
|
*)
|
|
echo "Usage: $0 [start|stop]"
|
|
exit 1
|
|
esac
|
|
|