+ Responder ao Tópico



  1. #1
    malanar
    Visitante

    Padrão Disco cheio

    Tem como fazer com que o sistema avise quando o disco estiver cheio, algo como um serviço de monitoração do HD. Aviso por email, som ...
    Sandro

  2. #2
    santanax
    Visitante

    Padrão Disco cheio

    olá amigo!

    Eu já vi um "script shell" numa URL que não lembro agora, mas a estrutura não é difícil. Segue abaixo um script que envia o e-mail.
    Para verificar o espaço em disco use o commando df -h, que gera a saída abaixo:
    -----------------------------------------------------------------
    Filesystem Size Used Avail Use% Mounted on
    /dev/sda2 32G 20G 11G 62% /
    /dev/md0 17G 13G 3.0G 81% /mnt/data
    none 314M 0 314M 0% /dev/shm
    -----------------------------------------------------------------
    use o comando "cut" para selecionar as linhas e/ou os campos a serem utilizados, depois armazene este valor numa variável $percentagem por exemplo e leia a variável com o cmd "read" e depois coloque num if para comparar com o valor desejado tipo 90%.

    Se ajudar a começar o script de envio de e-mail segue abaixo.

    recorte aqui!
    <------------------------------------------------
    #!/bin/bash

    /bin/mail fulano@seu_dominio.com.br << End

    Este e um teste

    >>> By Santanax <<<

    End
    ------------------------------------------------------>
    recorte aqui!

    Fallow!
    <IMG SRC="images/forum/icons/icon21.gif">

  3. #3
    malanar
    Visitante

    Padrão Disco cheio

    Valeu satanax,
    consegui fazer umas coisas interessantes com o cut aqui.
    Ao invés de mandar um email, teria como emitir uns beeps?
    Qual o comando que emite um beep , ou podia ser executando um som,
    algo assim, para avisar na hora.

    Sandro

  4. #4

    Padrão Disco cheio

    Comando para emitir beep:

    Ex: echo -e "\07" ou echo -e "\a"

    Se vc desejar aumentar a duração do beep, basta coloca-lo em um laço.

    Ex: while true
    do
    echo -e "\07"
    done

    #Ai dá um ctrl+c para parar

  5. #5

    Padrão Disco cheio

    Tentei fazer algo como vc pediu, nao sei se está tudo como vc quer...verifica de 10 em 10
    minutos a partiçao hda1. Se estiver com mais de 90% ocupada, dá um beep.

    #!/bin/bash

    while true
    do
    var=`df -h | grep hda1 | cut -f20 -d" "`
    percent=`echo $var | tr % " "`
    if [ $percent -gt 90 ]
    then
    echo -e "\07"
    fi
    sleep 600
    done

    Obs: Qq coisa, vc tem q ajustar a coluna na opçao "-f" do cut, caso no seu sistema a saida
    do comando "df -h" seja diferente do meu;
    Para mudar a partiçao que o programa verifica, eh so mudar o "hda1" e por a partiçao desejada;
    E por ultimo, rodar sempre em background (&amp<IMG SRC="images/forum/icons/icon_wink.gif"> o script.

  6. #6
    malanar
    Visitante

    Padrão Disco cheio

    Valeu Benzatti, isso que eu estava procurando, tava pensando em colocar isso no crontab
    para rodar de 1 em 1 minuto. Vou testar aqui
    T+