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

14/09/2009 - 35563 consultations - 3 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 (3)

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).

kofina - 11/06/2014 à 11h44
Salut,
merci pour cette info.
Elle m\'a permit de régler des dysfonctionnement sur mon serveur asterisk.

Commentez cet article

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

Me tenir inform� des nouveaux messages


mail_generic.pngProblème à l'installation d'Exim4 : Could not perform immediate configuration on 'exim4-daemon-light'. sous Linux Debian
Il peut arriver que vous rencontriez un problème lors de l'installation d'Exim4, une erreur du style : Could not perform immediate configuration on 'exim4-daemon-light'.
encrypted.pngProtéger un dossier web apache2 par login et mot de passe avec un htaccess et un htpasswd sous debian lenny
Ce tutoriel vous présente comment protéger un répertoire web apache2 par login et mot de passe avec un htaccess et un htpasswd sous debian lenny
mycomputer.pngInstaller le serveur FTP Proftpd et stocker les utilisateurs dans une base de données MySQL sous Linux Debian Squeeze avec mots de passe encryptés en MD5
Ce tutoriel vous présente comment installer le serveur FTP Proftpd lié à MySQL sous Linux Debian Squeeze ainsi que la gestion de vos utilisateurs dans une table MySQL avec encryption des mots de passe en MD5
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
java.pngInstallation Tomcat et JDK de Sun
Tutoriel d'installation de Tomcat sous Debian avec la jdk de Sun à partir des packages Sun et Tomcat dernières version stable
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
database.pngInstallation MySQL 5 sous Debian Sarge avec les paquets backports.org
Tutoriel d'installation de MySQL 5 sous Debian Sarge à partir des paquets backports.org
mycomputer.pngInstallation debian Sarge avec VMWare sous Ubuntu
Ce tutoriel vous présente comment installer debian Sarge dans une image virtuelle avec VMWare Player sous Ubuntu Linux
database.pngInstallation MySQL 5 sous Debian Etch et Lenny
Tutoriel d'installation de MySQL 5 sous Debian Etch et Lenny à partir des paquets officiels