#!/bin/sh # A semi-RedHat style init script for staring bnetd . /etc/rc.d/init.d/functions bnetduser="bnetd" bnetdhome="/home/bnetd" bnetdpid="${bnetdhome}/bnetd.pid" bnetdexe="${bnetdhome}/sbin/bnetd" case "$1" in start) echo -n "Starting bnetd: " if [ -r "${bnetdpid}" ] && kill -0 `cat "${bnetdpid}"`; then echo "${bnetdpid} exists and the pid is still valid." else if [ -d "${bnetdhome}" ]; then if [ -x "${bnetdexe}" ]; then # su -c "cd ${bnetdhome}; ${bnetdexe} -f &" - "${bnetduser}" 2>&1 > /dev/null su -c "${bnetdexe}" - "${bnetduser}" 2>&1 > /dev/null # "${bnetdexe}" echo bnetd else echo "${bnetdexe} is not an executable." fi else echo "${bnetdhome} is not a directory." fi fi ;; restart) echo -n "Restarting bnetd: " if [ -f "${bnetdpid}" ] && kill -0 `cat "${bnetdpid}"`; then kill -HUP `cat "${bnetdpid}"` echo "bnetd" else echo "bnetd is not running." fi ;; stop) echo -n "Stopping bnetd: " if [ -f "${bnetdpid}" ]; then kill -TERM `cat "${bnetdpid}"` sleep 1 if [ -f "${bnetdpid}" ] && kill -0 `cat "${bnetdpid}"` 2>&1 > /dev/null; then echo "waiting for users to log out." else rm -f "${bnetdpid}" echo "bnetd" fi else echo "bnetd is not running." fi ;; status) status bnetd ;; *) echo "Usage: $0 {start|stop|restart|status}" exit 1 esac exit 0