ARK7-srv-arq-monitor-espaco-hd

De Wiki NOC

Servidor de Arquivos - script monitoramento espaco_hd.sh

#!/bin/bash
#monitoramento de disco

EMPRESA="ARK7-arkserver1-ip5 "

DISCO1="arkserver1-root"
ESPACO1=`df -h | grep $DISCO1 | awk '{print $5}'  | grep -v Use | sort -nr | awk -F % '{print $1}'`
ESPACO_INODE1=`df -hi | grep $DISCO1 | awk '{print $5}'  | grep -v IUse | sort -nr | awk -F % '{print $1}'`

DISCO2="arkserver1--dados-dados"
ESPACO2=`df -h | grep $DISCO2 | awk '{print $5}'  | grep -v Use | sort -nr | awk -F % '{print $1}'`
ESPACO_INODE2=`df -hi | grep $DISCO2 | awk '{print $5}'  | grep -v IUse | sort -nr | awk -F % '{print $1}'`

DISCO3="sda1"
ESPACO3=`df -h | grep $DISCO3 | awk '{print $5}'  | grep -v Use | sort -nr | awk -F % '{print $1}'`
ESPACO_INODE3=`df -hi | grep $DISCO3 | awk '{print $5}'  | grep -v IUse | sort -nr | awk -F % '{print $1}'`

DISCO4="arkserver1-var"
ESPACO4=`df -h | grep $DISCO4 | awk '{print $5}'  | grep -v Use | sort -nr | awk -F % '{print $1}'`
ESPACO_INODE4=`df -hi | grep $DISCO4 | awk '{print $5}'  | grep -v IUse | sort -nr | awk -F % '{print $1}'`

DISCO5="arkserver1-home"
ESPACO5=`df -h | grep $DISCO5 | awk '{print $5}'  | grep -v Use | sort -nr | awk -F % '{print $1}'`
ESPACO_INODE5=`df -hi | grep $DISCO5 | awk '{print $5}'  | grep -v IUse | sort -nr | awk -F % '{print $1}'`

ALERTA_RISCO="O disco esta prestes ficar sem espaco por favor verificar \n\n `df -h ` \n\n `uname -a`"
ALERTA_CHEIO="O disco esta cheio verifique com urgencia \n\n `df -h ` \n\n `uname -a`"
ALERTA_RISCO_INODE="O disco esta prestes ficar sem espaco favor verificar \n\n `df -hi ` \n\n \sbin\ifconfig \n\n `uname -a`"
ALERTA_CHEIO_INODE="O disco esta cheio verifique com urgencia \n\n `df -hi ` \n\n \sbin\ifconfig \n\n  `uname -a`"
SUBJECT_1="POUCO ESPACO EM DISCO"
SUBJECT_2="SEM ESPACO EM DISCO"
SUBJECT_1_I="POUCOS INODES NO DISCO"
SUBJECT_2_I="SEM INODES NO DISCO"
TAMANHO=`df -h`

UNIDADE1=`df -h | grep $DISCO1`
UNIDADE2=`df -h | grep $DISCO2`
UNIDADE3=`df -h | grep $DISCO3`
UNIDADE4=`df -h | grep $DISCO4`
UNIDADE5=`df -h | grep $DISCO5`

EMAILPOUCOESPACO="sendEmail -f log@ark7.com.br -t noc@lupainformatica.com.br -u "$EMPRESA$SUBJECT_1" -o tls=auto -s mail.ark7.com.br:587 -xu log@ark7.com.br -xp #logark7!"
EMAILSEMESPACO="sendEmail -f log@ark7.com.br -t noc@lupainformatica.com.br -u "$EMPRESA$SUBJECT_2" -o tls=auto -s mail.ark7.com.br:587 -xu log@ark7.com.br -xp #logark7!"
EMAILPOUCOINODE="sendEmail -f log@ark7.com.br -t noc@lupainformatica.com.br -u "$EMPRESA$SUBJECT_1_I" -o tls=auto -s mail.ark7.com.br:587 -xu log@ark7.com.br -xp #logark7!"
EMAILSEMINODE="sendEmail -f log@ark7.com.br -t noc@lupainformatica.com.br -u "$EMPRESA$SUBJECT_2_I" -o tls=auto -s mail.ark7.com.br:587 -xu log@ark7.com.br -xp #logark7!"

# Verifica espaco DISCO1
case $ESPACO1 in
        9[0-9]) #Caso o disco esteja entre 90 a 99 ele manda um email avisando
        echo "$SUBJECT_1 \n\n$TAMANHO\n\nUNIDADE A SER VERIFICADA\n$UNIDADE1" | $EMAILPOUCOESPACO ;;

        100) #Caso encha tb
        echo "$SUBJECT_2 \n\n$TAMANHO\n\nUNIDADE A SER VERIFICADA\n$UNIDADE1" | $EMAILSEMESPACO ;;
