Come prevenire apt-get / aptitude mantenendo una cache


14

Ho installato Apt-Cacher NG per fornire una cache di pacchetti per diverse macchine. Pertanto non vedo alcun motivo per avere aptitude / apt-get che mantiene la propria (seconda) cache /var/cache/apt/archives. Mi rendo conto di poter svuotare questa cache con sudo apt-get clean, ma esiste un modo per configurare apt-get per pulire automaticamente la cache al termine dell'installazione?


Sto cercando di fare la stessa cosa che uso molti LXC per sperimentare e mantenere pulito il mio personal computer. Uno di questi LXC è il mio apt-cacher-ng, ma ora vorrei impedire a tutti gli altri casi (incluso quello "reale") di tenere traccia degli archivi.
jgomo3,

Risposte:


9

Secondo la documentazione è possibile aggiungere un file di configurazione al /etc/apt/apt.conf.d/nome no-cachecontenente Dir::Cache "";e Dir::Cache::archives "";secondo il manuale di apt.conf. C'è una segnalazione di bug che solleva problemi con questo metodo e non lo consiglio.

C'è un metodo rimanente secondo questo tutorial:

echo 'DPkg::Post-Invoke {"/bin/rm -f /var/cache/apt/archives/*.deb || true";};' | sudo tee /etc/apt/apt.conf.d/clean

Questo eseguirà un rmcomando poco prima della chiusura di apt.


Ho trovato solo l'impostazione del percorso cache per un percorso vuoto ha dato un errore durante l'esecuzione di apt: Archives directory archives/partial is missing. - Acquire (2: No such file or directory). La soluzione a questo errore era anche impostare Dir::Cache::archivesun percorso vuoto. Ho aggiornato la tua risposta per includerla (supponendo che qualcuno con un rappresentante più elevato approvi la modifica).
Blair,

1
In realtà, impostarli su percorsi vuoti non funziona. L'ho fatto, quindi ho installato e rimosso un pacchetto. Dopo averlo installato di nuovo, ho Need to get 0 B/21.9 MB of archivesindicato la presenza di una versione memorizzata nella cache. Guardandosi attorno si scopre che erano memorizzati nella cache del filesystem ... non esattamente quello che volevo! A meno che non stiamo entrambi leggendo la manpage per apt.conf in modo errato, o la manpage è sbagliata o c'è un bug. Penso che seguirò il secondo metodo.
Blair,

4
Ho segnalato il Dir::Cache::Archive "";bug su bugs.launchpad.net/apt/+bug/937951 . Dopo averlo impostato, non eseguireapt-get clean in quanto rimuoverà tutti i file nella directory principale ( /).
Lekensteyn,

2
Secondo il bug, Dir::Cache::Archiveè la configurazione errata var; questo dovrebbe essere Dir::Cache::{src,}pkgcache.
Jeremy Kerr il

1
Questo bug è stato corretto in una versione successiva?
sep332

-2

Penso che quello che stai cercando sia:

/etc/apt/apt.conf.d$ cat 04autoclean
APT::Clean-Installed "true";
/etc/apt/apt.conf.d$ 

2
Questo comando non cambia nulla, mostra solo il contenuto di 04autoclean(quando eseguito nella /etc/apt/apt.conf.ddirectory). Stai dicendo che Blair dovrebbe cambiare il contenuto in 04autocleanmodo che APT::Clean-Installedsia impostato su "true"?
Eliah Kagan,

1
Questo controllerà solo come apt-get autocleansi comporta. Da apt-get (8): "L'opzione di configurazione APT :: Clean-Installed impedirà la cancellazione dei pacchetti installati se è disattivata."
azzurrato il
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.