Limpando o cache da memória RAM de forma efetiva

Publicado por Osama Jr. (última atualização em 17/11/2009)

[ Hits: 15.378 ]

Homepage: Não tenho

Download limpa_cache




Korn Shell script que, agendado via cron, realiza a verificação da porcentagem de memória RAM utilizada pelo sistema, e se for o caso executa a limpeza do cache da mesma. Mais instruções você encontrará nos comentários contidos no script.

Flw ;)

  



Esconder código-fonte

#!/bin/ksh
#
# Limpando o cache da memória RAM de forma efetiva.
#
###########################################################################
# INSTRUÇÕES PARA USO
#
# 1 - Salve este script no diretório '/usr/local/sbin' dê permissão
# de execução:
# chmod +x nome_do_script
#
# Agora edite o crontab do root e adicione:
# 0-59/30 * * * * /usr/local/sbin/nome_do_script
#
# 2 - Alternativamente salve este script no diretório /etc/cron.hourly
# e dê permissão de execução a ele.
#
# Utilizando a primeira alternativa, este script será executado a cada 
# 30 minutos. Já na segunda ele será executado a cada hora. Em ambos os
# casos este script fará a verificação da porcentagem de memória utilizada
# pelo sistema e caso essa porcentagem supere o valor definido na variável
# '$porcentagem_limite', a limpeza do cache da RAM será realizada. 
###########################################################################
#
# Autor: /bin/laden - 13/11/2009
#
# Mais detalhes: 'man ksh' e 'www.google.com/linux' =)

# Porcentagem limite de uso da memória antes de executar a limpeza
porcentagem_limite="90%"

while read input
do
   [[ "$input" == ~(E)MemTotal: ]] && memoria_total=$input
   [[ "$input" == ~(E)MemFree: ]]  && memoria_livre=$input
done < "/proc/meminfo"

memoria_total="${memoria_total//[^0-9]/}"
memoria_livre="${memoria_livre//[^0-9]/}"

let memoria_utilizada="$memoria_total - $memoria_livre"
let porcentagem_utilizada="$memoria_utilizada * 100 / $memoria_total"

porcentagem_limite="${porcentagem_limite//%/}"

test $porcentagem_utilizada -gt $porcentagem_limite && {
   # Dropando cache da memória RAM
   sync
   print 3 > /proc/sys/vm/drop_caches
}

exit 0

Scripts recomendados

Script de backup para cd-rw e outro local (pasta mapeada)

Controlando espaço de disco com quotas

Algoritmo para saber qual o maior número dentro de uma Array

Verificar se um mesmo arquivo está em dois diretórios diferentes

Instalação do plugin java jre-1_5_0_01 linux-i586


  

Comentários
[1] Comentário enviado por yonflux em 27/07/2016 - 09:11h

Prezados, bom dia!

Comecei a usar o Ubuntu faz umas 3 semanas, estou super satisfeito!
Já aprendi várias coisas bacanas, desde rodar aplicativos de outro sistema até mesmo a ter instalado vários aplicativos do meu uso para este novo sistema que estou aprendendo.

Hoje de madrugada eu tive uma surpresa, eu estava apenas com o facebook aberto no Chrome, no firefox eu estava administrando meu site em WordPress, ouvindo uma mp3 e rodando um photoshop pelo playonlinux...


Parei para tomar um café e misteriosamente meu sistema travou por completo. O meu hardware não é muito ruim, trata-se de um core-i7 com 4Gb Ram...

Procurei por aqui como limpar o cache da ram e encontrei este artigo.

-Primeiro eu gostaria de saber se ao limpar o cache pode causar algum erro em algum programa por estar utilizando este no momento.

-Peço que alguém, por favor, me explique com detalhes, os comandos do 1 e 2 passo,

-No caso disto aqui $porcentagem_limite qual porcentagem vocês aconselham a ser utilizado no meu caso? Eu costumo abrir programas pesados, como editores de vídeo e várias coisas ao mesmo tempo, mas já reparei que o Facebook destrói a memória do sistema. Fora isso, o que vocês aconselham?

Obrigado! :D


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts