BitTorrent Tracker Init Script

I made a magical init script today:


#!/bin/sh

# This is an init script to start a BitTorrent tracker as a daemon.
# The script is originally from Kreiger (but slightly modified) -- se his web site at http://kreiger.linuxgods.com/
# More info at http://handgranat.org/rc.bittorrent
# Even more modification by Hank

# source function library
. /etc/rc.d/init.d/functions

PIDFILE=/var/run/bttrack.pid
DFILE=/var/cache/bttrack/dfile
LOGFILE=/var/log/bttrack_access.log
TRACKER_PORT=8080
ALLOWED_TORRENTS_DIR=/var/www/torrents/

tracker_start() {
    echo -n $"Starting Bittorrent Tracker: "
    bittorrent-tracker --allow_get 1 --port $TRACKER_PORT --dfile $DFILE --logfile $LOGFILE --allowed_dir $ALLOWED_TORRENTS_DIR --parse_dir_interval 180 &
    echo $! > $PIDFILE
    stat $PIDFILE > /dev/null 2>&1 && success || failure
    RETVAL=$?
    echo
}

tracker_stop() {
    if [ -r $PIDFILE ]; then
        echo -n $"Stopping Bittorrent Tracker: "
        kill `cat $PIDFILE` 2> /dev/null && rm $PIDFILE && success || failure
        RETVAL=$?
        echo
    fi
}

case "$1" in
start)
    tracker_start
    ;;
stop)
    tracker_stop
    ;;
restart)
    tracker_stop
    tracker_start
    ;;
force-reload)
    tracker_stop
    tracker_start
    ;;
*)
    echo "Usage: $0 {start|stop|restart|force-reload}"
    ;;
esac

Totally works on Centos 4.4 yum installed bittorrent. Makes the running port 8080. Don’t forget to open IPTables.



Comments are closed