web-dev-qa-db-fra.com

Comment corriger l'erreur GPG "NO_PUBKEY"?

J'ai ajouté des référentiels supplémentaires avec le programme Sources de logiciels. Mais lorsque je recharge la base de données de paquets, j'obtiens une erreur semblable à celle-ci:

W: erreur GPG: http://ppa.launchpad.net fidèle InRelease: les signatures suivantes n'ont pas pu être vérifiées car la clé publique n'est pas disponible: NO_PUBKEY 8BAF9A6F

Je sais que je peux le réparer en utilisant apt-key dans un terminal, selon la documentation officielle d'Ubuntu. Mais j'aurais aimé le faire graphiquement. Y a-t-il un moyen de faire cela sans utiliser de terminal?

347
Agmenor

Le moyen le plus simple, et de loin, de gérer cela maintenant est avec Y-PPA-Manager (qui intègre désormais le script launchpad-getkeys avec une interface graphique).

  1. Pour l'installer, ajoutez d'abord le référentiel webupd8 pour ce programme:

    Sudo add-apt-repository ppa:webupd8team/y-ppa-manager
    
  2. Mettez à jour votre liste de logiciels et installez Y-PPA-Manager:

    Sudo apt-get update
    Sudo apt-get install y-ppa-manager
    
  3. Exécutez y-ppa-manager (tapez y-ppa-manager puis appuyez sur la touche Entrée).

  4. Lorsque la fenêtre principale de y-ppa-manager apparaît, cliquez sur "Avancé".

  5. Dans la liste des tâches avancées, sélectionnez "Essayer d'importer toutes les clés GPG manquantes", puis cliquez sur OK.

    Vous avez terminé! Comme le dit la boîte de dialogue d'avertissement lorsque vous démarrez l'opération, cela peut prendre un certain temps (environ 2 minutes pour moi) en fonction du nombre de PPA que vous avez et de la vitesse de votre connexion.

206
monotasker

Exécuter les commandes suivantes dans le terminal

Sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys <PUBKEY>

<PUBKEY> est votre clé publique manquante pour le référentiel, par exemple. 8BAF9A6F.

Puis mettre à jour

Sudo apt-get update

MÉTHODE ALTERNATIVE:

Sudo gpg --keyserver pgpkeys.mit.edu --recv-key  <PUBKEY>
Sudo gpg -a --export <PUBKEY> | Sudo apt-key add -
Sudo apt-get update

Notez que lorsque vous importez une clé comme celle-ci à l'aide de apt-key, vous indiquez au système que vous faites confiance à la clé que vous importez pour signer le logiciel que votre système utilisera. Ne le faites pas sauf si vous êtes sûr que la clé est vraiment la clé du distributeur de paquets.

511
karthick87

Cela se produit lorsque vous ne possédez pas de clé publique appropriée pour un référentiel.

Pour résoudre ce problème, utilisez cette commande:

gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv 9BDB3D89CE49EC21

qui récupère la clé du serveur de clés Ubuntu. Et puis ceci:

gpg --export --armor 9BDB3D89CE49EC21 | Sudo apt-key add -

ce qui ajoute la clé aux clés de confiance apt.

La solution peut être trouvée ici & ici & ici .

43
Pedram

Vous devez obtenir et importer la clé.

Pour obtenir la clé d'un PPA, visitez la page Launchpad du PPA. Sur chaque page du PPA du Launchpad, vous trouverez ce lien (2), après avoir cliqué sur 'Détails techniques sur ce PPA' (1):

image 1

Suivez-le et cliquez sur le lien ID clé (3):

image 2

Enregistrez la page, ceci est votre fichier de clé.


Il est maintenant temps de l'importer:

  • Applications > Software Center,
  • Edit > Software sources...,
  • Tapez votre mot de passe,
  • Allez à l'onglet Authenticationet cliquez sur Import Key File..., enfin
  • Sélectionnez le fichier de clé enregistré et cliquez sur OKname__.
34
htorque

apt ne peut gérer que 40 clés dans /etc/apt/trusted.gpg.d. 41 clés et vous obtiendrez l'erreur GPG "pas de clé publique trouvée" même si vous suivez toutes les étapes pour ajouter la ou les clés manquantes.

Vérifiez si ce fichier contient des clés inutilisées provenant de ppa (s) que vous n'utilisez plus. Si tous sont en cours d'utilisation, envisagez de supprimer certains ppa ainsi que les fichiers de clés correspondants dans /etc/apt/trusted.gpg.d.

En outre, en utilisant

Sudo apt-key adv

Est considéré comme un risque pour la sécurité et n'est pas recommandé , car vous "minez le concept de sécurité dans son ensemble car il ne s'agit pas d'un moyen sûr de recevoir les clés pour diverses raisons (comme: hkp est un protocole de texte en clair, des identifiants de clé courts et même longs peuvent être forgés,…) ". http://ubuntuforums.org/showthread.php?t=2195579

Je crois que la bonne façon d’ajouter des clés manquantes (par exemple 1ABC2D34EF56GH78) est

gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv 1ABC2D34EF56GH78
gpg --export --armor 1ABC2D34EF56GH78 | Sudo apt-key add -
12
mchid

Il y a un minuscule script fourni dans le PPA WebUpd8 que je vais lier en un seul téléchargement .deb afin que vous n'ayez pas à ajouter le PPA complet - qui importe automatiquement toutes les clés GPG manquantes.

Téléchargez et installez Launchpad-getkeys (ignorez la ~ natty dans sa version, cela fonctionne avec toutes les versions d'Ubuntu de Karmic à Oneiric). Une fois installé, ouvrez un terminal et tapez:

Sudo launchpad-getkeys

Si vous êtes derrière un proxy, les choses sont un peu plus compliquées alors voyez this pour plus d'informations

9
Alin Andrei

J'ai rencontré le même problème lors de l'installation de Heroku. Le lien ci-dessous a résolu mon problème -

http://naveenubuntu.blogspot.in/2011/08/fixing-gpg-keys-in-ubuntu.html

Après avoir résolu le problème NO_PUBKEY, le problème ci-dessous est resté

W: GPG error: xhttp://toolbelt.heroku.com ./ Release: The following signatures were invalid: BADSIG C927EBE00F1B0520 Heroku Release Engineering <[email protected]>

Pour résoudre ce problème, j’ai exécuté les commandes suivantes dans le terminal:

Sudo -i  
apt-get clean  
cd /var/lib/apt  
mv lists lists.old  
mkdir -p lists/partial  
apt-get clean  
apt-get update  

Source - Lien pour le résoudre

5
dennyac

Assurez-vous d'avoir installé apt-transport-https:

dpkg -s apt-transport-https > /dev/null || bash -c "Sudo apt-get update; 
Sudo apt-get install apt-transport-https -y" 

Ajouter un référentiel:

curl https://repo.skype.com/data/SKYPE-GPG-KEY | Sudo apt-key add - 
echo "deb [Arch=AMD64] https://repo.skype.com/deb stable main" | Sudo tee /etc/apt/sources.list.d/skype-stable.list 

Installez Skype pour Linux:

Sudo apt-get update 
Sudo apt-get install skypeforlinux -y

Source: https://community.skype.com/t5/Linux/Skype-for-Linux-Beta-signatures-couldn-t-be-ver-be-verified-because-the/td-p/4645756

4
Eduardo Cuomo

Plus généralement, la méthode suivante devrait fonctionner pour chaque référentiel. Tout d’abord, recherchez, avec l’aide éventuelle d’un moteur de recherche, un texte ressemblant à ce qui suit sur le site Web du fournisseur de programme:

-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.4.1 (GNU/Linux)
[...]
-----END PGP PUBLIC KEY BLOCK-----

Un tel texte est par exemple affiché sur http://deb.opera.com . Copiez le passage, collez-le dans un fichier vide que vous avez créé sur votre bureau. Cela se traduit par le fichier de clé.

Continuez ensuite avec l'importation de la clé:

  • Applications> Centre de logiciels
  • Édition> Sources de logiciels ..., entrez le mot de passe
  • Authentification, cliquez sur 'Import Key File ...'
  • Sélectionnez le fichier de clé enregistré et cliquez sur 'Ok'.

Vous pouvez maintenant supprimer le fichier de clé créé précédemment.

3
Agmenor

Bien! J'ai finalement trouvé le chemin!

J'ai testé toutes les méthodes pour corriger l'erreur GPG NO_PUBKEY et rien ne fonctionne pour moi.

J'ai supprimé tout le contenu du dossier /etc/apt/trusted.gpg.d

cd /etc/apt/trusted.gpg.d
Sudo rm -R *
Sudo apt-get update

Et j'utilise la méthode Y-PPA-Manager parce que je suis trop paresseux pour créer manuellement toutes les clés publiques (trop): http: //www.unixmen.com/fix-w-gpg-error-no_pubkey-ubuntu/

lancez Sudo apt-get update à nouveau et tout fonctionne enfin très bien maintenant! Réservoirs!

source: message n ° 17 sur https://bugs.launchpad.net/ubuntu/+source/apt/+bug/126354

3
NeurOSick

J'ai eu le même problème avec le client Updater de DynDNS.

Il s'avère que c'était juste les clés expirées.

La réinstallation du logiciel (en téléchargeant un nouveau .deb à partir du site Web, puis en utilisant le Centre logiciel pour le réinstaller) a résolu le problème.

Message d'erreur pour référence:

W: GPG error: http://cdn.dyn.com stable/ Release: The following signatures were invalid: KEYEXPIRED 141943.......
0
Cranky