Hospedagem Profissional

Hospedagem Profissional
Clique aqui e ganhe US$ 10,00 para testar durante 1 mês a melhor hospedagem: Digital Ocean!

segunda-feira, 30 de maio de 2016

Script para monitorar espaço em disco e avisar por e-mail no Linux

Esse script monitora o espaço em disco do Linux, e quando atingir uma taxa de ocupação mínima (no caso abaixo 90%) ele avisa por e-mail ao responsável.

Agende a execução no crontab e pronto. Recomendo 1 vez ao dia.

OBS.
  1. No script abaixo, foram ignorados os filesystems "Sist|tmpfs|/mnt/backup"
  2. Quando a ocupação é maior que 90%, é enviado no e-mail a lista das 10 maiores pastas para facilitar a identificação dos "comedores de disco"



#!/bin/sh
# Shell script para monitorar o espaço em disco
# Irah enviar um email para $ADMIN, se o espaço em disco ocupado
# for maior que 90%
# Autor: Leandro Silva Ferreira
ADMIN="seuemail@seudominio.com"
ALERT=90

df -H | grep -vE '^Sist|tmpfs|/mnt/backup' | 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
     biggers=$(cd / | du -hsx * | sort -rh | head -10)

     echo -e "Espaço em disco crítico em  \"$partition ($usep%)\" no servidor $(hostname) em $(date) \\n\\nMaiores pastas na raiz:\\n$biggers" |
     mail -s "Alerta: Espaço em disco do servidor $(hostname) está no limite: $usep %" $ADMIN
  fi
done