Hai fatto alcune domande diverse qui, spero di poterti aiutare almeno su una o due.
Per elencare tutti i pacchetti installati, utilizzare dpkg
per l'output in un elenco separato da campi
dpkg -l
Per ottenere l'elenco dei pacchetti, senza campi aggiuntivi, in modo da poterlo convogliare altrove.
dpkg -l | awk '{print $2 }' # Pipe to grep after the awk, or glob from dpkg
Ad esempio, se voglio rimuovere un vecchio kernel,
apt-get purge `dpkg -l linux* | awk '{print $2}' | grep 3.0.0-12`
Il modo più semplice per passare attraverso tutte le dipendenze non necessarie è con debfoster
. Funziona in modo interattivo e passa attraverso ciò che si desidera, le loro dipendenze e può rimuovere o elencare ciò che non è una dipendenza ricorsiva.
Per elencare tutte le dipendenze ricorsive di un pacchetto specifico,
debfoster -d $PACKAGE ## PACKAGE is the specific package.
Dopo aver eseguito, debfoster
è possibile verificare anche eventuali dipendenti che un pacchetto ha,
debfoster -e $PACKAGE ## PACKAGE is the specific package.
Un ottimo modo per elencare i pacchetti "orfani" è con deborphan
. Esegui deborphan
senza opzioni ed elencherà tutti i pacchetti "orfani". Un "orfano" è un pacchetto dal quale nulla dipende e che non è stato installato in modo esplicito.
Mi piace anche pulire eventuali pacchetti "orfani", dopo una nuova installazione. Dopo aver rimosso pacchetti specifici, puoi perdere qualsiasi cosa apt-get autoremove --purge
con,
apt-get purge `deborphan`
Infine, a volte no --purge
e alla fine con il pacchetto "rimanenti", le versioni più recenti di apt-get
possono rimuoverli automaticamente. Per rimuovere tutti gli "avanzi" dai pacchetti disinstallati, esegui,
apt-get autoclean
Se non disponi della nuova versione di apt-get
, puoi sempre rimuoverli con questi comandi. Si verificano errori se non esistono file "rimanenti", sembra che Autoclean possa perdere alcuni occasionalmente, indipendentemente.
dpkg --list |grep "^rc" | cut -d " " -f 3 | xargs dpkg --purge
apt-get --dry-run remove
sembra sostanzialmente corretta. Potrebbero mancare alcuni pacchetti installati automaticamente che sono necessari solo per i pacchetti installati automaticamente che sono necessari solo per il pacchetto rimosso. È per questo che non la consideri una risposta adeguata?