L'altro giorno stavo aggiornando il mio sistema Ubuntu. Preferisco il modo della riga di comando per aggiornare il sistema utilizzando la combinazione di apt update e apt upgrade .
Questa volta ho riscontrato uno strano errore di aggiornamento in Ubuntu. Mi ha mostrato che ci sono pacchetti che possono essere aggiornati ma non è stato possibile aggiornare quei pacchetti a causa di un errore che diceva:
I seguenti pacchetti sono stati trattenuti :
Ecco lo screenshot dell'errore che ho riscontrato:
Come puoi vedere nell'immagine sopra, il problema sta sorgendo a causa di fwupd che è il demone del gestore degli aggiornamenti del firmware in Ubuntu e altri Linux.
Lascia che ti mostri come gestire questo errore in Ubuntu e altre distribuzioni Linux come Linux Mint, Debian, Kali Linux ecc.
Correzione dell'errore "I seguenti pacchetti sono stati trattenuti"
La correzione di questo errore è davvero semplice. Tutto quello che devi fare è usare il comando apt install con il pacchetto o i pacchetti nella domanda:
sudo apt install package_name
Se usi apt install su un pacchetto già installato, viene aggiornato. Nel mio caso, il pacchetto fwupd è stato trattenuto. Quindi, ecco cosa ho provato:
sudo apt install fwupd
Come puoi vedere nello screenshot qui sotto, suggerisce due pacchetti che verranno installati e quindi anche quei pacchetti vengono installati.
Spiegazione:motivo dell'errore "I seguenti pacchetti sono stati trattenuti" e come è stato risolto
La soluzione suggerita sopra dovrebbe risolvere il problema per te. Ma sei curioso di sapere cosa ha causato l'errore e come è stato risolto? Lascia che te lo spieghi.
Normalmente, quando esegui i comandi sudo apt update e sudo apt upgrade, aggiorna tutti i pacchetti installati alle versioni più recenti disponibili.
Tuttavia, se le dipendenze di un pacchetto installato sono state modificate in modo tale da richiedere l'installazione di nuovi pacchetti, il pacchetto installato non verrà aggiornato con l'aggiornamento del sistema e vedrai l'errore pacchetto mantenuto indietro.
Nell'esempio qui presente, quando fwupd è stato originariamente installato, tpm2-tools e tpm2-abrmd non erano installati e fwupd non dipendeva da esso. Successivamente, una versione più recente di fwupd ha richiesto l'installazione di questi nuovi pacchetti.
Questo è un meccanismo nel gestore di pacchetti APT di Debian che ti informa che un pacchetto già installato ora deve installare più nuovo pacchetto come dipendenza. Quando aggiorni manualmente e individualmente questi pacchetti, vedi quali nuovi pacchetti verranno installati e l'errore non viene più visualizzato.
Puoi anche utilizzare apt full-upgrade/apt-get dist-upgrade invece di apt install nome_pacchetto in questo caso ma non lo consiglierei. L'aggiornamento completo apt può rimuovere automaticamente i pacchetti che ritiene non necessari durante la gestione delle dipendenze. Ciò potrebbe portare a situazioni indesiderate.
Hai corretto questo errore?
Questa soluzione ti ha aiutato a sbarazzarti dell'errore "i pacchetti sono stati trattenuti"? Se sì, accolgo con favore il tuo rapido messaggio di ringraziamento nella sezione commenti. In caso contrario, fammi sapere e cercherò di aiutarti ulteriormente.