56 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			56 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/bash
 | |
| 
 | |
| export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
 | |
| 
 | |
| BASENAME="${0##*/}"
 | |
| ACTION="$1"
 | |
| MOUNT_POINT="$2"
 | |
| 
 | |
| transmission_try_start() {
 | |
|     . /etc/default/transmission-daemon
 | |
|     if [ $(expr "${BASE_DIR}/" : "${MOUNT_POINT}/") -gt 0 ]; then
 | |
| 	sed -r 's/^ENABLE_DAEMON=.*$/ENABLE_DAEMON=1/' < /etc/default/transmission-daemon > /tmp/.transmission-daemon.$$
 | |
| 	cat /tmp/.transmission-daemon.$$ > /etc/default/transmission-daemon
 | |
| 	rm  /tmp/.transmission-daemon.$$
 | |
| 	if [ "$(pidof transmission-daemon)" != "" ]; then
 | |
| 	    killall -9 transmission-daemon 2>&1 >/dev/null
 | |
| 	    sleep 1
 | |
| 	fi
 | |
| 	xMASK=$(umask); umask 0000
 | |
| 	[ ! -d "${BASE_DIR}"     ] && mkdir -p "${BASE_DIR}"
 | |
| 	[ ! -d "${CONFIG_DIR}"   ] && mkdir -p "${CONFIG_DIR}"
 | |
| 	[ ! -d "${DOWNLOAD_DIR}" ] && mkdir -p "${DOWNLOAD_DIR}"
 | |
| 	[ ! -d "${WATCH_DIR}"    ] && mkdir -p "${WATCH_DIR}"
 | |
| 	[ ! -f "${CONFIG_DIR}/settings.json" ] && cp "/var/lib/transmission/settings.json.template" "${CONFIG_DIR}/settings.json" 
 | |
| 	umask ${xMASK}
 | |
| 	/etc/init.d/transmission-daemon start 2>&1 >/dev/null
 | |
|     fi
 | |
| }
 | |
| 
 | |
| transmission_try_stop() {
 | |
|     . /etc/default/transmission-daemon
 | |
|     if [ $(expr "${BASE_DIR}/" : "${MOUNT_POINT}/") -gt 0 ]; then
 | |
| 	sed -r 's/^ENABLE_DAEMON=.*$/ENABLE_DAEMON=0/' < /etc/default/transmission-daemon > /tmp/.transmission-daemon.$$
 | |
| 	cat /tmp/.transmission-daemon.$$ > /etc/default/transmission-daemon
 | |
| 	rm  /tmp/.transmission-daemon.$$
 | |
| 	if [ "$(pidof transmission-daemon)" != "" ]; then
 | |
| 	    killall -9 transmission-daemon 2>&1 >/dev/null
 | |
| 	fi
 | |
|     fi
 | |
| }
 | |
| 
 | |
| logger -t $BASENAME "$@ --> BEGIN"
 | |
| 
 | |
| case "$1" in
 | |
|     add)
 | |
| 	transmission_try_start
 | |
|     ;;
 | |
|     remove)
 | |
| 	transmission_try_stop
 | |
|     ;;
 | |
|     *)
 | |
| 	echo "Use: $0 (add|remove) /mount/point"
 | |
| esac
 | |
| 
 | |
| logger -t $BASENAME "$@ --> END"
 |