Manipulando a memória RAM e a SWAP
21/09/2013Alguma vez você já precisou limpar o cache da memória RAM ou SWAP no linux ?
O Linux utiliza o espaço na memória cache para salvar programas e comandos que foram utilizados recentemente, isso permite executá-los mais rapidamente no futuro. É interessante saber manipular esse espaço na memória, vejamos como:
Limpando o cache da RAM
$ sync
$ echo 3 > /proc/sys/vm/drop_caches
Ou podemos usar o sysctl
para configurar parâmetros de kernel em runtime:
$ sysctl vm.drop_caches=3
- o
sync
faz com que todos os arquivos de cache do sistema sejam descarregados da memória e armazenados em disco, assim não perdemos os dados que estão na RAM - a opção
3
faz o kernel liberar pagecache, dentries e inodes - outras opções:
1
faz o kernel liberar somente pagecache,2
libera inodes e pagecache - para saber mais: Drop Caches e Sysctl vm
Controlando a SWAP
É possível configurar e controlar o comportamento da SWAP através de um parâmetro do kernel no arquivo /proc/sys/vm/swappiness
. Este arquivo contém um número de 0 a 100, onde o sistema determina a predisposição para fazer uso da SWAP.
Um número baixo faz com que ele use a SWAP apenas em situações extremas, enquanto que um número maior aumenta o uso de SWAP e mantém a memória RAM com mais espaço livre.
Aumentar ou diminuir o uso de SWAP:
$ echo "90" > /proc/sys/vm/swappiness
$ echo "10" > /proc/sys/vm/swappiness
ou use o sysctl
para passar esses parâmetros de kernel em runtime
$ sysctl vm.swappiness=20
No final lembre-se de resetar a SWAP para validar as configurações:
$ swapoff -a
$ swapon -a