Solved

Need help on a script that sends an email message on disk usage

Posted on 2013-01-31
9
505 Views
Last Modified: 2013-03-25
Hello All

I am new to scripting and need help on writing a script that sends an email message on disk usage, can some help me to understand the basics and how to write this.

Please help me.


Requirements;
Create a script sends an email message to the user specified on the command line if any of the filesystems at more than 70% of capacity. The script should not process special filesystems as /proc. It should only process filesystems which are either locally mounted or are mounted via NFS.

An individual email should be sent for each filesystem which is at the warning level. There should be a subject on the email with a message "Warning: Filesystem <put filesystem the>here is at <X>% of capacity" If the filesystem is at greater than 90% of capacity, the "Warning" should be changed to "Critical Warning".

You may use any scripting language including /bin/sh, ksh, bash, awk or perl. Work done in the C-Shell (csh) will not be accepted.
0
Comment
Question by:1badabing
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
9 Comments
 
LVL 10

Assisted Solution

by:deviprasadg
deviprasadg earned 250 total points
ID: 38842681
0
 
LVL 75

Expert Comment

by:käµfm³d 👽
ID: 38843608
And how much effort have you put towards researching this homework assignment? Show us what you've done thus far, and ask specific questions about what you don't understand.
0
 

Author Comment

by:1badabing
ID: 38846164
sorry for the delay, but i'm working on it  to get post for review
0
How our DevOps Teams Maximize Uptime

Our Dev teams are like yours. They’re continually cranking out code for new features/bugs fixes, testing, deploying, responding to production monitoring events and more. It’s complex. So, we thought you’d like to see what’s working for us. Read the use case whitepaper.

 

Assisted Solution

by:mokatell
mokatell earned 250 total points
ID: 38850008
i have attached the needed files along with following example

you use this for gmail smtp settings  :


<?php
require("class.phpmailer.php");

$name = "XXXXXXXX";
$nameMail ="XXXXXXXX";
$address="XXXXXXXX";


$mailer = new PHPMailer();


$mailer->Mailer = 'smtp';
$mailer->IsSMTP();
$mailer->IsHTML(true);
$mailer->Port = 465;
$mailer->SMTPDebug = 2 ;
$mailer->SMTPSecure='ssl';
$mailer->SMTPAuth = true;
$mailer->SMTPKeepAlive = true;
$mailer->Host = 'smtp.gmail.com';

$mailer->Username = 'XXXXXXXX';  // Change this to your gmail adress
$mailer->Password = 'XXXXXXXX';  // Change this to your gmail password
$mailer->From = $nameMail;  // This HAVE TO be your gmail adress
$mailer->FromName = $name; // This is the from name in the email, you can put anything you like here
$mailer->Body = XXXXXXXX;
$mailer->Subject = "XXXXXXXX";
$mailer->AddAddress($address);
$mailer->Send();
?>
class.phpmailer.php
class.pop3.php
class.smtp.php
0
 

Author Comment

by:1badabing
ID: 38903471
I am still working on getting my script to be posted
0
 

Author Comment

by:1badabing
ID: 39006230
This is what I came up with, not sure how to eliminate the /proc (which I need to) and whether I will get to email to the destination. Someone please help me


#!/bin/bash
df -k | grep -v '^Filesystem | none' | awk '{ print $1 " " $5 }' | while read $output
do
 echo $output
 perc=$(echo $output | awk '{ print $2 }' | cut -d'%' –f2 )
 part=$(echo $output | awk '{ print $1 }' )

 if [ $perc -ge 90 ]; then
 echo "Critical Warning: Filesystem \"$part\" at “$perc”% of capacity” | \
 mail -s "Critical Warning: Filesystem \”$part\” at “$perc”% of capacity” 1badabing@expert.com

 elif [ $perc -ge 70 ] && [ $perc -lt 90 ]; then
 echo "Warning: Filesystem \"$part\" at “$perc”% of capacity” | \
 mail -s "Warning: Filesystem \”$part\” at “$perc”% of capacity” 1badabing@expert.com

 fi
done
0
 

Accepted Solution

by:
1badabing earned 0 total points
ID: 39006266
Hello All

I redid the script and to monitor and send a mail message, if less that 34 %. I keep getting an error for line 5.. see below..


*********************************************************
 more filecheck.sh
#!/bin/sh
df -k | grep -v 'proc' | awk '{ print $5 " " $1 }' | while read output;
do
  echo $output
  usep=$(echo $output | awk '{ print $1}' | cut -d'%' -f1  )
  partition=$(echo $output | awk '{ print $2 }' )
  if [ $usep -ge 34 ]; then
    echo "Running out of space \"$partition ($usep%)\" on $(hostname) as on $(date)" |
     mail -s "Alert: Almost out of disk space $usep%" pulorie1@yahoo.com
  fi
done

*********************************************************
 $ ./filecheck.sh
./filecheck.sh: syntax error at line 5: `usep=$' unexpected
0
 

Author Comment

by:1badabing
ID: 39009485
please close
0
 

Author Closing Comment

by:1badabing
ID: 39017243
nothiong yet
0

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

It is a general practice to get rid of old user profiles on a computer  in a LAN environment. As I have been working with a company in a LAN environment where users move from one place to some other place at times. This will make many user profil…
A year or so back I was asked to have a play with MongoDB; within half an hour I had downloaded (http://www.mongodb.org/downloads),  installed and started the daemon, and had a console window open. After an hour or two of playing at the command …
In this seventh video of the Xpdf series, we discuss and demonstrate the PDFfonts utility, which lists all the fonts used in a PDF file. It does this via a command line interface, making it suitable for use in programs, scripts, batch files — any pl…
In a recent question (https://www.experts-exchange.com/questions/29004105/Run-AutoHotkey-script-directly-from-Notepad.html) here at Experts Exchange, a member asked how to run an AutoHotkey script (.AHK) directly from Notepad++ (aka NPP). This video…

696 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question