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

Linux banner
Linux banner
Linux banner
Linux banner


» Screenshot
Linux: Ubuntu 11.04
Por calusbr

Dica

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

Login: SmithuX, 425309 pontos | Blog: http://smithux.com
[ Hits: 59067 ]

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 Instalar cliente de terminal usando Debian
   Dica Linux recomendada Perdeu a senha de root do seu Fedora Core?
   Dica Linux recomendada Minimizando aplicativos tela cheia no Gnome com Compiz
   Dica Linux recomendada Repositório de modelos para Blender
   Dica Linux recomendada EBook Linux 101 Hacks - Segunda Edição

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.