Di recente ho installato Arch Linux e ho scoperto che sto consumando molto spazio di archiviazione in tempi relativamente brevi. Per qualsiasi motivo ho già utilizzato 17 GB in circa 2 settimane. Non ho una grande quantità di software installato, quindi sono portato a credere che tutti i vecchi pacchetti siano mantenuti da qualche parte.
Per supportare questo, ho notato che se ho installato un pacchetto, rimuoverlo e quindi reinstallarlo, pacman semplicemente decomprime e reinstalla il software senza doverlo scaricare di nuovo.
Dopo aver installato il mio sistema di base, prima del software aggiuntivo, ho utilizzato circa 2 GB o forse giù di lì. Da allora ho installato solo Matlab, Skype, Wine e alcuni altri piccoli programmi. Ovviamente ho anche installato librerie mancanti e simili, ma non per un valore di quasi 15 GB.
Mi sbaglio completamente o Arch non elimina mai i vecchi pacchetti durante il download/l'aggiornamento a nuove versioni?
In tal caso, come faccio a eliminare questi pacchetti non utilizzati?
Inoltre, quando rimuovo i pacchetti installati, utilizzo pacman -R ...
Risposta accettata:
No, pacman non rimuove i vecchi pacchetti dalla tua cache (/var/cache/pacman/pkg
) così, nel tempo, può riempirsi.
Puoi adottare due approcci per svuotare la cache:quello di forza bruta con pacman -Sc
:
-c, –clean
Rimuove i pacchetti che non sono più installati dalla cache e i database di sincronizzazione attualmente inutilizzati per liberare spazio su disco.
Quando pacman scarica i pacchetti, li salva in una directory della cache. Inoltre, i database vengono salvati per ogni DB di sincronizzazione da cui
scarichi e non vengono eliminati anche se vengono rimossi dal file di configurazione pacman.conf(5). Usa un interruttore –clean
per rimuovere solo i pacchetti che non sono più installati; usane due per rimuovere tutti i file dalla cache. In entrambi i casi, avrai
un'opzione sì o no per rimuovere i pacchetti e/o i database scaricati inutilizzati.
Oppure, per un approccio più sfumato, puoi utilizzare una delle utilità fornite con pacman-contrib, paccache
:
paccache è un'utilità flessibile di pulizia della cache di pacman, che ha numerose
opzioni per aiutare a controllare quanto e cosa viene eliminato da qualsiasi directory
contenente i tarball dei pacchetti pacman.
Per impostazione predefinita, paccache -r
rimuoverà tutte le ultime tre versioni di un pacchetto installato, ma puoi modificare questo numero con -k, --keep
interruttore. C'è anche un -d, --dryrun
passa all'anteprima delle modifiche. Puoi anche usare -m, --move <dir>
opzione per spostare i pacchetti in una directory separata a tua scelta. Vedi paccache -h
o paccache --help
per tutti gli interruttori.
Ci sono un certo numero di utilità nel pacchetto pacman-contrib per aiutare con la gestione dei pacchetti, vale la pena esaminarle tutte e capire come funzionano e possono rendere l'esecuzione di Arch molto più semplice. Puoi vedere l'elenco completo con:
pacman -Ql pacman-contrib | awk -F"[/ ]" '//usr/bin/ {print $NF}'