#!/bin/bash # Munin: resource monitoring tool ################################################# source setup/functions.sh # load our functions source /etc/mailinabox.conf # load global vars # install Munin echo "Installing Munin (system monitoring)..." apt_install munin munin-node # edit config cat > /etc/munin/munin.conf </dev/null | sh # Deactivate monitoring of NTP peers. Not sure why anyone would want to monitor a NTP peer. The addresses seem to change # (which is taken care of my munin-node-configure, but only when we re-run it.) find /etc/munin/plugins/ -lname /usr/share/munin/plugins/ntp_ -print0 | xargs -0 /bin/rm # Deactivate monitoring of network interfaces that are not up. Otherwise we can get a lot of empty charts. for f in $(find /etc/munin/plugins/ \( -lname /usr/share/munin/plugins/if_ -o -lname /usr/share/munin/plugins/if_err_ -o -lname /usr/share/munin/plugins/bonding_err_ \)); do IF=$(echo $f | sed s/.*_//); if ! ifquery $IF >/dev/null 2>/dev/null; then rm $f; fi; done # Create a 'state' directory. Not sure why we need to do this manually. mkdir -p /var/lib/munin-node/plugin-state/ # Restart services. restart_service munin restart_service munin-node # generate initial statistics so the directory isn't empty sudo -u munin munin-cron