esac
case $ESPACO_INODE1 in
        9[5-9]) #Caso o disco esteja entre 95 a 99 ele manda um email avisando
        echo "$SUBJECT_1_I \n\n$TAMANHO\n\nUNIDADE A SER VERIFICADA\n$UNIDADE1" | $EMAILPOUCOINODE ;;

        100) #Caso encha tb
        echo "$SUBJECT_2_I \n\n$TAMANHO\n\nUNIDADE A SER VERIFICADA\n$UNIDADE1" | $EMAILSEMINODE ;;
esac

# Verifica espaco DISCO2
case $ESPACO2 in
        9[0-9]) #Caso o disco esteja entre 90 a 99 ele manda um email avisando
        echo "$SUBJECT_1 \n\n$TAMANHO\n\nUNIDADE A SER VERIFICADA\n$UNIDADE2" | $EMAILPOUCOESPACO ;;

        100) #Caso encha tb
        echo "$SUBJECT_2 \n\n$TAMANHO\n\nUNIDADE A SER VERIFICADA\n$UNIDADE2" | $EMAILSEMESPACO ;;
esac
case $ESPACO_INODE2 in
        9[5-9]) #Caso o disco esteja entre 95 a 99 ele manda um email avisando
        echo "$SUBJECT_1_I \n\n$TAMANHO\n\nUNIDADE A SER VERIFICADA\n$UNIDADE2" | $EMAILPOUCOINODE ;;

        100) #Caso encha tb
        echo "$SUBJECT_2_I \n\n$TAMANHO\n\nUNIDADE A SER VERIFICADA\n$UNIDADE2" | $EMAILSEMINODE ;;
esac
# Verifica espaco DISCO3
case $ESPACO3 in
        9[0-9]) #Caso o disco esteja entre 90 a 99 ele manda um email avisando
        echo "$SUBJECT_1 \n\n$TAMANHO\n\nUNIDADE A SER VERIFICADA\n$UNIDADE3" | $EMAILPOUCOESPACO ;;

        100) #Caso encha tb
        echo "$SUBJECT_2 \n\n$TAMANHO\n\nUNIDADE A SER VERIFICADA\n$UNIDADE3" | $EMAILSEMESPACO ;;
esac
case $ESPACO_INODE3 in
        9[5-9]) #Caso o disco esteja entre 95 a 99 ele manda um email avisando
        echo "$SUBJECT_1_I \n\n$TAMANHO\n\nUNIDADE A SER VERIFICADA\n$UNIDADE3" | $EMAILPOUCOINODE ;;

        100) #Caso encha tb
        echo "$SUBJECT_2_I \n\n$TAMANHO\n\nUNIDADE A SER VERIFICADA\n$UNIDADE3" | $EMAILSEMINODE ;;
esac

# Verifica espaco DISCO4
case $ESPACO4 in
        9[0-9]) #Caso o disco esteja entre 90 a 99 ele manda um email avisando
        echo "$SUBJECT_1 \n\n$TAMANHO\n\nUNIDADE A SER VERIFICADA\n$UNIDADE4" | $EMAILPOUCOESPACO ;;

        100) #Caso encha tb
        echo "$SUBJECT_2 \n\n$TAMANHO\n\nUNIDADE A SER VERIFICADA\n$UNIDADE4" | $EMAILSEMESPACO ;;
esac
case $ESPACO_INODE4 in
        9[5-9]) #Caso o disco esteja entre 95 a 99 ele manda um email avisando
        echo "$SUBJECT_1_I \n\n$TAMANHO\n\nUNIDADE A SER VERIFICADA\n$UNIDADE4" | $EMAILPOUCOINODE ;;

        100) #Caso encha tb
        echo "$SUBJECT_2_I \n\n$TAMANHO\n\nUNIDADE A SER VERIFICADA\n$UNIDADE4" | $EMAILSEMINODE ;;
esac

# Verifica espaco DISCO5
case $ESPACO5 in
        9[0-9]) #Caso o disco esteja entre 90 a 99 ele manda um email avisando
        echo "$SUBJECT_1 \n\n$TAMANHO\n\nUNIDADE A SER VERIFICADA\n$UNIDADE5" | $EMAILPOUCOESPACO ;;

        100) #Caso encha tb
        echo "$SUBJECT_2 \n\n$TAMANHO\n\nUNIDADE A SER VERIFICADA\n$UNIDADE5" | $EMAILSEMESPACO ;;
esac
case $ESPACO_INODE5 in
        9[5-9]) #Caso o disco esteja entre 95 a 99 ele manda um email avisando
        echo "$SUBJECT_1_I \n\n$TAMANHO\n\nUNIDADE A SER VERIFICADA\n$UNIDADE5" | $EMAILPOUCOINODE ;;

        100) #Caso encha tb
        echo "$SUBJECT_2_I \n\n$TAMANHO\n\nUNIDADE A SER VERIFICADA\n$UNIDADE5" | $EMAILSEMINODE ;;
esac
Ferramentas pessoais