Comment nettoyer ou désactiver le cache mémoire?

46

Après le démarrage du système, le cache mémoire se remplit en quelques minutes et commence à utiliser le swap. Voici une capture d'écran de / proc / meminfo.

Cependant, si je peux désactiver ce processus / nettoyer le cache une fois par la suite, je pense que mon système va accélérer dans une certaine mesure. Corrigez-moi si je me trompe ici.

J'ai aussi essayé de nettoyer la mémoire de Bleachbit, mais il ne semble pas nettoyer correctement le cache mémoire. En outre, la fonctionnalité est encore au stade expérimental.

Une question similaire était déjà posée ici: Comment puis-je désactiver la lecture anticipée? cache? , mais cela concernait Ubuntu Server, et les réponses impliquaient également des paramètres manuels, etc.

Je veux donc savoir s’il existe des logiciels pour désactiver / activer le Memory Cache pour Ubuntu 12.04.

    
posée Forbidden Overseer 25.06.2012 - 14:25
la source

4 réponses

56
  

Remarque: Linux ne "PAS" manger votre RAM! Veuillez regarder la excellente réponse de Geirha ci-dessous pour comprendre pourquoi ...

Après la remarque ci-dessus, si vous pensez toujours que le "nettoyage" du cache pourrait vous aider, vous pouvez certainement essayer: il s’agit d’un seul interlocuteur depuis le terminal:

sync && echo 3 | sudo tee /proc/sys/vm/drop_caches

Il n’ya pas de moyen facile de désactiver le cache, mais vous pouvez obtenir le même effet en le nettoyant aussi souvent que toutes les minutes , si vous souhaitez:

  • Faites-en un cron-job
  • Appuyez sur Alt-F2 , tapez gksudo gedit /etc/crontab et ajoutez cette ligne près du bas:

    */15 * * * * root sync && echo 3 > /proc/sys/vm/drop_caches

  • Cela nettoie toutes les 15 minutes. Vous pouvez définir à 1 ou 5 minutes si vous voulez vraiment en remplaçant le premier paramètre par * ou */5 au lieu de */15

Un paquebot pour connaître la RAM libre réelle, à l’exception du cache

La réponse de Geirha explique les détails, mais en bref, vous obtenez le nombre de mégaoctets gratuits avec:

free -m | sed -n -e '3p' | grep -Po "\d+$"

qui, sur mon serveur de ligne de commande de 2 Go, retourne une valeur extrêmement élevée 1835 .

    
réponse donnée ish 25.06.2012 - 14:49
la source
43

Aide! Linux a mangé ma RAM!

www.linuxatemyram.com explique cela magnifiquement dans le formulaire FAQ, l'essentiel étant:

  

Que se passe-t-il?

     

Linux emprunte de la mémoire inutilisée pour la mise en cache des disques. Cela donne l'impression que vous avez peu de mémoire, mais vous ne l'êtes pas! Tout va bien!

     

Pourquoi fait-il cela?

     

La mise en cache des disques rend le système beaucoup plus rapide! Il n'y a aucun inconvénient, sauf pour les débutants confus. Il ne prend en aucun cas la mémoire des applications!

     

Que faire si je veux exécuter plus d'applications?

     

Si vos applications veulent plus de mémoire, elles récupèrent simplement un bloc emprunté par le cache du disque. Le cache disque peut toujours être redonné aux applications immédiatement! Vous n'êtes pas faible sur ram!

     

Comment est-ce que je vois combien de RAM libre j'ai vraiment?

     

Pour voir la quantité de RAM que vos applications pourraient utiliser sans permuter, exécutez free -m et examinez la colonne "disponible":    

$ free -m
              total        used        free      shared  buff/cache   available
Mem:           1504        1491          13           0         855      792
Swap:          2047           6        2041
  C'est votre réponse en mebibytes.

Source: comme mentionné, l'excellent www.linuxatemyram.com - veuillez visiter pour plus d'informations.

    
réponse donnée geirha 25.06.2012 - 14:32
la source
4

Pour vérifier votre utilisation actuelle de la mémoire

 watch -n 1 free -m

ou

 watch -n 1 cat /proc/meminfo

Pour libérer de l'espace

 sudo sysctl -w vm.drop_caches=3

REMARQUE: cette action ne rendra pas votre système plus rapide, ni sa stabilité et ses performances. Il nettoiera simplement la mémoire utilisée par le noyau Linux sur les caches.

ou

 sudo sync && echo 3 | sudo tee /proc/sys/vm/drop_caches

REMARQUE: vous pouvez utiliser des tâches cron pour planifier les commandes ci-dessus afin de les exécuter à des intervalles de temps spécifiques.

    
réponse donnée MKD 25.01.2015 - 04:21
la source
1

Comme on peut voir l'encaissement pas un problème juste si cela provoque un échange, ce que vous pouvez éviter en gérant la valeur vm.swappiness . Peut-être que c'est ce que vous recherchez: pourquoi-est-swap- être utilisé-même-si-que-je-ai-beaucoup-libre-RAM

    
réponse donnée Tamas 23.09.2014 - 10:45
la source

Lire d'autres questions sur les étiquettes