Limpar memoria

Publicado por Rudimar Remontti 16/04/2009

[ Hits: 12.181 ]

Homepage: www.remontti.com.br

Download limpa.sh




Esse script deve ser agendado no cron, assim você define nele o percentual máximo, e a cada vez que for rodá-lo ele fará a verificação.

  



Esconder código-fonte

#!/bin/sh
PATH="/bin:/usr/bin:/usr/local/bin"

# Porcentagem maxima (mude se vc achar q deve) eu deixo em 85%
percent=85

# Total da memoria:
ramtotal=`grep -F "MemTotal:" < /proc/meminfo | awk '{print $2}'`
# Memoria livre:
ramlivre=`grep -F "MemFree:" < /proc/meminfo | awk '{print $2}'`

# RAM utilizada pelo sistema:
ramusada=`expr $ramtotal - $ramlivre`

# Porcentagem de RAM utilizada pelo sistema:
putil=`expr $ramusada \* 100 / $ramtotal`

echo =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
date
echo
echo "Mem. utilizada: $putil %";

if [ $putil -gt $percent ]
then
   date=`date`
   echo $date >> /var/log/memoria.log
   echo "Mem. utilizada: $putil %" >> /var/log/memoria.log

   echo "Memoria acima de $percent %, cache foi limpado!";
   sync
   # 'Dropando' cache:
   echo 3 > /proc/sys/vm/drop_caches
   echo
    free -m
   echo
echo =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
else
    echo "Cache nao foi limpado!";
echo =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
    unset percent ramtotal ramlivre ramusada putil
    exit $?
fi

Scripts recomendados

Transformar eBook em Audiobook

Proxy teste

Fax Control - Nova versão

Validador mac-address em shell script

Configuração Automática de Servidor de Arquivos


  

Comentários
[1] Comentário enviado por sandromt em 18/04/2009 - 15:44h

Valeu, funcionou mesmo!!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts