Come rimuovere pacchetti obsoleti dopo il mancato aggiornamento della versione tramite do-release-upgrade su Ubuntu?

A volte, quando aggiorno un sistema tramite do-release-upgrade , il processo di aggiornamento fallisce e lo script mi ​​dice di completare il processo manualmente tramite dpkg --configure -a . Questo non è un problema serio: dopo aver risolto manualmente il problema delle dipendenze e il processo di aggiornamento finale tutto funziona correttamente.

Ma lo script do-release-upgrade ha un processo di pulizia dopo aver terminato l’aggiornamento:

 Remove obsolete packages? XXX packages are going to be removed. Continue [yN] Details [d]y 

che rimuove alcuni pacchetti obsoleti dalla vecchia versione del sistema.

Sembra che questo processo non venga eseguito quando l’aggiornamento automatico fallisce e termino l’aggiornamento manualmente, quindi i pacchetti obsoleti della vecchia versione rimangono installati nel sistema.

Come posso eseguire manualmente il processo “Rimuovi pacchetti obsoleti” dopo aver completato manualmente l’aggiornamento?

Prova questo:

Apri un terminale,

Premi Ctrl + Alt + T

Eseguirlo:

 sudo -i apt-get update apt-get autoremove apt-get clean UNUSCONF=$(dpkg -l|grep "^rc"|awk '{print $2}') apt-get remove --purge $UNUSCONF NEWKERNEL=$(uname -r|sed 's/-*[az]//g'|sed 's/-386//g') ADDKERNEL="linux-(image|headers|ubuntu-modules|restricted-modules)" METAKERNEL="linux-(image|headers|restricted-modules)-(generic|i386|server|common|rt|xen)" UNUSKERNELS=$(dpkg -l|awk '{print $2}'|grep -E $ADDKERNEL |grep -vE $METAKERNEL|grep -v $NEWKERNEL) apt-get remove --purge $UNUSKERNELS update-grub 

Credo che il “Rimuovi pacchetti obsoleti” in realtà esegua solo un sudo apt-get autoremove . Provalo, vedi se aiuta.

Trovo che questa risposta di una domanda non correlata possa fornire un’utilità e un comando che sembra rimuovere più elementi inutilizzati:

  1. Installa il pacchetto “deborphan”.
  2. sudo deborphan | xargs sudo apt-get -y remove --purge