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

14/09/2009 - 36427 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


ark.pngGestion de paquets sous debian etch et sarge et sous ubuntu
Cet article vous présente les commandes de gestion de paquets debian
mycomputer.pngOutils intéressants sous Linux
Voici quelques outils intéressants pour vous faciliter la vie sous Linux : nmap, nslookup
database.pngSauvegarder restaurer base de données MySQL sous Debian
Ce mini tutoriel vous présente comment sauvegarder, et restaurer une base de données MySQL en mode console sous debian
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
log.pngInstallation d'un systeme de monitoring MRTG (Multi Router Traffic Grapher) sous debian
Ce tutoriel a pour but d'installer l'outil de monitoring MRTG. Cet outil permet de générer des graphiques en fonction de données SNMP, ou de scripts shell.
encrypted.pngConnexion ssh sous debian etch et lenny avec clé publique - privée
Ce tutoriel vous présente comment vous connecter sur votre serveur Debian (Etch et Lenny) en ssh, scp, sftp à partir de Windows avec clé publique privée (sans avoir à taper de mot de passe)
terminal.pngCommandes de base Debian et Ubuntu
Liste de commandes Linux les plus utilisées et les plus courantes sous Debian et Ubuntu avec les options qui vont biens
kcmdevices.pngForcer umount quand vous avez le message : device is busy sous Linux Debian
Ce mini tutoriel vous présente comment Démonter un point de montage quand celui ci ne veux pas être démonté
terminal.pngCréation d'un virtualhost sous apache2
Ce mini tutoriel vous présente comment créer un virtualhost apache