Checar tamanho do Cache do Squid e limpar

Publicado por Paulo Cesar 27/03/2006

[ Hits: 33.907 ]

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

bookmaker.bash: Script para imprimir livros com 4 páginas em uma folha

Script q ue cria uma galeria de imagens

Status port

pptd - Simples daemon para controle de conexões pptp.

Backup diario rotativo MySQL + Backup semanal mantendo uma cópia local e remota


  

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