Je suis novice avec l'utilisation de snap, j'ai peu d'applications installées sur mon système, quelque chose que je remarque lorsque j'exécute la commande, df -h
j'ai trouvé différentes versions montées du même snap
/dev/loop0 143M 143M 0 100% /var/lib/snapd/snap/gravit-designer/7
/dev/loop1 82M 82M 0 100% /var/lib/snapd/snap/core/4110
/dev/loop7 198M 198M 0 100% /var/lib/snapd/snap/polarr/3
/dev/loop2 82M 82M 0 100% /var/lib/snapd/snap/core/4206
/dev/loop3 143M 143M 0 100% /var/lib/snapd/snap/gravit-designer/6
/dev/loop10 137M 137M 0 100% /var/lib/snapd/snap/gravit-designer/5
ma question est pourquoi ils y restent, le seul moyen que j'ai trouvé pour supprimer l'ancien est de supprimer et de réinstaller le composant logiciel enfichable, il y a quelque chose comme prune
maintenir mon système?
Réponses:
Voici un court script qui supprimera toutes les anciennes versions de snaps. Cela ne conservera que la version active actuelle, ce qui devrait vous permettre de récupérer de l'espace disque:
la source
/var/lib/snapd/snaps/
avant et après l'exécution de ce script. Devrait avoir libéré de l'espace - si vraiment supprimé quelques boutons-pression. Il devrait afficher des messages commesnap-name removed
, par exemplegtk-common-themes removed
./var/lib/snapd/cache
donc vous devez aussi les supprimer pour libérer de l'espace. Vous pouvez supprimer le cache en toute sécurité avecsudo rm /var/lib/snapd/cache/*
À partir de snap 2.34 et versions ultérieures, vous pouvez définir le nombre maximal de révisions d'un snap stockées par le système en définissant l' option refresh.retain .
La valeur refresh.retain ne peut être qu'un nombre compris entre 2 et 20 et a une valeur par défaut de 3.
la source
refresh.retain=3
est bon pour la RAM de 4 Go ou en a besoin de plus?Une version du script d'une autre réponse , comme une ligne, sans la
awk
dépendance:Cela nécessite probablement
bash
ou un shell compatible avec la[[
construction.la source
sudo -i
session peut être nécessaire, ousnap remove
peut être exécutée avecsudo
.export LC_ALL=en_US.UTF-8
au préalable devrait garantir cela. (Il peut également être défini avant la commande snap, mais je ne sais pas si les suppressions ultérieures devront également être traduites)LANG=c
avant que toute la ligne fonctionne bien sur les consoles allemandesLANG=C
(ouLC_ALL=C
) pour les paramètres régionaux par défaut. Les minusculesc
peuvent fonctionner en raison deC
leur valeur par défaut pour un environnement local non valide. (LC_MESSAGES
est probablement le paramètre minimal) (je ne veux pas modifier le message pour un paramètre dont de nombreux utilisateurs n'ont pas besoin ...) (Vous comparez les erreursLANG=c locale
avecLANG=C locale
)Les documents snapd sur les versions indiquent que les révisions obsolètes doivent être supprimées automatiquement afin que pas plus que les deux dernières révisions soient installées. Cependant, j'ai également vu plus de deux versions de mes snaps installés.
Vous pouvez lister toutes les révisions avec
snap list --all
pour voir quelque chose comme:Vous pouvez supprimer des révisions individuelles avec
snap remove spotify --revision=5
.Ceci est sûr même pour les révisions désactivées de
core
et d'autres dépendances, etsnap remove
avec un explicite--revision=...
vous empêche même de supprimer les non-disabled
snaps.la source