diff options
author | Subhendu Ghosh <sghosh@users.sourceforge.net> | 2002-08-14 15:29:58 +0000 |
---|---|---|
committer | Subhendu Ghosh <sghosh@users.sourceforge.net> | 2002-08-14 15:29:58 +0000 |
commit | 2e24418ea7c179d2db3eccf9a6b6b4378e2857d2 (patch) | |
tree | 613e25bd7b03eb1a6cfce39d4e21516c3f189e92 | |
parent | e5822d19fc6cf2398ead6a465f2cede568e12ee7 (diff) | |
download | monitoring-plugins-2e24418ea7c179d2db3eccf9a6b6b4378e2857d2.tar.gz |
new smb check - users
git-svn-id: https://nagiosplug.svn.sourceforge.net/svnroot/nagiosplug/nagiosplug/trunk@71 f882894a-f735-0410-b71e-b25c423dba1c
-rw-r--r-- | contrib/check_smb.sh | 111 |
1 files changed, 111 insertions, 0 deletions
diff --git a/contrib/check_smb.sh b/contrib/check_smb.sh new file mode 100644 index 00000000..728535a1 --- /dev/null +++ b/contrib/check_smb.sh @@ -0,0 +1,111 @@ +#!/bin/bash +# +# Program : check_smb +# : +# Author : Cal Evans <cal@calevans.com> +# : +# Purpose : Nagios plugin to return the number of users logged into a smb +# : server and the number of files open. +# : +# Parameters : --help +# : --version +# : +# Returns : Standard Nagios status_* codes as defined in utils.sh +# : +# Notes : +#============:============================================================== +# 1.0 : 06/27/2002 +# : Initial coding +# : +# 1.1 : 06/28/2002 +# : Re-wrote the user counter to match the file-lock counter. +# : + +# +# Shamelessly stolen from other Nagios plugins. +# +PROGNAME=`basename $0` +PROGPATH=`echo $0 | /bin/sed -e 's,[\\/][^\\/][^\\/]*$,,'` +REVISION=`echo '$Revision$' | sed -e 's/[^0-9.]//g'` + + +. $PROGPATH/utils.sh + +print_usage() { + echo "Usage: $PROGNAME --help" + echo "Usage: $PROGNAME --version" +} + +print_help() { + print_revision $PROGNAME $REVISION + echo "" + print_usage + echo "" + echo "Samba status check." + echo "" + support +} + +# No command line arguments are required for this script. We accept only 2, +# --help and --version. If more than 1 is passed in then we have an error +# condition. + +if [ $# -gt 1 ]; then + print_usage + exit $STATE_UNKNOWN +fi + + +# +# If we have arguments, process them. +# +exitstatus=$STATE_WARNING #default +while test -n "$1"; do + case "$1" in + --help) + print_help + exit $STATE_OK + ;; + -h) + print_help + exit $STATE_OK + ;; + --version) + print_revision $PROGNAME $REVISION + exit $STATE_OK + ;; + -V) + print_revision $PROGNAME $REVISION + exit $STATE_OK + ;; + + *) + echo "Unknown argument: $1" + print_usage + exit $STATE_UNKNOWN + ;; + esac + shift +done + +# +# No arguments. Let's kick this pig. +# +total_users=$(smbstatus -b | grep "^[0-9]" | wc -l) + +# +# Ok, now let's grab a count of the files. +# +total_files=$(smbstatus | grep "^[0-9]" | wc -l) + +# +# now for the dismount. +# +echo "Total Users:$total_users Total Files:$total_files" + +# +# let Nagios know that everything is ok. +# +exit $STATE_OK + + |