ディスクの空きが少なくなった時に注意メールを送る
df で次のように表示される事を想定した際に、シェルスクリプトで指定した%を超えた時にメールでお知らせを送る。
$ df
Filesystem 1K-ブロック 使用 使用可 使用% マウント位置
/dev/sda2 100893076 91005564 4762344 96% /
tmpfs 510288 0 510288 0% /dev/shm
/dev/sda1 247919 50566 184553 22% /boot
シェルスクリプトの例
hdd_use_check.sh スクリプト
- sda2のディスクに対して確認する
- 95%を超えた時を確認
- メールアドレスの部分で指定したメールに注意のメールを送る
#!/bin/bash
SERVER_ID=サーバーの区別がつく文字列
CHKDEVICE=/sda2
CHKPER=95
USEPER=$(df | grep "$CHKDEVICE" | tr -s " " | cut -d" " -f 5 | tr -d "%")
#echo check device:$CHKDEVICE / test $USEPER -gt $CHKPER
# true:0 / false:1
#test $USEPER -gt $CHKPER
#echo $?
if test $USEPER -gt $CHKPER; then
df -h | mail -s "$SERVER_ID: disk space small / now $USEPER % use" メールアドレス
fi
※ mail コマンドをでメールが送信できるようにしてください。
※ ファイル名は管理しやすい名称にしてください。