Bash: low disk space alerts

Рубрика: IT. Сети. Связь -> Articles in English
Метки: | | |
Пятница, 1 ноября 2013 г.
Просмотров: 3188
Подписаться на комментарии по RSS

This is my solution on how to control disk space usage on a server. The solution is a simple one-line shell script that is executed by cron and sends an e-mail alert each time your disk space gets low.

First of all, let's create a shell file.

vi /home/username/bin/check-disk-space.sh

#!/bin/sh
df -Pl|grep "^/dev"|awk '{sub("%","",$5);if($5 > 95) print $5"%%\t"$6}'|xargs -0 sh -c 'test "$1" && printf "`hostname -f` is running low on disk space:\nUse%%\tMounted on\n$1"' $0

As you can see it's simple enough. You can adjust the parameter in percent (in our case it is 95% ) on after overbrim of which you'll get an email alert like:

<hostname> is running low on disk space:
Use%	Mounted on
95%	/

At last, you must set a crontab task:

crontab -e u username

MAILTO=your-email@example.com
15 */2 * * * /home/username/bin/check-disk-space.sh

This cron task will check disk space every 2 hours.

Hope this helps you :)

twitter.com facebook.com vkontakte.ru mail.ru friendfeed.com pikabu.ru blogger.com liveinternet.ru livejournal.ru memori.ru google.com bobrdobr.ru yandex.ru del.icio.us

Оставьте комментарий!

Не регистрировать/аноним

Используйте нормальные имена.

Если вы уже зарегистрированы как комментатор или хотите зарегистрироваться, укажите пароль и свой действующий email.
(При регистрации на указанный адрес придет письмо с кодом активации и ссылкой на ваш персональный аккаунт, где вы сможете изменить свои данные, включая адрес сайта, ник, описание, контакты и т.д.)



(обязательно)