Linux slogan
Visite também: Segurança Linux · BR-Linux.org · Dicas-L · Doode · NoticiasLinux · SoftwareLivre.org · UnderLinux



» Screenshot
» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha


Dica

Limpando o cache do seu Linux (de forma real)
Linux user
Publicado por Marco Carvalho de Oliveira em 04/11/2008

Login: demoncyber, 119584 pontos | Blog: http://demoncyber.wordpress.com/
[ Hits: 8120 ]

Limpando o cache do seu Linux (de forma real)

Geralmente me deparo com um problema da memória do meu computador, ela enche, não a física mas sim a de cache. Meu sistema inicia com uns 80MB de RAM com o KDE, mas o nosso amigo Firefox X.X tem o costume de alocar muita memória e não saber desalocar, e questões como não limpar o histórico de downloads e o histórico de páginas faz isso aumentar. Portanto ao abrir outros softwares o sistema fica lento. Para resolver este problema há algum tempo atrás vi um post do SMarcell no fórum brasileiro do Slackware Linux.

Segue a solução:

# echo 3 > /proc/sys/vm/drop_caches

Inclusive conversando com o SMarcell ele me passou um script que ele usa no cron para limpar a memória quando ela está cheia, segue o código:

#!/bin/sh
#
# Salve este script no diretório /etc/cron.hourly e dê permissão
# de execução a ele. Desse modo a cada hora sera verificada se a
# porcentagem de memória utilizada pelo sistema atingiu o valor definido
# na variável 'percent'. Caso positivo, o script informará ao kernel
# que este deverá alterar o valor da opção 'drop_caches' para 3.
#
# Mais detalhes: 'man proc' -> /proc/sys/vm/drop_caches.

PATH="/bin:/usr/bin:/usr/local/bin"

# Porcentagem máxima de uso da memória, antes de executar a limpeza:
# Obs.: Altere conforme sua necessidade.
percent=80

# Quantidade de memória RAM no sistema:
ramtotal=`grep -F "MemTotal:" < /proc/meminfo | awk '{print $2}'`
# Quantidade de RAM 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`

# Checando porcentagem:
if [ $putil -gt $percent ]
then
   # Sincronizando os dados cacheados na memória com o(s) disco(s):
   sync
   # 'Dropando' cache:
   echo 3 > /proc/sys/vm/drop_caches
else
   # Remove-se as variáveis da memória e finaliza-se o script:
   unset percent ramtotal ramlivre ramusada putil
   exit $?
fi # Fim

Agradecimentos :) SMarcell

Referências:

Limpando memória cache - Por SMarcell em SlackBR Fórum

$ man proc


Outras dicas deste autor

Leitura recomendada
   Dica Linux recomendada Resolvendo o problema dos acentos nos compartilhamentos do Samba
   Dica Linux recomendada Usuário comum sem senha
   Dica Linux recomendada Removendo opção inválida "KDE" da lista de sessões da tela de login do GDM
   Dica Linux recomendada Como acessar servidor Novell através do Linux
   Dica Linux recomendada Ferramenta para monitorar HTB e HFSC em tempo real

Comentários
[1] Comentário enviado por SmithuX em 04/11/2008 - 12:57h:

Dá só uma olhada....

http://www.vivaolinux.com.br/dica/Limpando-a-memoria-cache-no-Linux/

[2] Comentário enviado por lcnrj em 04/11/2008 - 13:40h:

Legal! Parece bem completo.
Eu uso esse script aqui, é o mesmo comando num script mais simples, que encontrei pesquisando por ai. Coloquei ele para ser realizado de hora em hora no cron ( salvo em /usr/bin/limpacache.sh e permissões chmod a+x /usr/bin/limpacache.sh ). Para usar manualmente: sudo limpacache.sh
Funciona mesmo.
===============================
#!/bin/bash
#limpando cache

#o seguinte comando é o responsável pela limpeza
echo 3 > /proc/sys/vm/drop_caches
===============================

[3] Comentário enviado por bigbruno em 29/03/2009 - 06:41h:

Gostei do script, pretendo incluir na distribuicao BigLinux, qual nome devo incluir no cabecalho para que o autor do script tenha seus creditos mantidos?

[4] Comentário enviado por QuestLoder em 18/09/2009 - 19:25h:

Show de bola para parabens



[5] Comentário enviado por removido em 06/02/2010 - 16:40h:

Fera, voc&#7869; foi muito feliz nessa dica, vlw mesmo!
Abraço.


Contribuir com comentário


  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Responsável pelo site: Fábio Berbert de Paula - Conteúdo distribuído sob licença GNU FDL
Site hospedado por:

Viva o Linux

A maior comunidade Linux da América Latina! Artigos, dicas, tutoriais, fórum, scripts e muito mais. Ideal para quem busca auto-ajuda em Linux.