--- a/bin/checkfs Thu Jan 19 22:30:35 2012 +0100
+++ b/bin/checkfs Fri Jan 20 09:13:33 2012 +0100
@@ -1,4 +1,5 @@
#! /usr/bin/perl
+use 5.10.0;
use strict;
use warnings;
use Pod::Usage;
@@ -9,12 +10,24 @@
GetOptions(
"h|help" => sub { pod2usage(-exit => 0, -verbose => 1) },
- "m|man" => sub { pod2usage(-exit => 0, -verbose => 2,
- -noperldoc => system("perldoc -V 2>/dev/null 1>&2")) },
+ "m|man" => sub {
+ pod2usage(
+ -exit => 0,
+ -verbose => 2,
+ -noperldoc => system("perldoc -V 2>/dev/null 1>&2")
+ );
+ },
) and $fs = shift // pod2usage;
-return Nagios::CRITICAL;
+($fs, my ($blocks, $used, $avail, undef, $mp)) =
+ split " " => (`df -P -B 1K $fs`)[1];
+my $msg = "$fs on $mp: left ${avail}kB of ${blocks}kB";
+given ($avail / $blocks) {
+ when ($_ < 0.1) { print "FS CRIT - $msg\n"; exit Nagios::CRITICAL }
+ when ($_ < 0.3) { print "FS WARN - $msg\n"; exit Nagios::WARNING }
+ default { print "FS OK - $msg\n"; exit Nagios::OK }
+}
__END__
@@ -42,7 +55,5 @@
The usual help messages;
-
=back
-