Checar tamanho do Cache do Squid e limpar

Publicado por Paulo Cesar 27/03/2006

[ Hits: 34.282 ]

Download checksquid.sh




Este script eh bem simples, ele checa o tamanho do diretorio do squid, no meu caso /squid e quando chega a um tamanho maximo especificado ele chama outro script /sbin/rproxy e apos limpo, ele envia uma confirmacao por email. Crie o /sbin/rproxy contendo:
#!/bin/bash
#
# Script utilizado para limpeza de proxy.
# para roda-lo basta digitar rproxy
# Autor: pcnmota@hotmail.com
echo "Limpando proxy..............."
killall squid
killall squid
iptables -t nat -F
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
rm -rf /squid/var/cache/*
rm -rf /squid/var/logs/*
/usr/local/squid/sbin/squid -z
/usr/local/squid/sbin/squid
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128
echo "         "
echo "Proxy limpo e reativado..."

  



Esconder código-fonte

#!/bin/bash
horacheck=`date "+%d-%m-%Y_%H:%M:%S"`
tamanho_max=21G
t=$(/bin/du -h -s /squid/)
total=$(echo $t |cut -f1 -d"/")
echo "$t"
if [ "$total" = "$tamanho_max"  ]
then
   rm -rf /home/mota/.proxy
#   echo "tamanho limite $total $horacheck" >> /home/mota/.proxy
   /sbin/rproxy
   echo "To: pcnmota@hotmail.com" >> /home/mota/.proxy 
   echo "From: root@dominio.com.br" >> /home/mota/.proxy 
   echo "Subject: SQUID LIMPO " >> /home/mota/.proxy 
   echo "Content-Type: text/html" >> /home/mota/.proxy 
   echo "<BODY><HTML>" >> /home/mota/.proxy
   echo "$horacheck" >> /home/mota/.proxy 
   echo "<BR><BR> " >> /home/mota/.proxy
   echo " $total SQUID no momento " >> /home/mota/.proxy 
   echo "</BODY></HTML>" >> /home/mota/.proxy 
   cat /home/mota/.proxy | /var/qmail/bin/qmail-inject
else
   rm -rf /home/mota/.proxy
   echo "tamanho menor $total $horacheck"
#   echo "tamanho limite $total $horacheck" >> /home/mota/.proxy
        echo "To: pcnmota@hotmail.com" >> /home/mota/.proxy
        echo "From: root@dominio.com.br" >> /home/mota/.proxy
        echo "Subject: SQUID ATUAL " >> /home/mota/.proxy
        echo "Content-Type: text/html" >> /home/mota/.proxy
        echo "<BODY><HTML>" >> /home/mota/.proxy
        echo "$horacheck" >> /home/mota/.proxy
        echo "<BR><BR> " >> /home/mota/.proxy
        echo " $total SQUID no momento " >> /home/mota/.proxy
        echo "</BODY></HTML>" >> /home/mota/.proxy
   cat /home/mota/.proxy | /var/qmail/bin/qmail-inject

fi

Scripts recomendados

Script para Backup de Logs

Script para checagem de Ponto de Acesso.

Failover WAN entre dois links

Envio de email via console

Conversor de Dicionarios do Babylon


  

Comentários
[1] Comentário enviado por alex_a_souza em 23/02/2007 - 20:33h

tem alguma forma de nunca precisar ficar limpado o cache di squid, assim colocando pra ele nunca encher e nunca ficar vazio, melhor dizendo sobrepondo os arquivos?

Desde já Obrigado!!!

[2] Comentário enviado por wtet em 17/04/2007 - 18:33h

tem algumas linhas no arquivo squid.conf que determina isso.. devem ser colocadas logo após o nome do micro e a porta e antes das acl's:

cache_mem 128 MB
maximum_object_size_in_memory 128 KB
maximum_object_size 1024 MB
minimum_object_size 0 KB
cache_swap_low 90
cache_swap_high 95
cache_dir ufs /etc/squid/cache 3000 16 256
cache_access_log /etc/squid/access.log

explicando:
a primeira linha define qto da memoria ram sera usada pro cache
a segunda o tamanho máximo dos objetos na ram
a terceira o tamanho macimo no cache
a quarta o tamanho minimo, geralmetne 0
a quinta qdo comeca a excluir arquivos do cache
a sexta qdo é obrigatorio a exclusao
a penultima define o local que será feito o cache, que pode ser o ponto de montagem de outra particao, sequido do tamanho maximo do cache em MB e os dois ultimos numeros se refere a quantidade de pastas e subpastas que o diretorio de cache terá
a ultima indica em que arquivo será feito o log.

[3] Comentário enviado por valmicio em 21/11/2007 - 15:20h

Muito bom, joia mesmo, mais essa explicacao ai acima dentro do squid.conf, ela limpa o tamanho do access.log?

[4] Comentário enviado por Thiago Madella em 10/07/2008 - 16:45h

Boa galera. Muito bom mesmo... Valeu pela dica...


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts