Domanda Come risolvere le chiavi GPG mancanti?


Ho appena installato Ubuntu 12.04 e ho aggiunto alcuni repo e quando l'ho fatto apt-get update, Mi manca la chiave gpg.

Il seguente comando sembra non funzionare per me:

apt-get update 2> /tmp/keymissing; for key in $(grep "NO_PUBKEY" /tmp/keymissing |sed "s/.*NO_PUBKEY //"); do echo -e "\nProcessing key: $key"; gpg --keyserver subkeys.pgp.net --recv $key && sudo gpg --export --armor $key | apt-key add -; done

Come risolvere questo problema?


145
2018-04-28 22:26


origine


Sarebbe positivo se le risposte a questa domanda includessero perché questo errore si verifica in primo luogo e cosa fare per evitarlo in futuro. - Flimm
Ho risolto il mio problema usando Y-ppa-manager. Grazie ad Ashu per la soluzione!
Soluzione dettagliata con screenshot opensourceforgeeks.blogspot.in/2013/04/... - Aniket Thakur
Relazionato: askubuntu.com/q/13065/178596 - Wilf


risposte:


Mi è piaciuta questa soluzione, ho scaricato di nuovo le chiavi mancanti dal server delle chiavi di Ubuntu.

Per Ubuntu

Nel mio caso

 Reading package lists... Done  
 W: GPG error: http://ppa.launchpad.net precise 
 Release: The following signatures couldn't be verified because the public key is not available: 
 NO_PUBKEY 2EA8F35793D8809A

Ecco il comando per aggiungere la chiave mancante menzionata nel messaggio di errore.

sudo apt-key adv --keyserver ha.pool.sks-keyservers.net --recv-keys 2EA8F35793D8809A

Quindi prendo la chiave mancante 2EA8F35793D8809A e chiedi a keyserver.ubuntu.com di aggiungerlo all'elenco delle chiavi che ho in apt.

Per la menta di linux
Il tuo server chiave è leggermente diverso keyserver.linuxmint.com

sudo apt-key adv --recv-key --keyserver keyserver.linuxmint.com "missing key"

Server chiave alternativi da provare
keyserver.ubuntu.com


214
2018-05-23 09:21



askubuntu.com/a/136735/10998 Non ha funzionato per me. - nelaaro
Ci sono implicazioni per la sicurezza a fare questo? Fondamentalmente sto scaricando una chiave pubblica su http, giusto? - Ajedi32
@iamcreasy, per dimostrare alle installazioni di Ubuntu che i pacchetti che stai installando sono sicuri e privi di malware, ogni pacchetto è firmato dal server di chiavi di Ubuntu. Quindi il tuo installatore controlla se il pacchetto che stai installando proviene da una fonte attendibile e verificata. Non ho trovato alcuna documentazione valida su questo, ma questo potrebbe aiutare [gpg doc] (help.ubuntu.com/community/...) - nelaaro
Ho creato una funzione aggiungere le chiavi necessarie adkeys (){ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys "$1";} E per rimuovere chiavi duplicate o problematiche che sono usato per fare questo: grep -ril "pattern" /etc/apt | sudo xargs rm -f - SergioAraujo
io raccomando --keyserver ha.pool.sks-keyservers.net. Si tratta di un pool di server chiave ad alta disponibilità, che aumenta notevolmente le possibilità di ottenere la chiave desiderata. - Robin like the bird


C'è un software chiamato come Y PPA manager Può aiutare a correggere gli errori delle chiavi GPG.
Y PPA manager  

Installare -

sudo add-apt-repository ppa:webupd8team/y-ppa-manager  
sudo apt-get update  
sudo apt-get install y-ppa-manager    

Una volta installato, avvialo, quindi vai a advance e seleziona "importa tutte le chiavi GPG mancanti"


20
2018-05-03 11:06



È necessario aggiungere sudo a questo comando! sudo apt-get... - Fih
Questo ha funzionato anche per me e sono rimasto molto impressionato dall'interfaccia semplice e intuitiva di Y PPA Manager, è stata una bella scoperta, grazie Ashu. - CoalaWeb
Ho fatto quello che dici ma non è successo nulla. Intendo dire che non riesco a trovare l'app da nessuna parte nel menu. - Cristiana Nicolae
@CristianaNicolae Una volta installato, è possibile trovare Y PPA Manager in Applicazioni> Utilità di sistema. - Ashu
Scusa Ashu, ho controllato e ricontrollato. Non riesco ancora a vederlo lì. Sembra che sia installato da qualche parte nel sistema, ma per alcuni motivi, non mostra nessun punto del menu. - Cristiana Nicolae


Il download automatico usando apt-key adv --recv-keys potrebbe non funzionare dietro un firewall.

In questo caso, apri la pagina web di Ubuntu Key Server nel tuo browser web e cerca la stringa 0x<hexadecimal code of your missing key>.

Apri il link nel pub sezione. Salva il contenuto della chiave (da -----BEGIN PGP PUBLIC KEY BLOCK----- a -----END PGP PUBLIC KEY BLOCK-----) come un file.

Quindi esegui:

sudo apt-key add <file-with-saved-key>

Fonte: http://opensourceforgeeks.blogspot.in/2013/04/w-gpg-error-httpppalaunchpadnet-precise.html


14
2018-04-29 08:43





prima inserisci il seguente comando nel terminale

 sudo rm /var/lib/apt/lists/* -vf

quindi aggiornare il sistema inserendo il seguente comando nel terminale

 sudo apt-get update && sudo apt-get upgrade

dopo questo non ci dovrebbero essere errori e tutto dovrebbe funzionare bene.


12
2018-05-14 10:26



grazie per la risposta. Il sollution per il mio problema era preety molto più semplice: tipo sudo su prima di digitare il mio comando sopra - Fih
Mentre ti avrà aiutato, sudo su non è in alcun modo l'approccio corretto - in questo caso sudo -s avrebbe fatto ciò di cui avevi bisogno - guntbert
Penso che tu intendessi sudo rm /var/lib/apt/lists/* -rf(opzione "r" invece di "v") - Oliboy50
Usando entrambi sudo e rm è pericoloso. Usando entrambi rm e * è pericoloso. Usa i tre nello stesso comando e uno squalo ti morderà o i tuoi file. - JB.
Questo non funziona per me. - WiSaGaN


Per Ubuntu 12.04 Preciso: soluzione permanente

a questo messaggio di errore che si verifica dopo l'aggiunta di un nuovo repository e l'aggiornamento dell'elenco di repository. Ciò è dovuto a un server il cui indirizzo non è più valido. Quindi basta cambiare l'indirizzo con uno buono.

  1. Apri il file ~/.gnupg/gpg.conf con un editor di testo.

    Nel terminale: gedit ~/.gnupg/gpg.conf

  2. quindi, in questo file, trova la seguente linea in grassetto (116a riga) (che dovrebbe essere predefinita come Seguire):

    [...]
    keyserver hkp: //keys.gnupg.net
      # keyserver mailto: pgp-public-keys@keys.nl.pgp.net
      # keyserver ldap: //keyserver.pgp.com


  3. quindi aggiungi la seguente linea in grassetto, per dare finalmente il seguente risultato:

    (aggiungere # alla seconda riga come segue per commentare il vecchio indirizzo)

    [...]
    keyserver http://keyserver.ubuntu.com
    # keyserver hkp: //keys.gnupg.net
          # keyserver mailto: pgp-public-keys@keys.nl.pgp.net
          # keyserver ldap: //keyserver.pgp.com

  4. Salva il file e prova ad aggiornare di nuovo:

    Nel terminale: sudo apt-get update


10
2017-11-09 00:44





Il modo più semplice è con Y PPA MAnager

sudo add-apt-repository ppa:webupd8team/y-ppa-manager
sudo apt-get update
sudo apt-get install y-ppa-manager 

Aperto Y PPA Manager From Dash

enter image description here

Inserisci la tua password di amministratore

enter image description here

Fare doppio clic sull'opzione avanzata

enter image description here

Fare clic su Prova per importare tutte le chiavi GPG mancanti

enter image description here

Fai clic su Ok per risolvere il problema


6
2018-05-08 11:08





Basato sulla risposta nelaar:

sudo apt-get update 2>&1 1>/dev/null | sed -ne 's/.*NO_PUBKEY //p' |
while read key; do
    echo 'Processing key:' "$key"
    sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys "$key"
done

Lo script salva tutti gli errori in un file temporaneo e quindi scorre su di essi, importando le chiavi mancanti.


6
2018-04-13 08:00



Questa dovrebbe essere la soluzione accettata, molto facile e indolore da usare. Grazie. - wheeler


Innanzitutto inserisci il seguente comando nel terminale

sudo rm /var/lib/apt/lists/* -vf

quindi aggiornare il sistema inserendo il seguente comando nel terminale

sudo apt-get update && sudo apt-get upgrade

dopo questo non ci dovrebbero essere errori e tutto dovrebbe funzionare bene.


4
2018-02-18 01:34





Ho riscontrato lo stesso problema, aggiungendo un ppa (ppa:nathandyer/vocal-stable), ha rotto i miei repository. Sono stato guidato dall'autore di Web Upd8, su come posso provare a sistemarlo, ecco i suoi passi che mi hanno aiutato.

Fai il backup del tuo .gpg chiavi, nel caso in cui qualcosa vada storto.

Facciamo una cartella in cui ospiterà il nostro backup.

  • mkdir ~/gpg-backups

    Questo backup di tutti i file nel /etc/apt/trusted.gpg.d/ cartella.

  • sudo cp /etc/apt/trusted.gpg.d/*.* ~/gpg-backups/

Ora rimuoveremo tutto il .gpg chiavi.

  • sudo rm /etc/apt/trusted.gpg.d/

  • sudo cp /etc/apt/trustdb.gpg ~/gpg-backups/

  • sudo rm /etc/apt/trustdb.gpg 

in Software e aggiornamenti, nella scheda "Autenticazione", fare clic su "Ripristina impostazioni predefinite"

Installa il gestore di y-ppa per importare tutte le chiavi GPG mancanti

sudo add-apt-repository ppa:webupd8team/y-ppa-manager
sudo apt-get update
sudo apt-get install y-ppa-manager

Riferimento:


1
2018-04-22 19:14



Una riga sembra contenere un errore, deve essere sudo rm /etc/apt/trusted.gpg.d/*. Omettendo il * a EOL non è possibile, in quanto non è possibile rimuovere directory non vuote con rm quando il -r l'opzione non è specificata .-- Ah, e puoi uccidere 2 uccelli con 1 pietra sulla linea sudo mv /etc/apt/trustdb.gpg ~/gpg-backups/. Perché se tu mossa il file, non è necessario rm il file sorgente in seguito. - syntaxerror