Limpando o cache da memória RAM de forma efetiva
Publicado por Osama Jr. (última atualização em 17/11/2009)
[ Hits: 15.361 ]
Homepage: Não tenho
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 ;)
#!/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
Backup Diario excluindo o antigo
Remover linhas duplicadas em arquivos
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
SysAdmin ou DevOps: Qual curso inicial pra essa área? (0)
Melhores Práticas de Nomenclatura: Pastas, Arquivos e Código (3)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta