#!/bin/bash # # This is a modified version of the original init script at # http://jasonfriedland.blogspot.com/2009/07/init-script-for-transmission-daemon-on.html # chkconfig: - 16 84 # description: Start up transmission-daemon # # processname: transmission-daemon # config: /etc/sysconfig/transmission-daemon # source function library . /etc/rc.d/init.d/functions # Get network config . /etc/sysconfig/network [ "${NETWORKING}" = "no" ] && exit 0 # Defaults TRANSMISSION_HOME=/var/lib/transmission DAEMON_USER="transmission" DAEMON_ARGS="-T --blocklist -g $TRANSMISSION_HOME/.config/transmission" # Config overrides [ -f /etc/sysconfig/transmission-daemon ] && . /etc/sysconfig/transmission-daemon # Daemon NAME=transmission-daemon DAEMON=$(which $NAME) DAEMON_PIDFILE=/var/run/$NAME.pid DAEMON_LOCKFILE=/var/lock/subsys/$NAME DAEMON_SCRIPTNAME=/etc/init.d/$NAME DAEMON_LOGFILE=/var/log/$NAME.log [ -x "$DAEMON" ] || exit 0 start() { echo -n $"Starting ${NAME}: " if [ -n "$TRANSMISSION_HOME" ]; then export TRANSMISSION_HOME fi daemon --check $DAEMON --user $DAEMON_USER $DAEMON $DAEMON_ARGS sleep 2 status $NAME &> /dev/null && echo_success || echo_failure RETVAL=$? if [ $RETVAL -eq 0 ]; then touch $DAEMON_LOCKFILE pidof -o %PPID -x $NAME > $DAEMON_PIDFILE fi echo } stop() { echo -n $"Shutting down ${NAME}: " killproc $NAME RETVAL=$? [ $RETVAL -eq 0 ] && /bin/rm -f $DAEMON_LOCKFILE $DAEMON_PIDFILE echo } case "$1" in start) start ;; stop) stop ;; restart|reload) stop start ;; condrestart|try-restart) if [ -f $DAEMON_LOCKFILE ]; then stop start fi ;; status) status $NAME ;; *) echo "Usage: $SCRIPTNAME {start|stop|restart|condrestart|status}" >&2 exit 3 ;; esac