| Notices |
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
Are you new to LinuxQuestions.org? Visit the following links:
Site Howto |
Site FAQ |
Sitemap |
Register Now
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
 |
GNU/Linux Basic Guide
This 255-page guide will provide you with the keys to understand the philosophy of free software, teach you how to use and handle it, and give you the tools required to move easily in the world of GNU/Linux. Many users and administrators will be taking their first steps with this GNU/Linux Basic guide and it will show you how to approach and solve the problems you encounter.
Click Here to receive this Complete Guide absolutely free. |
|
|
By djgerbavore at 2004-08-17 08:28
|
|
If you're maintaining a lot of server's with multiple hard-drives you'll need to know how to manage and watch your harddrives. You know it's getting full or needs cleaning before it's too late and your users can't complete their work because they're out of disk-space. Nothing is worse than franticly trying to reclaim disk-space because you ran out of it. This guide will hopefully aide you in a time-savinf manner.
First of all: check the usage of your hard-drive(s)!
Code:
$>df -h
Filesystem Size Used Avail Use% Mounted on
/dev/hda3 4.4G 3.4G 764M 82% /
/dev/hda1 14G 4.5G 9.3G 33% /mnt/win32
As you can see my hda3 is at 82%. With the help of scripts you can have this task done at given times, and get an e-mail notification if the percentage of used disk-space reaches a certain threshold.
First we will make a basic bash script that will report if any paritions are over 80%.
Code:
#!/bin/bash
df | egrep "(100%|[89][0-9]%)"
The egrep statement will match any usage between 80% and 100%.
Now let's do this as a timed event:
Type crontab -e to start an empty file where you can add all your cron jobs. (for more info type man 5 crontab)
Now to make a basic cron job that will run everyday at 10p.m..
Code:
0 22 * * * df | egrep "(100%|[89][0-9]%)"
The first number, 0, indicates the minute, the second, 22, is the hour that your job is supposed to run at. The next three *'s are day of month, the month, and day of week respectively.
Finally to have this cron job email you if any of your partition's are filled 80% or more you just add the mail command, like so:
Code:
0 22 * * * df | egrep "(100%|[89][0-9]%)" | mail -s "Warning..." you@emailaddr.com
The -s is for subject and you@emailaddr.com will be replaced by your email address.
Let me know what you think about this guide. If you like it, or if it wasn't useful. Any feedback is greatly encouraged. Thanks
|
|
|
|
All times are GMT -5. The time now is 11:48 PM.
|
|
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.
|
Latest Threads
LQ News
|
|
I corrected a few flaws in your cron explanation
and changed grep to egrep and made it match
100 as well.
Cheers,
Tink
the * means: run every possible time for this field.
i.e. 5 22 * * * means minute 5, hour 22, and then every day of the month, every month, and every day of the week.
If you added 5 22 15 * * the cron would only run on the 15th day of the month.
Duncan
disk-space monitoring...
Cheers,
Tink
Worth a check at: www.metamindsolutions.com
network-connections are gone
Btw, the homepage is atrocious.
My first idea was to "tee" the second pipe and by that means insert the egrep-results into the mail. Could this be done by variables as well and how would they get their values assigned and introduced into the mail?
[Nothing more easy than that :}]
Wirsing,
Tink
[good morning ... ahm, should rather be good night in NZ]
Whoa, we are on the economic trip here
Thank you for the solution.
Wirsing? Grütze an die Kiwis!
One is glad to be of service ...
Cheers,
Tink
Und Danke fuer die Gruetze ;}
FS=/dev/hd2 USAGE=`df | grep $FS | awk '{ print $4 }' | sed "s/%//"` PERCENT=90 if [ $USAGE -gt $PERCENT ] then echo $FS Filesystem on $HOSTNAME has reached "$PERCENT"% capacity | mail -s $HOSTNAME kristijan@fake.com fi-Kristijan