New upstream version 2.3.2

This commit is contained in:
Jan Wagner 2022-10-19 17:24:24 +02:00
parent 09f4277f49
commit 21323d25dd
104 changed files with 34386 additions and 7430 deletions

21
plugins-scripts/check_disk_smb.pl Executable file → Normal file
View file

@ -22,7 +22,7 @@ require 5.004;
use POSIX qw(setsid);
use strict;
use Getopt::Long;
use vars qw($opt_P $opt_V $opt_h $opt_H $opt_s $opt_W $opt_u $opt_p $opt_w $opt_c $opt_a $verbose);
use vars qw($opt_P $opt_V $opt_h $opt_H $opt_s $opt_W $opt_u $opt_p $opt_w $opt_c $opt_a $opt_C $opt_t $verbose);
use vars qw($PROGNAME);
use FindBin;
use lib "$FindBin::Bin";
@ -43,6 +43,7 @@ $ENV{'ENV'}='';
Getopt::Long::Configure('bundling');
GetOptions
("v" => \$verbose, "verbose" => \$verbose,
"t=i" => \$opt_t, "timeout=i" => \$opt_t,
"P=s" => \$opt_P, "port=s" => \$opt_P,
"V" => \$opt_V, "version" => \$opt_V,
"h" => \$opt_h, "help" => \$opt_h,
@ -53,7 +54,8 @@ GetOptions
"s=s" => \$opt_s, "share=s" => \$opt_s,
"W=s" => \$opt_W, "workgroup=s" => \$opt_W,
"H=s" => \$opt_H, "hostname=s" => \$opt_H,
"a=s" => \$opt_a, "address=s" => \$opt_a);
"a=s" => \$opt_a, "address=s" => \$opt_a,
"C=s" => \$opt_C, "configfile=s" => \$opt_C);
if ($opt_V) {
print_revision($PROGNAME,'@NP_VERSION@'); #'
@ -91,6 +93,12 @@ my $warn = $1 if ($opt_w =~ /^([0-9]{1,2}\%?|100\%?|[0-9]+[kMG])$/);
my $crit = $1 if ($opt_c =~ /^([0-9]{1,2}\%?|100\%?|[0-9]+[kMG])$/);
($crit) || usage("Invalid critical threshold: $opt_c\n");
($opt_C) || ($opt_C = shift @ARGV) || ($opt_C = "");
my $configfile = $opt_C if ($opt_C);
usage("Unable to read config file $configfile\n") if ($configfile) && (! -r $configfile);
if ($opt_t && $opt_t =~ /^([0-9]+)$/) { $TIMEOUT = $1; }
# Execute the given command line and return anything it writes to STDOUT and/or
# STDERR. (This might be useful for other plugins, too, so it should possibly
# be moved to utils.pm.)
@ -193,6 +201,7 @@ my @cmd = (
defined($workgroup) ? ("-W", $workgroup) : (),
defined($address) ? ("-I", $address) : (),
defined($opt_P) ? ("-p", $opt_P) : (),
defined($configfile) ? ("-s", $configfile) : (),
"-c", "du"
);
@ -292,7 +301,8 @@ exit $ERRORS{$state};
sub print_usage () {
print "Usage: $PROGNAME -H <host> -s <share> -u <user> -p <password>
-w <warn> -c <crit> [-W <workgroup>] [-P <port>] [-a <IP>]\n";
-w <warn> -c <crit> [-W <workgroup>] [-P <port>] [-a <IP>] [-t timeout]
[-C <configfile>]\n";
}
sub print_help () {
@ -318,11 +328,14 @@ Perl Check SMB Disk plugin for monitoring
Password to log in to server. (Defaults to an empty password)
-w, --warning=INTEGER or INTEGER[kMG]
Percent of used space at which a warning will be generated (Default: 85%)
-c, --critical=INTEGER or INTEGER[kMG]
Percent of used space at which a critical will be generated (Defaults: 95%)
-t, --timeout=INTEGER
Seconds before connection times out (Default: 15)
-P, --port=INTEGER
Port to be used to connect to. Some Windows boxes use 139, others 445 (Defaults to smbclient default)
-C, --configfile=STRING
Path to configfile which should be used by smbclient (Defaults to smb.conf of your smb installation)
If thresholds are followed by either a k, M, or G then check to see if that
much disk space is available (kilobytes, Megabytes, Gigabytes)