O cache de disco no Linux é gerenciado automaticamente pelo kernel, que utiliza a memória RAM disponível para armazenar dados frequentemente acessados. Isso reduz o número de acessos físicos ao disco, melhorando significativamente o desempenho do sistema.
🧠 1. Entendendo o Funcionamento do Cache
- O Linux usa page cache para armazenar blocos de dados lidos do disco.
- Arquivos acessados com frequência são mantidos na RAM.
- O kernel decide o que manter ou liberar com base na frequência e prioridade de acesso.
⚙️ 2. Monitorar o Uso de Cache
Use os seguintes comandos para monitorar:
free -h
vmstat 1
iotop
free -h: mostra o uso de memória e cache.vmstat: exibe estatísticas de memória, processos e I/O.iotop: monitora processos que mais usam disco.
🔧 3. Ajustar Parâmetros do Kernel
Você pode ajustar o comportamento do cache com:
cat /proc/sys/vm/swappiness
cat /proc/sys/vm/vfs_cache_pressure
- swappiness: define a tendência de usar swap. Valor ideal: entre 10 e 30.
- vfs_cache_pressure: controla a liberação de cache de metadados. Valor ideal: entre 50 e 100.
Para alterar:
sudo sysctl vm.swappiness=20
sudo sysctl vm.vfs_cache_pressure=75
🧪 4. Usar RAM como Disco (tmpfs ou ramdisk)
Para cargas temporárias, você pode montar uma parte da RAM como disco:
sudo mount -t tmpfs -o size=1G tmpfs /mnt/ramdisk
Ideal para testes, compilações ou arquivos temporários que exigem alta velocidade.
🛠️ 5. Otimizar Discos com hdparm
Para discos SATA:
sudo hdparm -Tt /dev/sda
- Mede desempenho de leitura e cache.
- Pode ativar cache de leitura com:
sudo hdparm -A1 /dev/sda
⚠️ Use com cautela — alterações incorretas podem afetar a integridade do disco.
📚 Fontes Recomendadas
- Procedimento.com.br – Otimização com Disk Caching
- LinuxElite – Cache de RAM para disco
- Linux Terminal – Limpeza de cache e arquivos temporários
