| #! /bin/sh |
| # /etc/init.d/snmpd: start snmp daemon. |
| |
| . /etc/init.d/functions |
| |
| # Defaults |
| export MIBDIRS=/usr/share/snmp/mibs |
| SNMPDRUN=yes |
| SNMPDOPTS='-Lsd -Lf /dev/null -p /var/run/snmpd.pid' |
| TRAPDRUN=no |
| TRAPDOPTS='-Lsd -p /var/run/snmptrapd.pid' |
| PIDFILE=/var/run/snmpd.pid |
| SPIDFILE=/var/run/snmptrapd.pid |
| |
| # Reads config file if exists (will override defaults above) |
| [ -r /etc/default/snmpd ] && . /etc/default/snmpd |
| |
| [ "$SNMPDRUN" = "yes" ] && { test -x /usr/sbin/snmpd || exit 0; } |
| [ "$TRAPDRUN" = "yes" ] && { test -x /usr/sbin/snmptrapd || exit 0; } |
| |
| case "$1" in |
| start) |
| echo -n "Starting network management services:" |
| if [ "$SNMPDRUN" = "yes" -a -f /etc/snmp/snmpd.conf -a ! -f "$PIDFILE" ]; then |
| start-stop-daemon -o --start --quiet --name snmpd --pidfile "$PIDFILE" \ |
| --exec /usr/sbin/snmpd -- $SNMPDOPTS |
| echo -n " snmpd" |
| fi |
| if [ "$TRAPDRUN" = "yes" -a -f /etc/snmp/snmptrapd.conf -a ! -f "$SPIDFILE" ]; then |
| start-stop-daemon -o --start --quiet --name snmptrapd --pidfile "$SPIDFILE" \ |
| --exec /usr/sbin/snmptrapd -- $TRAPDOPTS |
| echo -n " snmptrapd" |
| fi |
| echo "." |
| |
| test ! -x /sbin/restorecon || /sbin/restorecon -FR /var/lib/net-snmp |
| ;; |
| stop) |
| echo -n "Stopping network management services:" |
| if [ -f "$PIDFILE" ] ; then |
| start-stop-daemon -o --stop --quiet --pidfile $PIDFILE --name snmpd |
| fi |
| echo -n " snmpd" |
| if [ -f "$SPIDFILE" ] ; then |
| start-stop-daemon -o --stop --quiet --pidfile $SPIDFILE --name snmptrapd |
| rm -rf $SPIDFILE |
| fi |
| echo -n " snmptrapd" |
| echo "." |
| ;; |
| status) |
| status /usr/sbin/snmpd; |
| exit $? |
| ;; |
| restart|reload|force-reload) |
| $0 stop |
| # Allow the daemons time to exit completely. |
| sleep 2 |
| $0 start |
| ;; |
| *) |
| echo "Usage: /etc/init.d/snmpd {start|stop|status|restart|reload|force-reload}" |
| exit 1 |
| esac |
| |
| exit 0 |