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


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
kcmdevices.pngInstaller et formater un disque dur externe usb sous Linux Debian Etch
Ce tutoriel vous présente comment installer votre dique usb sous Linux debian de l'installation en passant par le formatage jusqu'au montage dans votre système de fichier
mycomputer.pngOutils intéressants sous Linux
Voici quelques outils intéressants pour vous faciliter la vie sous Linux : nmap, nslookup
terminal.pngServeur ftp proftpd avec utilisateurs virtuels sous linux debian ubuntu
Ce tutoriel vous présente comment installer le serveur ftp proftpd à partir des paquets debian. Pour éviter de créer autant d'utilisateurs Linux que de compte FTP il est possible de créer des utilisateurs virtuels seulement disponibles pour le serveur FTP
ark.pngInstallation d'un système de sauvegarde avec rsync
Ce tutoriel vous présente l'installation d'un système de sauvegarde pour par exemple un site web à l'aide de l'outils rsync
terminal.pngCréation d'un virtualhost sous apache2
Ce mini tutoriel vous présente comment créer un virtualhost apache
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
ark.pngGestion de paquets sous debian etch et sarge et sous ubuntu
Cet article vous présente les commandes de gestion de paquets debian
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