Linux slogan
Visite também: BR-Linux.org · Dicas-L · SoftwareLivre.org · UnderLinux

Linux banner
Linux banner


» Screenshot

Dica

Limpando a memória cache no Linux
Linux user
Publicado por Phillipe Smith em 18/06/2008

Login: SmithuX, 430451 pontos | Blog: http://smithux.com
[ Hits: 60440 ]

Limpando a memória cache no Linux

Pessoal, já percebi que muitos usuários de Linux tem problemas com a identificação e manuseio da memória no Linux.

O maior problema é quando o comando "free" é usado e o usuário percebe que o sistema está utilizando um absurdo da memória.

Mas o que muitos não percebem é que na verdade o Linux não utiliza uma grande quantidade de memória para acessar os aplicativos... O que acontece é que cada aplicativo aberto, quando fechado, o Linux guarda um espaço na memória para que aquele programa seja aberto de forma muito mais rápida. Esse processo é o famoso "CACHE".

No entanto, nem sempre é útil deixar que a memória cache guarde esse espaço, então o que muitos fazem para que sua memória volte ao normal é reiniciar o computador.

Isso também não seria necessário!!!

Os comandos abaixo fazem uma limpeza da memória cache sem que você precise reiniciar o micro. Apreciem!

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

# sysctl -w vm.drop_caches=3


Aqui estão os links dos locais onde essas belezinhas podem ser explicadas mais detalhadamente:
Abraço a todos!!!




Outras dicas deste autor

Leitura recomendada
   Dica Linux recomendada GIMP com "cara" de Photoshop
   Dica Linux recomendada Navegando em sites favoritos com Speed Dial
   Dica Linux recomendada Conceitos básicos e história do Linux
   Dica Linux recomendada Efeitos de sombra no Fluxbox (Zenwalk)
   Dica Linux recomendada Complementando artigo sobre integração do Linux ao AD

Comentários
[1] Comentário enviado por albfneto em 18/06/2008 - 17:13h:

tenho uma sugestão. que tal um simples script para apagar o cache e os arquivos temporários?


[2] Comentário enviado por SmithuX em 18/06/2008 - 17:55h:

Pois é... Já postei aqui um script pra efetuar esse procedimento de limpeza da memória cache....
Só que ainda não foi publicado!!!


[3] Comentário enviado por SMarcell em 21/06/2008 - 02:49h:

Só lembrando que a primeira opção:

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

só funcionará no kernel a partir da versão 2.6.16.


[4] Comentário enviado por SmithuX em 21/06/2008 - 12:55h:

Valeu por lembrar SMarcell!!!


[5] Comentário enviado por maran em 03/07/2008 - 09:45h:

Bom, favoritos né ;)


[6] Comentário enviado por kalib em 14/07/2008 - 16:55h:

Opa..grande archsmith.. ;]

Putz..nem tinha visto tua dica..se tivesse visto teria pulado direto para a segunda..que mandei hoje...em breve deve estar sendo publicada...mas segue essa mesma linha. ;]

Se já quizer ir adiantando...já tá no meu blog: http://blog.marcelocavalcante.net

abraço


[7] Comentário enviado por alainx2 em 09/06/2009 - 19:49h:

ai mais uma coisa a opção 1
# echo 3 > /proc/sys/vm/drop_caches
da com permissão negada
mesmo em sudo da isso e ain
uso o ubuntu 9,04


[8] Comentário enviado por Smithux em 09/06/2009 - 20:45h:

alainx2, você tentou como root, sem ser o sudo?
E a segunda opção deu certo?
Se sim, não importa qual você use, o resultado é o mesmo.


[9] Comentário enviado por rodriguescj em 23/07/2009 - 10:42h:

Ola PessoALL

Por favor estou com muma verssão do SUSE, verssão 09

Quando tento acessar este parametro ele me diz que não existe o arquivo

cjr:~ # cat /etc/*leas*
SUSE LINUX Enterprise Server 9 (x86_64)
VERSION = 9
PATCHLEVEL = 4
LSB_VERSION="core-2.0-noarch:core-3.0-noarch:core-2.0-x86_64:core-3.0-x86_64"
cat: /etc/lsb-release.d: Is a directory

cjr:/so_ibm/scripts # echo 3 > /proc/sys/vm/drop_caches
-bash: /proc/sys/vm/drop_caches: No such file or directory

Alguem tem uma ideia? poi o cache esta muito alto e consumindo toda memoria, deixando a maquina lenta.
Obrigado.


[10] Comentário enviado por Smithux em 23/07/2009 - 11:19h:

Tentou isso: # sysctl -w vm.drop_caches=3


[11] Comentário enviado por rodriguescj em 23/07/2009 - 12:34h:

Tb tentei e apresenta a msg abaixo:

cjr:/so_ibm/scripts # sysctl -w vm.drop_caches=3
error: "vm.drop_caches" is an unknown key
You have new mail in /var/mail/root
cjr:/so_ibm/scripts #

Eu creio que deve ser a verssão do Kernel, ou a verssão do SUSE

Sera que existe uma outra forma de limpar este cahce?

Obrigado.


[12] Comentário enviado por Smithux em 25/07/2009 - 03:59h:

Kra... nunca vi outra forma de limpar a memória cache não... Se tem eu não sei.

Se não me engano, esse problema é devido à versão do seu kernel.



[13] Comentário enviado por leandrojpg em 09/09/2009 - 14:20h:

To precisando de tentar resolver esse problema, mas o meu kernel é 2.6.9-22.ELsmp #1 SMP Sat Oct 8 21:32:36 BST 2005 x86_64 x86_64 x86_64 GNU/Linux.

só que minha memória ja esta exaurida.


[14] Comentário enviado por Smithux em 09/09/2009 - 16:31h:

Leandro, há um problema com os comandos do /proc e sysctl com kernels muito antigos.
Não sei se vou poder te ajudar muito, mas tenta achar/instalar um pacote chamado "procps"
Talvez esse pacote resolva o problema.


[15] Comentário enviado por Alex VirtualBoy em 01/06/2011 - 16:48h:

Muito boa dica! Não é fácil lembrar todos estes truques.


[16] Comentário enviado por marceloviana em 28/08/2012 - 08:32h:

Pessoal, qual o impacto para o Squid ao usar o comando em questão para limpar o cache?

Obrigado!


[17] Comentário enviado por mbrainiac em 03/09/2012 - 22:45h:

pci bus error 2290 seria problema de cache?


[18] Comentário enviado por phoemur em 11/04/2013 - 15:03h:

Postei um script pra limpar o cache

http://www.vivaolinux.com.br/script/Limpar-o-cache-da-memoria-RAM-apenas-quando-necessario


[19] Comentário enviado por rodolfosouzasp em 22/07/2013 - 10:59h:

Excelente dica!!!

Boa Smith...


[20] Comentário enviado por kramersaunders em 12/02/2014 - 15:21h:

Gostaria de saber a diferença entre os comandos abaixo:

echo 1 > /proc/sys/vm/drop_caches

echo 2 > /proc/sys/vm/drop_caches

echo 3 > /proc/sys/vm/drop_caches



Obrigado!


[21] Comentário enviado por Smithux em 12/02/2014 - 17:11h:

Liberar o pagecache:
echo 1 > /proc/sys/vm/drop_caches

Liberar dentries e inodes:
echo 2 > /proc/sys/vm/drop_caches

Liberar pagecache, dentries e inodes:
echo 3 > /proc/sys/vm/drop_caches



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.