#!/bin/bash . /etc/sysconfig/boinc PIDFILE="/var/run/boinc.pid" PROGRAM="/usr/bin/boinc_client" ARGS="-dir ${BOINC_HOME}" RUNLEVEL=3 NEEDS="+network +remote_fs" . /etc/init.d/smgl_init function start() { if [ -f ${PIDFILE} ]; then echo "Boinc is already running" exit 1 fi if ! [ -d ${BOINC_LOGDIR} ]; then mkdir -p ${BOINC_LOGDIR} chown boinc:boinc ${BOINC_LOGDIR} fi if ! [ -d ${BOINC_HOME} ]; then mkdir -p ${BOINC_HOME} chown boinc:boinc ${BOINC_HOME} fi if [ -z ${BOINC_URL} ]; then echo "Setup BOINC_URL in /etc/sysconfig/boinc..." exit 1 fi if [ -z ${BOINC_KEY} ]; then echo "Setup BOINC_KEY in /etc/sysconfig/boinc..." exit 1 fi echo "Starting boinc..." cd ${BOINC_HOME} ${PROGRAM} ${ARGS} -attach_project ${BOINC_URL} ${BOINC_KEY} ${BOINC_PARMS} >> ${BOINC_LOG} 2>>${BOINC_ERROR} & pidof ${PROGRAM} > ${PIDFILE} } function stop() { echo "Stopping boinc..." kill $(pidof ${PROGRAM}) 2>/dev/null rm -f ${PIDFILE} 2>/dev/null } function restart() { stop && sleep 2 && start }