Limpar cache da memória RAM

Publicado por Ricardo Vasconcellos em 07/01/2010

[ Hits: 29.505 ]

Blog: http://www.vivaolinux.com.br/~qxada07

 


Limpar cache da memória RAM



Pessoal,

Segue script simples porém muito útil que criei para limpar o cache da memória de seu servidor ou pc. Dentro de /sbin crie um arquivo chamado "limpa_cache_memoria".

# cd /sbin
# touch limpa_cache_memoria
# chmod 755 limpa_cache_memoria


Agora edite o mesmo e insira as seguintes linhas...

#!/bin/sh
echo 3 > /proc/vm/sys/vm/drop_caches
sysctl -w vm.drop_caches=3

Agora basta colocar para limpar a memória todos os dias no período da noite, para isso vamos adicionar uma linha no cron:

00 00 * * * /sbin/limpa_cache_memoria

E depois executar o comando abaixo para reiniciar o cron:

# crontab /var/spool/cron/crontabs/root

Espero ter ajudado, pois me ajudou muito.

Abraço!

Outras dicas deste autor

Restringindo conexão brute force com iptables

Conhecendo mais sobre LOGs

Aumentando a segurança do seu servidor SSH

PHP4 + HTTPD2

Instalando Kernel 2.6.39.2 no Slackware 12

Leitura recomendada

Substituindo o sleep por um belo cronômetro regressivo

Letras coloridas no Vim

Criando códigos de barra sequenciais usando Shell Script e PHP

Compilação Kernel 4.0.3 no Slackware

tres - Transação Executivo-operacional em Shell

  

Comentários
[1] Comentário enviado por rony_souza em 07/01/2010 - 16:49h

Vlw quando eu trabalho o dia todo, acumula mto cache na memoria

tornando o sistema saturando rapidamente, fazendo meu pc ficar lerdo


*-*

[2] Comentário enviado por thiagop em 08/01/2010 - 01:17h

A idéia é interessante, mas não funcionou no meu Ubuntu. Parece que ele não tem o mesmo caminho para os arquivos que vc mencionou.

# uname -a
Linux maquina 2.6.31-17-generic #54-Ubuntu SMP Thu Dec 10 16:20:31 UTC 2009 i686 GNU/Linux
# ls /proc/vm/
ls: impossível acessar /proc/vm/: Arquivo ou diretório não encontrado

[3] Comentário enviado por tiagoalam em 08/01/2010 - 07:25h

No ubuntu e no debian o caminho é "/proc/sys/vm/drop_caches"

Valeu pela dica man

[4] Comentário enviado por albfneto em 08/01/2010 - 10:39h

muito bom, e prático!

[5] Comentário enviado por vitorioluis em 09/04/2010 - 11:47h

Nossa essa dica foi essencial para meu server poxy que estava estourando memoria.... Valeu mesmo e Viva o linux!!!!

[6] Comentário enviado por marcelocc em 02/06/2010 - 16:30h

Boa tarde!

Possuo um servidor LAMP (cloud tecla) com CentOS 5 64 Bits e estou com esse problema de cache que vai acumulando até estourar o limite de memória e assim, travando o cloud.

Penso em utilizar o script para ajustar isso, mas não considero uma solução definitiva para o meu problema, visto que o cache não poderia fazer isso.

Alguém saberia me dizer o que está acontecendo?


Um abraço,
Marcelo

[7] Comentário enviado por dibetao em 04/08/2010 - 01:28h

Olá,
apenas o primeiro comando (echo 3 > /proc/vm/sys/vm/drop_caches) limpou a memoria aqui no pc. Qual o motivo para o segundo comando (sysctl -w vm.drop_caches=3) ?

ps.: muito boa a dica!! :-)

[8] Comentário enviado por welson_bs em 16/01/2012 - 12:39h

