Comment corriger l'erreur GPG "NO_PUBKEY"?

J'ai ajouté quelques dépôts supplémentaires avec le programme Sources du logiciel. Mais lorsque je recharge la base de données des packages, j'obtiens une erreur comme celle-ci:

W: Erreur GPG: http://ppa.launchpad.net trusty 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. Existe-t-il un moyen de le faire sans utiliser de terminal?

Exécutez 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 ex. 8BAF9A6F.

Puis mettre à jour

sudo apt-get update

AUTRE MÉTHODE:

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 en utilisant 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 faites pas cela à moins que vous ne soyez sûr que la clé est vraiment la clé du distributeur de paquets.

De loin le moyen le plus simple de gérer cela maintenant est avec Y-PPA-Manager (qui intègre maintenant le launchpad-getkeys script 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 updatesudo apt-get install y-ppa-manager
  3. Exécutez y-ppa-manager (c'est-à-dire type y-ppa-manager appuyez ensuite sur la touche Entrée).

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

  5. Dans la liste des tâches avancées, sélectionnez & quot; Essayez d'importer toutes les clés GPG manquantes" et cliquez sur OK.

    Tu as fini! 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.

Cela se produit lorsque vous ne disposez pas d'une 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 ça:

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.

Vous devez obtenir et importer la clé.

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

image 1

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

image 2

Enregistrez la page, c'est votre fichier clé.


Il est maintenant temps de l'importer:

  • Applications > Software Center,
  • Edit > Software sources...,
  • Entrez votre mot de passe,
  • Aller à la Authentication tabulez et cliquez sur Import Key File..., enfin
  • Sélectionnez le fichier de clé enregistré et cliquez sur OK.

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

Vérifiez s'il y a des clés inutilisées dans ce fichier à partir de ppa que vous n'utilisez plus. Si tous sont utilisés, 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 de sécurité et n'est pas recommandé comme tu es "saper l'ensemble du concept de sécurité car ce n'est pas un moyen sécurisé de recevoir des clés pour diverses raisons (comme: hkp est un protocole en texte brut, des identifiants courts et même longs peuvent être falsifiés, ...)". http://ubuntuforums.org/showthread.php?t=2195579

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

gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv 1ABC2D34EF56GH78gpg --export --armor 1ABC2D34EF56GH78 | sudo apt-key add -

Il y a un petit script emballé dans le PPA WebUpd8 que je vais lier en un seul .téléchargement deb pour ne pas avoir à ajouter l'intégralité du PPA - qui importe automatiquement toutes les clés GPG manquantes.

Télécharger et installer Tableau de bord-getkeys (ignorez le ~natty dans sa version, il fonctionne avec toutes les versions d'Ubuntu de Karmique à Onirique). 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 ce pour plus d'informations

J'ai rencontré le même problème lors de l'installation d'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 fixé le NO_PUBKEY problème, 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 <release@heroku.com>

Pour le réparer, 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

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

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

Un tel texte est par example affiché sur http://deb.opera.com. Copiez le passage, collez-le dans un fichier vide que vous créez sur votre bureau. Il en résulte le fichier clé.

Continuez ensuite avec l'importation de la clé:

  • >Centre de Logiciels d'Applications
  • >Modifier les sources de logiciels..., entrez le mot de passe
  • Onglet Authentification, cliquez sur ' Importer le fichier de clé...'
  • Sélectionnez le fichier de clé enregistré et cliquez sur "Ok".

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

Assurez-vous que vous avez apt-transport-https installer:

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 

Installer 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-verified-because-the/td-p/4645756

Bien! J'ai enfin trouvé le chemin!

J'ai testé toutes les méthodes pour réparer 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.dsudo rm -R *sudo apt-get update

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

exécutez sudo apt-get update à nouveau et finalement tout fonctionne très bien maintenant! Tanks!

Source Basée : post #17 sur https://bugs.launchpad.net/ubuntu/+source/apt / + bug / 1263540

Vous pouvez vérifier ceci DONC thread pour la solution. Lien vers site connexe

Connexes: updates - How to fix missing GPG keys? - Ask Ubuntu

“Un moyen”? Curieux de savoir ce que vous vouliez dire par là.

@MichaelScheper ’ Y a-t-il un moyen de ne pas ouvrir un terminal?’=~‘Y a-t-il un moyen de le faire sans terminal?’

@Wilf: Oh! Je ne veux pas pinailler la grammaire, mais ça m’a dérouté. D’après la référence que je viens de vérifier, “signifie” est un nom singulier, et celui que vous vouliez dire. MEANS | meaning, definition in Cambridge English Dictionary Mais si vous et Agmentor utilisez une variante de l’anglais où la grammaire de la question est correcte, j’aimerais y voir une référence, juste parce que ce genre de chose m’intéresse. :relaxed:

Pour les utilisateurs qui souhaitent supprimer un référentiel, voir cette question *(cela devrait rendre ce commentaire plus sur le sujet, bien que je suppose que l’évaluation de la grammaire est aussi bien ici :)) * @MichaelScheper C’est une façon inhabituelle de le dire, mais j’ai appris dans le cadre de l’anglais au Royaume-Uni (cela signifie probablement que mon anglais est pire que si on me l’enseignait correctement [avec des noms, etc.]! xD). La citation ["un moyen de mettre fin`] (meaning - What does "It is a means to an end, not an end in itself" mean? - English Language & Usage Stack Exchange) me vient à l’esprit, bien que le problème soit le bit de fin, mais c’est là que means signifie une méthode ou un moyen.

@Wilf: Le dictionnaire auquel j’ai lié était un dictionnaire britannique, et “a means to end” illustre entièrement mon point de vue, à savoir que “means” est singulier. Par conséquent, “méchant” n’est pas le bon mot. Mais vous avez raison là où vous dites que cela est allé loin du sujet, alors je vais me retirer de la discussion et vous laisser le soin de décider de modifier ou non la question. Acclamation.

Voici une réponse fiable à cette question: apt - How do I fix the GPG error "NO_PUBKEY"? - Ask Ubuntu