#!/bin/sh # # chkconfig: 2345 20 80 # description: gmond startup script # GMOND=/usr/sbin/gmond MULTICAST_1=`cat /etc/gmond.conf | grep -v ^# | grep mcast_channel | awk '{print $2}' | cut -d "." -f1`; MULTICAST_2=`cat /etc/gmond.conf | grep -v ^# | grep mcast_channel | awk '{print $2}' | cut -d "." -f2`; MULTICAST_3=`cat /etc/gmond.conf | grep -v ^# | grep mcast_channel | awk '{print $2}' | cut -d "." -f3`; INTERFACE=`cat /etc/gmond.conf | grep -v ^# | grep mcast_if | awk '{print $2}'`; [ "$MULTICAST_1" == "" ] && MULTICAST_1="239"; [ "$MULTICAST_2" == "" ] && MULTICAST_2="2"; [ "$MULTICAST_3" == "" ] && MULTICAST_3="11"; [ "$INTERFACE" == "" ] && INTERFACE="eth0"; . /etc/rc.d/init.d/functions RETVAL=0 case "$1" in start) gprintf "Starting GANGLIA gmond: " [ -f $GMOND ] || exit 1 route add -net $MULTICAST_1.$MULTICAST_2.$MULTICAST_3.0 netmask 255.255.255.0 dev $INTERFACE 1>/dev/null 2>/dev/null daemon $GMOND RETVAL=$? echo [ $RETVAL -eq 0 ] && touch /var/lock/subsys/gmond ;; stop) gprintf "Shutting down GANGLIA gmond: " route del -net $MULTICAST_1.$MULTICAST_2.$MULTICAST_3.0 netmask 255.255.255.0 dev $INTERFACE 1>/dev/null 2>/dev/null killproc gmond RETVAL=$? echo [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/gmond ;; restart|reload) $0 stop $0 start RETVAL=$? ;; status) status gmond RETVAL=$? ;; *) gprintf "Usage: %s {start|stop|restart|status}\n" "$0" exit 1 esac exit $RETVAL