web-dev-qa-db-fra.com

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

Je manque d'espace disque et j'ai remarqué que j'ai un grand /var/cache répertoire. Puis-je supprimer cela en toute sécurité? (en utilisant Arch Linux, BTW).

87
user11780

Non .

D'une part, je crois que /var/cache/bind/ 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 par hasard si d'autres distributions le suivent)

D'autre part, selon cette documentation , pacman (le gestionnaire de paquetages utilisé par Arch Linux) stocke son cache de paquetages sous /var/cache/pacman/pkg/ et il n'attend probablement rien d'autre que lui-même pour modifier le contenu.

Je vous recommande de lire la documentation de plus près et de décider si c'est le bon moment pour vider le cache du package.

30
Shadur

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.

Souligné le bit qui répond à cette question.

Le répertoire/var/cache contient des fichiers mis en cache, c'est-à-dire des fichiers qui ont été générés et peuvent être recréés à tout moment, mais ils valent la peine d'être stockés pour gagner du temps lors de leur recalcul.

Toute application peut créer un fichier ou un répertoire ici. On suppose que les fichiers stockés ici ne sont pas critiques, donc le système peut supprimer le contenu de/var/cache périodiquement ou 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êt à recalculer son contenu (avec une certaine pénalité de temps).

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

85
Tor Valamo

Comme d'autres l'ont dit, /var/cache/ peut être utilisé par n'importe quelle application pour stocker des informations afin de gagner du temps sur la récupération. D'après mon expérience cependant, la majeure partie de l'espace occupé ici provient du gestionnaire de paquets du système.

Depuis l'Arch Linux wiki :

pacman stocke 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 , sauf si l'espace de stockage est un problème désespéré, pour éviter des maux de tête plus tard, en raison d'une future incompatibilité; l'un de ces autres outils doit être utilisé: paccache, pkgcacheclean ou pacleaner.


Pour un 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
15
Kevin

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

/ var/cache/apt les fichiers de cache sont supprimés après l'exécution de 'Sudo apt-get clean', mais la structure du répertoire reste ce qui ne pose aucun problème si vous recherchez des améliorations d'espace disque; 'apt-get clean' devrait être lancé en dernier si vous voulez améliorer l'espace disque avec apt-get [auto] remove/[auto] clean etc.

Comme pour tout le reste du répertoire, je ne pourrais pas être plus 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 y ont créé. Vous avez juste des frais généraux de performances mineurs car le cache est régénéré d'une application à l'autre

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

9
JeffreyJ

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

Courir lsof -Pn +D /var/cache/ | awk '{print $1}' | sort | uniq pour voir quel logiciel contient actuellement des fichiers ouverts dans ce répertoire. Si quelque chose semble modérément important (ou si vous ne savez pas de quoi il s'agit), ne le supprimez pas.

De plus, vous ne devriez pas simplement souffler les répertoires sans sauvegarde de toute façon; cela s'applique même à /tmp. Si un fichier est en cours d'utilisation, votre suppression ne sera enregistrée qu'après la fermeture du gestionnaire (vous verrez qu'il a disparu dans le système de fichiers). De plus, la suppression peut entraîner le blocage d'autres programmes en cours d'exécution (voir la commande lsof ci-dessus) si un fichier attendu qui s'y trouve est manquant.

Fondamentalement, ne supprimez que les fichiers que vous savez sont sûrs à supprimer et ne sont pas actuellement utilisés par d'autres logiciels en cours d'exécution.

1
user26053