Vider la mémoire cache d'un serveur Linux Debian

14/09/2009 - 8040 consultations - 2 commentaires


Ce tutoriel vous présente comment récupérer la mémoire cache alouée mais non utilisée par le système afin de la rendre disponible aux processus qui en ont besoin.

Les processus dormant garde une partie de la mémoire RAM en réserve sans l'utiliser, il arrive parfois que certains processus en garde tellement qu'il n'y en a plus de disponible pour les autres applications, il est donc nécessaire de désallouer afin de rendre la mémoire de nouveau disponible.

On commence par jeter un oeil à la mémoire libre et utilisée à l'aide de la commande free -m :
$ free -m
             total       used       free       shared     buffers      cached
Mem:          7974       5143       2831            0         650        2436
-/+ buffers/cache:       2056       5917
Swap:          509         46        463
L'option -m indique qu'on affiche ces chiffres en Mo.

On place un 3 dans le fichier /proc/sys/vm/drop_caches afin de libérer la mémoire cache :
$ echo 3 > /proc/sys/vm/drop_caches

Enfin on revérifie la mémoire après le vidage du cache :
$ free -m
             total       used       free     shared    buffers     cached
Mem:          7974        383       7591          0         59         22
-/+ buffers/cache:        300       7674
Swap:          509         46        463

Et voilà, la mémoire est libérée, on peut voir que le cache est passé de 2436 Mo à 22 Mo.
La mémoire utilisé passe de 5143 Mo à 383 Mo.

Commentaires (2)

Referencement local - 03/05/2011 à 15h14
Merci pour cette info ! Je pense qu'elle me sera utile !

analogx - 15/11/2011 à 18h53
Bonjour,
En lisant le man 5 de proc, j'ai lu qu'il fallait lancer sync avant d'executer la commande que tu décris:
-----------
/proc/sys/vm/drop_caches (depuis Linux 2.6.16)
L'écriture dans ce fichier fera que le noyau nettoyera les caches, les entrées de répertoires et les inœuds de la mémoire, libérant celle-ci.

Pour libérer les caches, utilisez echo 1 > /proc/sys/vm/drop_caches ; Pour libérer les entrées de répertoires et les inœuds, utilisez echo 2 > /proc/sys/vm/drop_caches ; Pour libérer les caches les entrées de répertoires et les inœuds, utilisez echo 3 > /proc/sys/vm/drop_caches.

Parce que cette opération est non destructive et que les objets « sales » ne sont pas libérables, l'utilisateur devrait d'abord lancer sync(8).

Commentez cet article

Nom (obligatoire)
E-mail (obligatoire)
Site Internet (facultatif)
code anti-spam

Me tenir informé des nouveaux messages





  puce ACCUEIL
  puce BASE DEBIAN (12)
  puce TUTORIELS
   Apache, PHP, Tomcat (4)
   MySQL, PostgreSQL (6)
   Backup (Rsync Scp Proxy) (6)
   Monitoring (Mrtg Snort) (4)
   Virtualisation Xen Vmware (1)
  puce ACTUALITES
  puce LIENS
  puce PLAN DU SITE
  puce BOITE A OUTILS
  puce RECHERCHES FREQUENTES
  puce CONTACT




date.pngInstaller une tâche planifiée crontab sous Linux debian
Ce tutoriel vous présente comment installer une tâche planifiée crontab qui sera lancée automatiquement à un moment défini
encrypted.pngCorriger l'erreur There is no public key available for the following key IDs après apt-get update
Ce mini tutoriel vous explique comment corriger l'erreur There is no public key available for the following key IDs
database.pngTutoriel de sauvegarde automatisées de bases de données MySQL, compression en tar.gz et envoi par FTP sous Linux Debian
Ce tutoriel vous présente comment automatiser la sauvegarde de base de données MySQL en compressant les sauvegardes et en les plaçant sur un FTP distant.
terminal.pngCréation d'un virtualhost sous apache2
Ce mini tutoriel vous présente comment créer un virtualhost apache
mycomputer.pngOutils intéressants sous Linux
Voici quelques outils intéressants pour vous faciliter la vie sous Linux : nmap, nslookup
ark.pngGestion de paquets sous debian etch et sarge et sous ubuntu
Cet article vous présente les commandes de gestion de paquets debian
ark.pngApt-proxy, serveur proxy de dépot de paquets debian
Apt-proxy permet de centraliser l'accès aux dépots debian en créant un proxy sur lequel toutes les machines de votre lan vont chercher les paquets à installer et mettre à jour
mycomputer.pngInstaller le serveur FTP Proftpd avec le module MySQL et stocker les utilisateurs dans une base de données MySQL sous Linux Debian Lenny
Ce tutoriel vous présente comment installer le serveur FTP Proftpd lié à MySQL sous Linux Debian Lenny ainsi que la gestion de vos utilisateurs dans une table MySQL
encrypted.pngConnexion ssh sous debian sarge avec clé publique - privée
Ce tutoriel vous présente comment vous connecter sur votre serveur Linux en ssh, scp, sftp à partir de Windows avec clé publique privée