One of the routine job of a Linux administrator to monitor the Disk space continuously. Normal people will write a simple script to check the disk space and report to system administrator through email. Good Idea,but here i am telling a new one which will continuously monitor your Disk and report if it cross a preset value. This will run as a cronjob.
#!/bin/bash
#Script for monitoring Disk Usage
#Author BipinDas,Arab Open University.
ADMIN="yourname@yourdomain.com"
# set alert level 80% is default
ALERT=80
df -H | grep -vE '^Filesystem|tmpfs|cdrom' | 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 $ALERT ]; then
echo "Running out of space \"$partition ($usep%)\" on $(hostname) $(hostname -i) as on $(date)" |
mail -s "Alert: Almost out of disk space $usep " $ADMIN
fi
done
Save it as disk_monitor.sh in your scripts folder.
Open Crontab Editor
vi /etc/crontab
*/5 * * * * root /path/to/script/disk_monitor.sh
Perfect,This will frequently check your Disk and inform once it cross the limit.
4 comments:
:)
ശ്രീ...ചിരിയുടെ അര്ത്ഥം മനസ്സിലായില്ല.
ഇത്തരം ഉപയോഗപ്രദമായ നുറുങ്ങുകള് പങ്കു വയ്ക്കുന്നതിനുള്ള നന്ദി സൂചകമായി തന്നെയാണ് :) ഇട്ടിട്ടു പോയത്. ആ സമയത്ത് കുറച്ച് തിരക്കിലായിരുന്നതിനാല് ഇങ്ങനെ ഒരു കമന്റെഴുതാനുള്ള സാവകാശം കിട്ടിയില്ലെന്ന് മാത്രം. എങ്കിലും വന്നു, കണ്ടു, ഇഷ്ടമായി എന്ന് സൂചിപ്പിയ്ക്കണം എന്ന് തോന്നി.
ഇനിയും തുടരുക... ആശംസകള്!
Hi,
Instead of using a lengthy script, this is also an alternative.
-sh-3.00$ df -kh | sed 's/%//' | awk '$5 > '$a'' | awk '{print $1 " " $4 " " $5 "% " $6 }'
Filesystem Avail Use% Mounted
/dev/sdb1 23G 69% /sudologs
Post a Comment