olá,
estou tentando limpar o cache da memória ram de pc com o suse 2.4.21 instalado e não consigo achar o arquivo "drop_cache" dentro do /proc/. porem localizei o diretorio "vm" dentro do /proc/sys/vm, mas não tem o arquivo "drop_cache" e sim um monte de arquivos, ex: block_dump, dirty_* entre outros. se alguem souber onde fica ou se é diferente para limpar o cache da ram, ficarei muito agradecido. desde já agradeço.

[9] Comentário enviado por welson_bs em 16/01/2012 - 15:36h

olá novamente, já descobri que o comando para limpar a memoria cache na minha distro não existe. Obrigado e desculpe o incomodo.

[10] Comentário enviado por kelseysantos em 21/08/2012 - 02:52h


[6] Comentário enviado por marcelocc em 02/06/2010 - 16:30h:

Boa tarde!

Possuo um servidor LAMP (cloud tecla) com CentOS 5 64 Bits e estou com esse problema de cache que vai acumulando até estourar o limite de memória e assim, travando o cloud.

Penso em utilizar o script para ajustar isso, mas não considero uma solução definitiva para o meu problema, visto que o cache não poderia fazer isso.

Alguém saberia me dizer o que está acontecendo?


Um abraço,
Marcelo


Marcelo;

Já tentou adicionar echo 3 > /proc/vm/sys/vm/drop_caches ?

Grato.


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

Olá,

Esta limpeza me salvou a pouco...

Não compreendi como adicionar ao kron, poderia me ajudar?

"Agora basta colocar para limpar a memória todos os dias no período da noite, para isso vamos adicionar uma linha no cron:

00 00 * * * /sbin/limpa_cache_memoria"


[12] Comentário enviado por smrabelo em 19/10/2012 - 19:47h


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

Olá,

Esta limpeza me salvou a pouco...

Não compreendi como adicionar ao kron, poderia me ajudar?

"Agora basta colocar para limpar a memória todos os dias no período da noite, para isso vamos adicionar uma linha no cron:

00 00 * * * /sbin/limpa_cache_memoria"



mcedit /etc/crontab

Parabéns...dica muito boa!!!

=)

[13] Comentário enviado por qxada07 em 22/10/2012 - 14:37h

Punisher

O motivo de colocar no cron é para limpar a memória ram todos os dias automaticamente a meia noite... Você pode alterar o horario de execução do comando se você preferir.


[14] Comentário enviado por joseror em 12/03/2014 - 14:15h

Olá Sou novo em Linux e gostaria de compartilhar um script que criei para limpar automaticamente o cache da memória RAM de hora em hora no centOS talves ajude alguém:

vi /root/scripts/limpacache.sh

"insira as duas linhas abaixo dentro do limpacache.sh"
#!/bin/sh
sync; echo 3 > /proc/sys/vm/drop_caches

chmod a+x /root/scripts/limpacache.sh

vi /etc/cron.hourly/limpacache-cron.sh

"insira as duas linhas abaixo dentro do limpacache-cron.sh"
#!/bin/sh
exec /root/scripts/limpacache-cron.sh now

# chmod +x /etc/cron.hourly/limpacache-cron.sh

O que vocês acham vai funcionar de hora em hora? Qualquer coisa é so comentar!

Att
Ricardo

[15] Comentário enviado por joseror em 12/03/2014 - 14:16h


[14] Comentário enviado por joseror em 12/03/2014 - 14:15h:

Olá Sou novo em Linux e gostaria de compartilhar um script que criei para limpar automaticamente o cache da memória RAM de hora em hora no centOS talves ajude alguém:

vi /root/scripts/limpacache.sh

"insira as duas linhas abaixo dentro do limpacache.sh"
#!/bin/sh
sync; echo 3 > /proc/sys/vm/drop_caches

chmod a+x /root/scripts/limpacache.sh

vi /etc/cron.hourly/limpacache-cron.sh

"insira as duas linhas abaixo dentro do limpacache-cron.sh"
#!/bin/sh
exec /root/scripts/limpacache.sh now

# chmod +x /etc/cron.hourly/limpacache-cron.sh

O que vocês acham vai funcionar de hora em hora? Qualquer coisa é so comentar!

Att
Ricardo





Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts