Installation von Tiny Tiny RSS/Start-Stop-Skript

Aus Synology Wiki
Wechseln zu: Navigation, Suche
#!/bin/sh
#
# starts "Tiny Tiny RSS"ses update daemon
# put it into /usr/local/etc/rc.d/ with the suffix .sh
# chmod 755 on it

# Here, /var/services/web/ttrss/ must be changed to the directory that you installed Tiny Tiny RSS into
DM_CMD="/usr/bin/php /var/services/web/ttrss/update.php --daemon"
getPID ()
{
	ps|grep "$DM_CMD"|grep -v grep|awk '{print $1}'
	return $?
}

# If you need logging information, you can change LOGFILE to another file.
# It must be writable by the user nobody.
# If you need some sensible logging information, remove the parameter --quiet.
LOGFILE=/dev/null
start_daemon () {
	su -m nobody -c "(trap '' SIGHUP && $DM_CMD --quiet >> $LOGFILE 2>&1) &" 2> /dev/null
	return $?
} 

reset_crond () {
	ps |grep /usr/sbin/crond|grep -v grep|awk '{print $1}'|xargs kill -HUP
	return $?
}

# It is very important that the tabs in the next line are preserved!
cronLine="*	*	*	*	*	root	"`realpath $0`" cron"

case $1 in
start)
	start_daemon
	stat=`getPID`
	if [ -z "$stat" ]; then
		echo "$cronLine" >> /etc/crontab
		reset_crond
	fi
	;;
stop)
	PID=`getPID`
	kill $PID
	;;
cron)
	stat=`getPID`
	if [ -z "$stat" ]; then
		start_daemon
	fi
	sed -i -e "\\%$cronLine% d" /etc/crontab
	reset_crond
	;;
*)
	echo "Wrong argument. Usage: $0 start|stop"
	;;
esac

Links