From 5c26a28bc9a6c67614e1e626ca2387bb171c9926 Mon Sep 17 00:00:00 2001 From: Adam Wujek <adam.wujek@cern.ch> Date: Mon, 22 Jun 2015 17:04:59 +0200 Subject: [PATCH] rootfs: improve snmpd's init script Use start-stop-daemon to start/stop snmpd daemon. Change name of init script from snmp to snmpd. Also rename link from S80snmp to S80snmpd. Rename and update snmpd config for monit. Distinguish between start-stop-daemon return value 0, 1 and the rest. Signed-off-by: Adam Wujek <adam.wujek@cern.ch> --- .../etc/init.d/{snmp => snmpd} | 23 +++++++++++++++---- .../etc/monit.d/{snmp.conf => snmpd.conf} | 4 ++-- userspace/rootfs_override/etc/rcS/S80snmp | 1 - userspace/rootfs_override/etc/rcS/S80snmpd | 1 + 4 files changed, 21 insertions(+), 8 deletions(-) rename userspace/rootfs_override/etc/init.d/{snmp => snmpd} (60%) rename userspace/rootfs_override/etc/monit.d/{snmp.conf => snmpd.conf} (55%) delete mode 120000 userspace/rootfs_override/etc/rcS/S80snmp create mode 120000 userspace/rootfs_override/etc/rcS/S80snmpd diff --git a/userspace/rootfs_override/etc/init.d/snmp b/userspace/rootfs_override/etc/init.d/snmpd similarity index 60% rename from userspace/rootfs_override/etc/init.d/snmp rename to userspace/rootfs_override/etc/init.d/snmpd index 652781a31..db2955076 100755 --- a/userspace/rootfs_override/etc/init.d/snmp +++ b/userspace/rootfs_override/etc/init.d/snmpd @@ -16,18 +16,31 @@ start_counter() { } start() { + echo -n "Starting snmpd daemon: " # Log to syslog at daemon level. And log source address (-a) - snmpd -Lsd -p $SNMP_PID -a -c $SNMP_CONF - start_counter + start-stop-daemon -q -p $SNMP_PID -S \ + --exec /usr/sbin/snmpd -- -Lsd -p $SNMP_PID -a -c $SNMP_CONF + ret=$? + if [ $ret -eq 0 ]; then + start_counter + echo "OK" + elif [ $ret -eq 1 ]; then + echo "Failed (already running?)" + else + echo "Failed" + fi } stop() { - if pidof snmpd > /dev/null; then - echo -n "Stopping snmpd: " - start-stop-daemon -K -q -p $SNMP_PID + echo -n "Stopping snmpd: " + start-stop-daemon -K -q -p $SNMP_PID + if [ $? -eq 0 ]; then echo "OK" + else + echo "Failed" fi } + restart() { stop start diff --git a/userspace/rootfs_override/etc/monit.d/snmp.conf b/userspace/rootfs_override/etc/monit.d/snmpd.conf similarity index 55% rename from userspace/rootfs_override/etc/monit.d/snmp.conf rename to userspace/rootfs_override/etc/monit.d/snmpd.conf index c27602227..eac51bb20 100644 --- a/userspace/rootfs_override/etc/monit.d/snmp.conf +++ b/userspace/rootfs_override/etc/monit.d/snmpd.conf @@ -1,4 +1,4 @@ check process snmpd with pidfile /var/run/snmpd.pid - start program = "/etc/init.d/snmp start" - stop program = "/etc/init.d/snmp stop" + start program = "/etc/init.d/snmpd start" + stop program = "/etc/init.d/snmpd stop" if 5 restart within 10 cycles then exec "/sbin/reboot" diff --git a/userspace/rootfs_override/etc/rcS/S80snmp b/userspace/rootfs_override/etc/rcS/S80snmp deleted file mode 120000 index 4adfeb2f0..000000000 --- a/userspace/rootfs_override/etc/rcS/S80snmp +++ /dev/null @@ -1 +0,0 @@ -../init.d/snmp \ No newline at end of file diff --git a/userspace/rootfs_override/etc/rcS/S80snmpd b/userspace/rootfs_override/etc/rcS/S80snmpd new file mode 120000 index 000000000..f270432a6 --- /dev/null +++ b/userspace/rootfs_override/etc/rcS/S80snmpd @@ -0,0 +1 @@ +../init.d/snmpd \ No newline at end of file -- GitLab