J'ai récemment installé Arch Linux et j'ai constaté que je rongeais beaucoup d'espace de stockage assez rapidement. Pour une raison quelconque, j'ai déjà utilisé 17 Go en à peu près 2 semaines. Je n'ai pas beaucoup de logiciels installés, donc je suis amené à croire que tous les anciens packages sont maintenus quelque part.
Pour soutenir cela, j'ai remarqué que si j'installais un package, le supprimais, puis le réinstallais, pacman décompressait et réinstallait simplement le logiciel sans avoir à le télécharger à nouveau.
Après avoir installé mon système de base, avant les logiciels supplémentaires, j'ai peut-être utilisé environ 2 Go. Depuis, je n'ai installé que Matlab, Skype, Wine et quelques autres petits programmes. Bien sûr, j'ai également installé des bibliothèques manquantes et autres, mais pas près de 15 Go.
Ai-je complètement tort ici ou Arch ne supprime-t-il jamais les anciens packages lors du téléchargement/de la mise à niveau vers de nouvelles versions ?
Si oui, comment puis-je supprimer ces packages inutilisés ?
De plus, lorsque je supprime les packages installés, j'utilise pacman -R ...
Réponse acceptée :
Non, pacman ne supprime pas les anciens packages de votre cache (/var/cache/pacman/pkg
) donc, avec le temps, il peut se remplir.
Vous pouvez adopter deux approches pour vider le cache :la force brute avec pacman -Sc
:
-c, –clean
Supprime les packages qui ne sont plus installés du cache ainsi que les bases de données de synchronisation actuellement inutilisées pour libérer de l'espace disque.
Lorsque pacman télécharge des packages, il les enregistre dans un répertoire de cache. De plus, les bases de données sont enregistrées pour chaque base de données de synchronisation à partir de laquelle vous téléchargez et ne sont pas supprimées même si elles sont supprimées du fichier de configuration pacman.conf(5). Utilisez un commutateur –clean
pour supprimer uniquement les packages qui ne sont plus installés ; utilisez-en deux pour supprimer tous les fichiers du cache. Dans les deux cas, vous aurez
une option oui ou non pour supprimer les packages et/ou les bases de données téléchargées inutilisées.
Ou, pour une approche plus nuancée, vous pouvez utiliser l'un des utilitaires livrés avec pacman-contrib, paccache
:
paccache est un utilitaire flexible de nettoyage de cache pacman, qui dispose de nombreuses
options pour aider à contrôler combien et quoi supprimer de tout répertoire
contenant des archives tar de paquets pacman.
Par défaut, paccache -r
supprimera toutes les versions sauf les trois dernières d'un paquet installé, mais vous pouvez changer ce nombre avec le -k, --keep
interrupteur. Il y a aussi un -d, --dryrun
basculez pour prévisualiser vos modifications. Vous pouvez également utiliser le -m, --move <dir>
option pour déplacer les packages dans un répertoire séparé de votre choix. Voir paccache -h
ou paccache --help
pour tous les commutateurs.
Il existe un certain nombre d'utilitaires dans le paquet pacman-contrib pour aider à la gestion des paquets, il vaut la peine de les regarder tous et de comprendre comment ils fonctionnent et peuvent rendre l'exécution d'Arch beaucoup plus facile. Vous pouvez voir la liste complète avec :
pacman -Ql pacman-contrib | awk -F"[/ ]" '//usr/bin/ {print $NF}'