shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Status de Utilizacao do Disco


From: Marco Eloy
Subject: Status de Utilizacao do Disco
Date: Mon, 13 Jan 2003 18:22:34 -0200

Hello, Pessoal, como vao?
        Criei um script que checa quais os sistemas de arquivos ultrapassaram 
uma
determinada cota de utilizacao estipulada a principio em 80% e me avisa por
e-mail se isto ocorreu(como pode ser visto na linha 35). Ha alguns dias
surgiu a necessidade dessa cota ser informada via parametro. Alterei entao a
linha 35 para a 36. Entretanto o comando sempre lista todos os sistemas de
arquivos e nao os que ultrapassaram a cota $1. Isto ocorre porque dentro da
comparacao (if $5 > $X1) ele compara o percentual de utilizacao($5) com a
string $X1 e nao com o VALOR da string $X1 que seria $1.
Alguem ja teve algum problema parecido? Serah que o if nao pode ser usado
com variaveis, e sim soh com valores numericos?
        O Script Segue logo abaixo.

Desde jah agradeco qualquer ajuda

Sds
Marco Antonio Eloy
Analista de Suporte/Adm. de TI
Brespel - Cia. Indal Brasil Espanha
55 75 422-2014/422-2712


--------------------------------------------------------------------------
     1  #!/bin/bash
     2  # Script de Status dos Sistemas de Arquivos
     3  # Executando de hora em hora
     4  # Criado dia 09-Jan-2003
     5  # Design by Eloy
     6  #
     7  PATH=/sbin:/usr/sbin:/bin:/usr/bin:usr/local/bin
     8  export PATH
     9  prog=`basename $0`
    10  maquina=`hostname`
    11  LOG=/var/log/$prog-$$.log
    12  LOG2=/var/log/$prog-$$.log2
    13  DATA=`date +%A,%d-%b-%Y`
    14  HORA=`date +%H:%M:%S`
    15  if [ "$1" = "" ] ; then
    16     X1=80;
    17  else
    18     X1=$1;
    19  fi
    20  cat <<EOF > $LOG
    21                     A L E R T A  D E  O V E R L O A D
    22
    23
    24               Alguns Dispositivos Excederam a Cota de $X1%
    25
    26   Isto Pode Ser Causado por VIRUS, Inprudencia de Alguns Usuarios ou
Problemas
    27
    28         Pertinentes ao SO. Check o Log Abaixo Para Obter Mais
Detalhes.
    29
    30  Maquina: $maquina
    31  FsCheck Executando em $DATA às $HORA
    32  ---------------------------
    33  EOF
    34
    35  #df -h | tr -d % | awk '/\/dev/ { if($5 > 80) print "OVERLOAD: "
$0 }' >> $LOG2
    36  df -h | tr -d % | awk '/\/dev/ { if($5 > $X1) print "OVERLOAD: "
$0 }' >> $LOG2
    37  if [ -s $LOG2 ]; then
    38     cat $LOG2 >> $LOG
    39     mail -s "AVISO: OVERLOAD EM $maquina" adm-cpd < $LOG
    40  fi
    41  rm -f $LOG
    42  rm -f $LOG2



reply via email to

[Prev in Thread] Current Thread [Next in Thread]