Add original scripts
This commit is contained in:
114
snmp
Executable file
114
snmp
Executable file
@@ -0,0 +1,114 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# description: Starts and stops the snmp agent deamon
|
||||
#
|
||||
|
||||
SNMPD=/usr/local/bin/snmpd
|
||||
SYSCONF=/etc/config/uLinux.conf
|
||||
ETCCONF=/etc/config/snmpd.conf
|
||||
VARCONF=/var/ucd-snmp/snmpd.conf
|
||||
TMPVARCONF=/etc/config/snmpd.var.conf
|
||||
NEW_CONF=/tmp/new_snmpd_conf.flag
|
||||
RETVAL=0
|
||||
|
||||
reset_snmp_conf_file()
|
||||
{
|
||||
SNMPV=`/sbin/getcfg SNMP "Version" -d 1`
|
||||
if [ $"SNMPV" = "1" ]; then
|
||||
COMM=`/sbin/getcfg SNMP "Trap Community" -d public`
|
||||
else
|
||||
ENGINE_ID=`/sbin/getcfg SNMP "Engine ID" -d ""`
|
||||
USER=`/sbin/getcfg SNMP "User" -d ""`
|
||||
I_AUTH_PROTOCOL=`/sbin/getcfg SNMP "Auth Protocol" -d 0`
|
||||
AUTH_KEY=`/sbin/getcfg SNMP "Auth Key" -d ""`
|
||||
I_PRIV_PROTOCOL=`/sbin/getcfg SNMP "Priv Protocol" -d 0`
|
||||
PRIV_KEY=`/sbin/getcfg SNMP "Priv Key" -d ""`
|
||||
AUTH_PROTOCOL=MD5
|
||||
if [ $I_AUTH_PROTOCOL = 1 ]; then
|
||||
AUTH_PROTOCOL=SHA
|
||||
fi
|
||||
PRIV_PROTOCOL=DES
|
||||
# if [ $I_PRIV_PROTOCOL = 1 ]; then
|
||||
# PRIV_PROTOCOL=AES
|
||||
# fi
|
||||
cp $TMPVARCONF ${TMPVARCONF}.bak
|
||||
|
||||
AUTH_TYPE=`/sbin/getcfg SNMP "Auth Type" -d 0`
|
||||
if [ "x$ENGINE_ID" = "x" ]; then
|
||||
ENGINE_CMD=""
|
||||
else
|
||||
ENGINE_CMD="-e $ENGINE_ID"
|
||||
fi
|
||||
case "$AUTH_TYPE" in
|
||||
"0")
|
||||
echo createUser $ENGINE_CMD \"$USER\" > $TMPVARCONF
|
||||
;;
|
||||
"1")
|
||||
echo createUser $ENGINE_CMD \"$USER\" $AUTH_PROTOCOL \"$AUTH_KEY\" > $TMPVARCONF
|
||||
;;
|
||||
"2")
|
||||
echo createUser $ENGINE_CMD \"$USER\" $AUTH_PROTOCOL \"$AUTH_KEY\" $PRIV_PROTOCOL \"$PRIV_KEY\" > $TMPVARCONF
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
}
|
||||
start()
|
||||
{
|
||||
ENABLE=`/sbin/getcfg SNMP "Service Enable" -d FALSE -u -f $SYSCONF`
|
||||
if [ "x${ENABLE}" == "xTRUE" ] ; then
|
||||
/bin/echo "Starting snmp agent:"
|
||||
mkdir -p /var/ucd-snmp
|
||||
# /bin/echo "****** /etc/config/snmpd.conf" > /tmp/snmp.log
|
||||
# /bin/cat /etc/config/snmpd.conf >> /tmp/snmp.log
|
||||
# /bin/echo "****** /etc/config/snmpd.var.conf" >> /tmp/snmp.log
|
||||
# /bin/cat /etc/config/snmpd.var.conf >> /tmp/snmp.log
|
||||
# if [ -f $VARCONF ]; then
|
||||
# /bin/echo "****** $VARCONF" >> /tmp/snmp.log
|
||||
# /bin/cat $VARCONF >> /tmp/snmp.log
|
||||
# fi
|
||||
if [ -f $NEW_CONF ] || [ ! -f $VARCONF ]; then
|
||||
# /bin/echo "Copy /etc/config/snmpd.var.conf" >> /tmp/snmp.log
|
||||
cp /etc/config/snmpd.var.conf $VARCONF
|
||||
fi
|
||||
PORT_NO=`/sbin/getcfg SNMP "Listen Port" -d 161`
|
||||
$SNMPD -c /etc/config/snmpd.conf -p ${PORT_NO}
|
||||
RETVAL=$?
|
||||
[ -f $NEW_CONF ] && rm $NEW_CONF
|
||||
/bin/sleep 1
|
||||
cp $VARCONF /etc/config/snmpd.var.conf
|
||||
# /bin/echo "****** /etc/config/snmpd.var.conf" >> /tmp/snmp.log
|
||||
# /bin/cat /etc/config/snmpd.var.conf >> /tmp/snmp.log
|
||||
fi
|
||||
}
|
||||
|
||||
stop()
|
||||
{
|
||||
/bin/echo "Stopping snmp agent: "
|
||||
killall snmpd
|
||||
RETVAL=$?
|
||||
}
|
||||
|
||||
restart()
|
||||
{
|
||||
stop
|
||||
sleep 1
|
||||
start
|
||||
|
||||
}
|
||||
|
||||
##[ -f $SNMPD ] || exit 0
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
start
|
||||
;;
|
||||
stop)
|
||||
stop
|
||||
;;
|
||||
restart)
|
||||
stop
|
||||
start
|
||||
;;
|
||||
esac
|
||||
|
||||
exit $RETVAL
|
||||
Reference in New Issue
Block a user