Comment effacer le cache de mémoire dans Linux

Comment effacer le cache de mémoire dans Linux

Le cache de mémoire est un composant essentiel de tout système Linux, contribuant à améliorer les performances en stockant des données fréquemment consultées dans un emplacement rapide et facilement accessible. Cependant, le cache peut également devenir gonflé au fil du temps, conduisant à des performances dégradées. Heureusement, il est relativement facile d'effacer le cache de mémoire dans Linux.

Effacer le cache de mémoire est sûr mais pas recommandé à chaque fois. Il peut ralentir les performances du système car la lecture des fichiers de la mémoire est beaucoup plus rapide que le disque persistant. Puisqu'il supprime les objets mis en cache de mémoire, il peut coûter une quantité importante d'E / S et de CPU pour recréer les objets supprimés.

Ce tutoriel vous aidera à effacer le cache de mémoire sur le système Linux / Unix via la ligne de commande.

Comment effacer le cache de mémoire sur Linux

Il existe trois options disponibles pour effacer le cache de mémoire dans Linux. Choisissez l'une des options ci-dessous pour rincer la mémoire du cache du système Linux selon vos exigences.

  • Effacer PageCache, Dentries et Inodes dans la mémoire du cache. En bref, il effacera tout le cache de mémoire:
    synchronisation; Echo 3 | sudo tee / proc / sys / vm / drop_caches  
  • Effacer les dentries et les inodes uniquement dans la mémoire du cache
    synchronisation; Echo 2 | sudo tee / proc / sys / vm / drop_caches  
  • Effacer le cache de page uniquement dans la mémoire du cache
    synchronisation; Echo 1 | sudo tee / proc / sys / vm / drop_caches  

Ici la première commande synchronisation est utilisé pour synchroniser tous les fichiers de cache en mémoire au stockage persistant. La commande suivante est séparée par un «;». Une fois la première commande terminée, la commande suivante sera déclenchée pour effacer la mémoire de cache.

Scheduleg Le cache de mémoire transparente en utilisant le crontab

Vous pouvez également planifier un travail de maïs pour effacer régulièrement le cache. Planifiez ce qui suit dans System Crontab pour ancrer automatiquement la mémoire de cache à un intervalle régulier.

Ouvrez un terminal et exécutez la commande «crontab -e» pour modifier Crontab:

crontab -e  

Ajoutez l'entrée ci-dessous dans le fichier:

0 10 * * * sync; Echo 3 | sudo tee / proc / sys / vm / drop_caches 

Le cron ci-dessus s'exécutera à chaque heure et rincera le cache de mémoire sur votre système.

Sur les serveurs de production, il n'est pas recommandé de planifier une commande de cache claire. Cela peut entraîner une corruption des données ou une perte de données. Alors méfiez-vous avant d'exécuter la commande ci-dessus dans un environnement de production.

Comment trouver de la mémoire mise en cache dans Linux

Utiliser gratuit Commande pour découvrir les utilisations de la mémoire de cache par System Linux. La sortie de la commande libre est comme ci-dessous

gratuit -m  
Sortie totale utilisée Buffeurs partagés libres MEM CACHED CACHED: 16050 15908 142 0 120 12953 - / + Buffeurs / Cache: 834 15216 Swap: 0 0 0 

Ici, la dernière colonne affiche de la mémoire mise en cache (12953 Mo) sur le système Linux. Le -m L'option est utilisée pour afficher la sortie MB.