Como limpar o Cache de memória RAM, Buffer e espaço de troca em Linux

como qualquer outro sistema operacional, GNU / Linux implementou uma gestão de memória de forma eficiente e ainda mais do que isso. Mas se qualquer processo está corroendo a sua memória e você quer limpá-la, o Linux fornece uma maneira de descarregar ou limpar o cache de ram.

limpar a Cache RAM e trocar em Linux

como limpar a Cache em Linux?

cada sistema Linux tem três opções para limpar o cache sem interromper quaisquer processos ou serviços.1. Limpar apenas o PageCache.

# sync; echo 1 > /proc/sys/vm/drop_caches

2. Limpar dentrias e inodes.

# sync; echo 2 > /proc/sys/vm/drop_caches

3. Limpar o PageCache, dentries e inodes.

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

explicação do comando acima.

a sincronização irá limpar o buffer do sistema de ficheiros. Comando separado por ";” executado sequencialmente. A shell espera que cada comando termine antes de executar o comando seguinte na sequência. Como mencionado na documentação do kernel, escrever para drop_ cache irá limpar a ‘cache’ sem matar qualquer aplicação/serviço, o comando echo está a fazer o trabalho de escrever para Ficheiro.

Se você tem que limpar a cache do disco, o primeiro comando é mais seguro na empresa e produção como "...echo 1 > ….” só irá limpar o PageCache. Não é recomendado usar a terceira opção acima de "...echo 3 >” na produção até que você saiba o que está fazendo, pois irá limpar PageCache, dentries e inodes.

é uma boa idéia para liberar Buffer e Cache no Linux que pode ser usado pelo Kernel Linux?

Quando você está aplicando várias configurações e quer verificar, se ele é realmente implementado especialmente em I/O-extensa benchmark, então você pode precisar limpar cache de buffer. Você pode drop cache como explicado acima sem reiniciar o sistema, ou seja, sem tempo de inatividade necessário.

Linux é projetado de tal forma que ele olha para o cache de disco antes de olhar para o disco. Se ele encontra o recurso no cache, então o pedido não chega ao disco. Se limparmos o cache, o cache do disco será menos útil como o OS olhará para o recurso no disco.

além disso, ele também irá atrasar o sistema por alguns segundos, enquanto o cache é limpo e todos os recursos necessários pelo sistema operacional são carregados novamente no disco-cache.

Agora vamos criar um script shell para limpar automaticamente a cache de RAM diariamente às 2 da manhã através de uma tarefa cron scheduler. Criar um programa de consola clearcache.sh e adicione as seguintes linhas.

#!/bin/bash# Note, we are using "echo 3", but it is not recommended in production instead use "echo 1"echo "echo 3 > /proc/sys/vm/drop_caches"

Set execute permission on the clearcache.sh file.

# chmod 755 clearcache.sh

Agora você pode chamar o script sempre que for necessário para limpar a ‘cache’ de ram.

agora defina um cron para limpar a cache de RAM todos os dias às 2 da manhã. Abrir o crontab para edição.

# crontab -e

adicione a linha abaixo, salve e saia para executá-la às 2 horas por dia.

0 2 * * * /path/to/clearcache.sh

Para mais detalhes sobre como executar um trabalho você pode gostar de verificar o nosso artigo sobre 11 tarefas de agendamento Cron.é boa ideia limpar automaticamente a cache RAM no servidor de produção?não! não é. Pense em uma situação quando você agendou o script para limpar o cache ram todos os dias às 2 da manhã. Todos os dias às 2 da manhã o script é executado e ele descarrega o seu cache RAM. Um dia, por qualquer razão, pode ser mais do que o esperado usuários estão on-line em seu site e procurando recursos de seu servidor.

ao mesmo tempo script agendado executar e limpa tudo em cache. Agora, todo o usuário está obtendo dados do disco. Irá resultar numa falha do servidor e corromperá a base de dados. Então limpar ram-cache apenas quando necessário, e conhecer seus passos de pé, caso contrário você é um administrador de Sistema de culto de carga.

como limpar o espaço de Swap no Linux?

Se quiser limpar o espaço de troca, poderá querer executar o comando abaixo.

# swapoff -a && swapon -a

também pode adicionar o comando acima a um script de cron acima, depois de compreender todo o risco associado.

Agora vamos estar combinando ambos os comandos acima em um único comando para fazer um script apropriado para limpar a Cache de RAM e espaço de Swap.

# echo 3 > /proc/sys/vm/drop_caches && swapoff -a && swapon -a && printf '\n%s\n' 'Ram-cache and Swap Cleared'OR$ su -c "echo 3 >'/proc/sys/vm/drop_caches' && swapoff -a && swapon -a && printf '\n%s\n' 'Ram-cache and Swap Cleared'" root

Depois de testar ambos os comandos acima, executaremos o comando” free-h “antes e depois de executar o script e verificaremos a ‘cache’.

Clear RAM Cache and Swap Space

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *