GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment supprimer les anciennes versions de Snap pour libérer de l'espace

J'utilisais récemment l'analyseur d'utilisation du disque pour voir si je pouvais libérer de l'espace sur mon bureau Ubuntu 18.10 lorsque j'ai remarqué le /var/lib/snapd/snaps/ Le dossier était assez volumineux.

Pendant que je cherchais comment libérer de l'espace / vider le cache des snaps /var/lib/snapd/snaps/ Dossier sans supprimer les packages snap que j'ai installés, j'ai découvert qu'après les mises à jour des packages snap, 3 versions snap sont enregistrées par défaut par le système. Cela signifie que pour chaque package Snap que j'ai installé avec au moins 2 mises à jour, j'avais 3 révisions enregistrées sur mon système qui occupaient un peu d'espace disque.

Il existe une option Snap (à partir de la version 2.34 de Snapd), appelé refresh.retain , pour définir le nombre maximum de révisions instantanées enregistrées par le système après la prochaine mise à jour, qui sont définies sur un nombre compris entre 2 et 20. peut être ajusté . Vous pouvez changer cela de la valeur par défaut 3 à 2 en utilisant :

sudo snap set system refresh.retain=2

Connexe, mais pour les packages Flatpak :comment supprimer les runtimes Flatpak inutilisés pour libérer de l'espace

Mais que se passe-t-il si vous souhaitez supprimer toutes les versions de tous les packages snap avec des mises à jour sur le système ? Il s'agit d'un script créé par Popey, Community Manager chez Ubuntu Engineering chez Canonical pour supprimer TOUTES les anciennes versions de Snaps et ne conserver que la version active actuelle (mise à jour avec LANG=en_US.UTF-8 donc ça marche avec les locales non anglaises, merci à William dans les commentaires) :

#!/bin/bash
# Removes old revisions of snaps
# CLOSE ALL SNAPS BEFORE RUNNING THIS
set -eu
LANG=en_US.UTF-8 snap list --all | awk '/disabled/{print $1, $3}' |
    while read snapname revision; do
        snap remove "$snapname" --revision="$revision"
    done

L'utilisation de ce script devrait libérer un espace disque important (selon le nombre de packages Snap installés sur votre système et si des mises à jour ont été disponibles pour eux depuis leur installation). Dans mon cas, le script est de la taille du /var/lib/snapd/snaps/ Dossier de plus de 50 %.

Mise à jour :il semble que ce script ne fonctionne qu'avec l'anglais. Pour les autres langues, vous devez remplacer /disabled/ aux commandes avec sa traduction dans votre langue.

Pour utiliser ce script, créez un fichier appelé remove-old-snaps , collez le contenu du bloc de code ci-dessus, enregistrez le fichier dans votre répertoire personnel et rendez-le exécutable avec :

chmod +x remove-old-snaps


Exécuter le script avec sudo pour supprimer les anciennes révisions de snap (assurez-vous de fermer tous les snaps en cours d'exécution avant d'exécuter le script) :

sudo ./remove-old-snaps

Voici le script qui s'exécute sur mon système et supprime les anciennes révisions du package Snap :

$ sudo ./remove-old-snaps
atom (revision 223) removed
atom (revision 222) removed
bitwarden (revision 15) removed
bitwarden (revision 16) removed
canonical-livepatch (revision 50) removed
canonical-livepatch (revision 54) removed
chromium (revision 607) removed
chromium (revision 660) removed
core (revision 6531) removed
core (revision 6405) removed
core18 (revision 719) removed
core18 (revision 731) removed
gallery-dl (revision 36) removed
gallery-dl (revision 167) removed
gimp (revision 110) removed
gimp (revision 113) removed


Ubuntu
  1. Comment supprimer Telegram ?

  2. Comment libérer de l'espace disque sur un serveur dédié

  3. Comment supprimer un paquet instantané sur Ubuntu

  4. Comment supprimer les runtimes Flatpak inutilisés pour libérer de l'espace

  5. Comment :libérer de l'espace disque en réduisant les blocs réservés

Comment libérer de l'espace dans la partition /boot sur Ubuntu Linux ?

Comment vérifier l'espace disque libre sur Linux

Comment supprimer les anciennes versions du noyau pour nettoyer le menu de démarrage ?

Comment installer/supprimer des versions PHP supplémentaires sur Plesk

Nettoyage de disque :comment libérer de l'espace avec cPanel

Comment supprimer Swap Space de Centos 7.x ?