Come rimuovere i pacchetti indesiderati dalla cache su Arch Linux
In questa guida su Come rimuovere i pacchetti memorizzati nella cache non necessari da Arch utilizzando Pacman, ti mostrerò i passaggi eseguiti per rimuovere i pacchetti orfani che sono comunemente memorizzati nella cache su Arch. Il Pacman Il gestore di pacchetti è una delle principali caratteristiche distintive di Arch Linux, ha il potere di combinare un semplice pacchetto binario e un sistema di creazione di pacchetti simile a Gentoo. Pacman semplifica la gestione sia dei pacchetti originali di Arch sia dei pacchetti di compilazione di altri utenti.
Mentre continui a scaricare e installare pacchetti su Arch con Pacman, di solito ci sono avanzi che tendono a consumare più spazio su disco man mano che i dati crescono. È vantaggioso quando si dispone di una larghezza di banda lenta e si continua a reinstallare i pacchetti. Ma se disponi di una buona larghezza di banda e desideri cancellare i pacchetti memorizzati nella cache, puoi utilizzare questa guida come riferimento.
Leggi anche tu : Come elencare i pacchetti installati per data su Linux
Rimuovi i pacchetti memorizzati nella cache su Arch
La directory di archiviazione per i pacchetti pacman scaricati è /var/cache/pacman/pacchetto/. I pacchetti vecchi e disinstallati non vengono rimossi automaticamente e devi pulirli deliberatamente manualmente. Puoi scegliere di cancellare tutti i pacchetti memorizzati nella cache o quelli specifici.
Rimuovi tutti i pacchetti memorizzati nella cache che non sono attualmente installati
Per rimuovere tutti i pacchetti dalla cache che non sono attualmente installati sul tuo sistema, usa il comando:
$ sudo pacman -Sc
La spiegazione delle opzioni utilizzate è la seguente:
-c, –cascade: Rimuove tutti i pacchetti di destinazione così come tutti i pacchetti che dipendono da uno o più pacchetti di destinazione. Questa operazione è ricorsiva e dovrebbe essere usata con cautela in quanto può rimuovere molti pacchetti potenzialmente necessari.
-S, –sync : Sincronizza i pacchetti
Si consiglia di eseguire questo comando quando si è sicuri che le versioni precedenti del pacchetto non siano più necessarie, ad esempio per ulteriori downgrade. La versione di tutti i pacchetti attualmente installati sul sistema rimarrà invariata.
Rimuovi tutti i pacchetti memorizzati nella cache svuotando la cartella della cache
È possibile eliminare tutto nella directory /var/cache/pacman/pkg/ utilizzando il comando seguente:
$ sudo pacman -Scc
Cache directory: /var/cache/pacman/pkg/
:: Do you want to remove ALL files from cache? [y/N] y
removing all files from cache...
Database directory: /var/lib/pacman/
:: Do you want to remove unused repositories? [Y/n] y
removing unused sync repositories...
Ciò impedisce anche di reinstallare un pacchetto direttamente dalla cartella della cache, se necessario, richiedendo quindi un nuovo download. Dovrebbe essere evitato a meno che non vi sia un’immediata necessità di spazio su disco.
Cancella tutte le versioni memorizzate nella cache di ogni pacchetto utilizzando paccache
Il seguente comando eliminerà tutte le versioni memorizzate nella cache di ciascun pacchetto, installate o meno, ad eccezione delle 3 più recenti, per impostazione predefinita:
# sudo paccache -r
==> no candidate packages found for pruning
I comandi operativi disponibili sono:
-d, –dryrun : esegue una prova, trovando solo i pacchetti candidati.
-m, –sposta
-r, –remove : Rimuove i pacchetti candidati.
Le opzioni che possono essere utilizzate con i comandi operativi di cui sopra includono:
-f, –forza : applica la forza alle operazioni mv(1) e rm(1).
–io, – ignora <pacchetti> : ignora “pkgs” separati da virgola.
-k, –hold
-q, –quiete : minimizza l’output
-u, –disinstallato :target pacchetti disinstallati.
Ad esempio, per mantenere 10 pacchetti recenti, dovresti usare:
# paccache -rvk 10
Per rimuovere tutte le versioni memorizzate nella cache dei pacchetti disinstallati, eseguire di nuovo paccache con:
# paccache -ruk0
Poiché viene utilizzato 0 al posto del numero di pacchetti da conservare, tutti i pacchetti disinstallati verranno rimossi.
Pulisci automaticamente la cache dopo ogni transazione di pacman
Puoi anche creare hook pacman che vengono eseguiti automaticamente dopo ogni transazione pacman per svuotare la cache di pacman. Gli hook pre e post transazione di Pacman vengono caricati da /usr/share/libalpm/hooks/ direttore. Di seguito è mostrato un esempio di script post-hook:
[Trigger]
Operation = Upgrade
Operation = Install
Operation = Remove
Type = Package
Target = *
[Action]
Description = Cleaning pacman cache...
When = PostTransaction
Exec = /usr/bin/paccache -r
Ancora uno
[Trigger]
Operation = Remove
Operation = Install
Operation = Upgrade
Type = Package
Target = *
[Action]
Description = Keep the last cache and the currently installed.
When = PostTransaction
Exec = /usr/bin/paccache -rvk10
Entrambi sono stati definiti come hook PostTransaction, nel senso che vengono eseguiti dopo ogni transazione pacman riuscita. Le opzioni del comando Exec utilizzate sono quelle mostrate in precedenza, quindi dovrebbe essere facile per te scriverne di tue.