GNU/Linux >> Linux Esercitazione >  >> Linux

Come ripulire le versioni del pacchetto Snap in Linux [Suggerimento rapido]

I pacchetti Snap non sono i preferiti da tutti ma sono parte integrante dell'ecosistema Ubuntu.

Ha i suoi pro e contro. Uno degli aspetti negativi è che i pacchetti Snap sono generalmente di dimensioni maggiori e occupano molto spazio su disco.

Questo potrebbe essere un problema se stai esaurendo lo spazio su disco, specialmente sulla partizione di root.

Consentitemi di condividere un trucco accurato che potresti usare per ridurre lo spazio su disco utilizzato dai pacchetti Snap.

Ripulire le vecchie versioni del pacchetto Snap per liberare spazio su disco

I file di sistema relativi allo snap sono archiviati nella directory /var/lib/snapd. In base al numero di pacchetti Snap installati, la dimensione della directory potrebbe essere di diversi GB.

Non limitarti a credermi sulla parola. Fai una valutazione usando il comando du per controllare la dimensione della directory.

[email protected]:~$ sudo du -sh /var/lib/snapd
5.4G	/var/lib/snapd

Puoi anche utilizzare lo strumento GUI Disk Usage Analyzer per vedere l'utilizzo del disco in Ubuntu.

È molto, giusto? Potresti liberare spazio su disco qui.

In base alla progettazione, Snap mantiene almeno una versione precedente dei pacchetti che hai installato sul tuo sistema.

Puoi vedere questo comportamento usando il comando Snap:

snap list --all

Dovresti vedere lo stesso pacchetto elencato due volte con versione e numero di revisione diversi.

Per liberare spazio su disco, puoi eliminare le versioni aggiuntive del pacchetto. Come fai a sapere quale eliminare? Puoi vedere che questi pacchetti meno recenti sono etichettati come "disabilitati".

Non preoccuparti. Non devi farlo manualmente. C'è una sorta di modo automatico per farlo grazie a un'elegante sceneggiatura scritta da Alan Pope mentre lavorava nel team di Snapcraft.

Spero che tu sappia come creare ed eseguire uno script di shell bash. Fondamentalmente, crea un nuovo file chiamato clean-snap.sh e aggiungi le seguenti righe.

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

Salvalo e chiudi l'editor.

Per eseguire questo script, tienilo nella tua home directory, quindi apri il terminale in Ubuntu ed esegui questo comando:

sudo bash clean-snap.sh

Puoi vedere che inizia a rimuovere la versione precedente dei pacchetti.

Se controlli ora lo spazio su disco utilizzato da Snap, vedrai che la dimensione della directory è ora ridotta.

[email protected]:~$ sudo du -sh /var/lib/snapd
3.9G	/var/lib/snapd

Se funziona per te, potresti eseguire questo comando occasionalmente.

Come funziona questo script?

Se sei curioso di sapere cosa fa questo script, lascia che ti spieghi.

Hai già visto l'output del comando "snap list –all". Il suo output viene passato al comando awk. Awk è un potente strumento di scripting.

La parte awk "/disabled/{print $1, $3}" cerca la stringa "disabled" in ogni riga e, se viene trovata, estrae la prima e la terza colonna.

Questo output viene ulteriormente passato a una combinazione di comando while e read. Il comando Leggi ottiene il valore dello snapname della prima colonna e della terza colonna nella variabile di revisione.

Queste variabili vengono quindi utilizzate per eseguire il comando snap remove da eliminare con il nome del pacchetto span e il relativo numero di revisione.

Il ciclo while viene eseguito finché sono presenti righe con la stringa "disabilitata".

Tutto questo ha un senso facilmente se conosci un po' di scripting di shell. Se non hai familiarità con, abbiamo una serie di tutorial bash per principianti per te.

Hai recuperato i tuoi GB?

Potresti vedere alcuni forum che consigliano di impostare il valore di conservazione del pacchetto Snap su 2.

sudo snap set system refresh.retain=2

Non credo sia più necessario. Il comportamento predefinito di Snap ora è di memorizzare 2 versioni totali per qualsiasi pacchetto.

Complessivamente, se stai esaurendo lo spazio, eliminare la versione del pacchetto aggiuntivo potrebbe sicuramente uno dei modi per liberare spazio su disco su Ubuntu.

Se questo tutorial ti ha aiutato a liberare spazio, faccelo sapere nella sezione commenti.

Articolo originale


Linux
  1. Come partizionare un disco in Linux

  2. Come installare e utilizzare Snap Package Manager su Alma Linux 8

  3. Come creare un pacchetto RPM Linux

  4. Come installare XML::LibXML su Ubuntu Linux [Suggerimento rapido]

  5. Linux:come ridurre al minimo l'utilizzo dello spazio su disco?

Come utilizzare i file RAR in Ubuntu Linux [Suggerimento rapido]

Come aggiungere una directory a PATH in Linux [Suggerimento rapido]

Come pulire un po' di spazio su disco su un'istanza Linux?

Come crittografare la partizione su Linux

Come installare Snap Package Manager su Rocky Linux 8

Come installare Snap Package Manager nelle distribuzioni Linux