Puis-je supprimer / var / cache en toute sécurité?


79

Je manque d'espace disque et j'ai remarqué que mon /var/cacherépertoire était volumineux . Puis-je supprimer ceci en toute sécurité? (en utilisant Arch Linux, BTW).

cache 

6
Je vérifierais ce qu'il y a dedans, mais étant donné que c'est là que pacman store se trouve les paquets que vous pourriez vouloir exécuter pacman -Scou même pacman -Sccsi vous voulez nettoyer tout le cache de paquets.
xenoterracide

La plupart des fichiers sous, mais pas tous, /var/cachesont supprimés en toute sécurité. Ne supprimez pas les répertoires et ne changez pas leur propriétaire. Courez du /var/cache/* | sort -nvoir ce qui prend de la place. Demandez ici si vous ne savez pas si les répertoires volumineux peuvent être nettoyés en toute sécurité.
Gilles, arrête de faire le mal '24

Qu'en est-il un analyseur d'utilisation du disque - alternativeto.net/software/windirstat/?platform=linux
Aaron Newton le

Réponses:


28

Non .

D'une part, je crois que /var/cache/bind/c'est le répertoire par défaut où bind9 s'attend à ce que ses fichiers de zone soient stockés (au moins sur Debian; je ne sais pas au hasard si d'autres distributions le suivent).

D'autre part, selon cette documentation , pacman (le gestionnaire de paquets utilisé par Arch linux) stocke son cache de paquets sous /var/cache/pacman/pkg/et ne s'attend probablement à rien d'autre que de modifier lui-même le contenu.

Je vous recommande de lire plus attentivement la documentation et de décider si le moment est venu de vider le cache du paquet.


Oui, ne supprimez pas le répertoire / var / cache / apt / archives, mais vous pouvez supprimer les fichiers: /var/cache/apt/pkgcache.bin et /var/cache/apt/srcpkgcache.bin, mais ils seront recréés par "apt-get update".
diyisme

6
Sur Debian, /var/cache/bindcontient les fichiers de zone transférés à partir d'autres serveurs de noms; elle ne doit pas contenir de zones maîtres. Debian suit FHS, et FHS exige que les fichiers /var/cachesoient supprimés. Bien sûr, la question concerne Arch, et plus loin, il ne faut pas supprimer les fichiers sans au moins d'abord déterminer ce qu'ils sont.
derobert

19
C'est comme dire que vous ne devriez pas supprimer les fichiers du répertoire temporaire de Windows sans savoir ce qu'ils sont. Si le dossier est destiné aux fichiers temporaires et que votre programme y insère des données non temporaires, il s’agit là d’un problème majeur, pas pour / var / cache
Tor Valamo

82

De http://www.lindevdoc.org/wiki//var/cache

Désolé pour la réponse (très) tardive, mais je pense qu'il est important d'inclure ce bit pour référence future.

Mettez en surbrillance le bit qui répond à cette question.

Le répertoire / var / cache contient des fichiers en cache, c’est-à-dire des fichiers générés qui peuvent être régénérés à tout moment, mais ils méritent d’être stockés pour gagner du temps pour les recalculer.

Toute application peut créer un fichier ou un répertoire ici. On suppose que les fichiers stockés ici ne sont pas critiques. Le système peut donc supprimer le contenu de / var / cache soit périodiquement, soit lorsque son contenu devient trop volumineux.

Toute application doit tenir compte du fait que le fichier stocké ici peut disparaître à tout moment et être prête à recalculer son contenu (avec une pénalité de temps).

Alors oui, vous pouvez supprimer ces fichiers sans vous attendre à ce que quelque chose de mauvais se produise.


7
Vous devrez sauter à travers quelques cerceaux si vous supprimez /var/cacheet que vous souhaitez utiliser aptaprès.
Matthias Braun

13

Comme d' autres l' ont déjà dit, /var/cache/n'importe quelle application peut utiliser des informations pour économiser du temps de récupération. D'après mon expérience, la plus grande partie de l'espace est occupée par le gestionnaire de paquets du système.

Depuis le wiki Arch Linux :

pacmanstocke ses packages téléchargés dans /var/cache/pacman/pkg/et ne supprime pas automatiquement les anciennes versions ou les versions désinstallées. Il est donc nécessaire de nettoyer délibérément ce dossier périodiquement pour éviter que ce dossier ne s'agrandisse indéfiniment.

pacman -Sc

Cependant , à moins que l’espace de stockage ne constitue un problème pressant, il sera possible d’éviter des maux de tête plus tard, en raison d’une incompatibilité future; l' un de ces outils devraient être utilisés: paccache, pkgcachecleanou pacleaner.


Pour autre système:

Basé sur Redhat (Fedora, CentOS, SL, ...)

yum clean all
# or
dnf clean all

Basé sur Debian (Ubuntu, ...)

apt-get autoclean

Basé sur SUSE

zypper clean

2
+1! J'ai remarqué aujourd'hui que je suis à court d'espace disque ... Un court métrage a du -hs /* 2> /dev/nullrévélé que /varc'était très gros. Il s'est avéré que mon cache pacman faisait 91 Go. pacman -Scnettoyé les anciens paquets et réduit le cache pacman à 5 Go!
daniel451

1
Cet article est une version plus commentée des instructions de l'arch wiki pour savoir comment utiliserpaccahce
joelostblom

9

J'ai trouvé cet article intéressant car je cherchais à supprimer de / var / cache sur Ubuntu 15.10 pour améliorer l'espace disque, voici ce que j'ai trouvé:

Les fichiers de cache / var / cache / apt sont supprimés après l'exécution de 'sudo apt-get clean'. Toutefois, la structure des répertoires reste inchangée si vous recherchez des améliorations de l'espace disque. 'apt-get clean' doit être exécuté en dernier si vous souhaitez améliorer votre espace disque avec apt-get [auto] remove / [auto] clean, etc.

Pour tout le reste de l'annuaire, je suis tout à fait d'accord avec 'Tor Valamo' et son explication. C'est le cache, le système et les applications qui utilisent le cache devraient pouvoir régénérer tout ce qu'ils ont créé ici. Vous avez juste des frais de performance mineurs, car le cache est régénéré d'une application à l'autre.

En disant cela, chaque système peut ne pas être conforme à ce principe, faites des tests, essayez de déplacer tout le contenu de votre répertoire de cache vers un nouvel emplacement et vérifiez que votre système et toutes vos applications fonctionnent avant de supprimer définitivement le cache.


1

Vous pouvez faire cette détermination vous-même en utilisant lsof.

Exécuter lsof -Pn +D /var/cache/ | awk '{print $1}' | sort | uniqpour voir quel logiciel contient actuellement des fichiers ouverts dans ce répertoire. Si quelque chose semble modérément important (ou que vous ne sachiez pas ce que c'est), ne l'enlevez pas.

En outre, vous ne devriez de toute façon pas purger des répertoires sans sauvegardes; cela s'applique même à /tmp. Si un fichier est en cours d'utilisation, votre suppression ne sera pas enregistrée avant la fermeture du gestionnaire (vous verrez qu'il a disparu dans le système de fichiers). De plus, la suppression peut entraîner l’arrêt des autres programmes en cours d’exécution (voir la lsofcommande ci-dessus) s’il manque un fichier attendu.

Fondamentalement, ne supprimez que les fichiers que vous savez pouvoir être supprimés en toute sécurité et qui ne sont actuellement pas utilisés par d'autres logiciels en cours d'exécution.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.