Clés perdues

Récemment, et j’ignore pourquoi, certaines de mes mises à jour me retournaient des erreurs, toujours les mêmes:

W: Erreur GPG : http://ppa.launchpad.net karmic Release: Les signatures suivantes n’ont pas pu être vérifiées car la clé publique n’est pas disponible : NO_PUBKEY D2BF771175034BEC
W: Erreur GPG : http://ppa.launchpad.net karmic Release: Les signatures suivantes n’ont pas pu être vérifiées car la clé publique n’est pas disponible : NO_PUBKEY 1780999033C3C104

W: Erreur GPG : http://ppa.launchpad.net karmic Release: Les signatures suivantes n’ont pas pu être vérifiées car la clé publique n’est pas disponible : NO_PUBKEY 084AF32EC2A6B0B1

Bien sûr, cela n’empêche pas que les mises à jour se fassent et ne concerne que l’authentification de la source des dépôts. Mais quant à moi, des messages d’erreur à répétition, même sans conséquence, ça m’énerve! Alors, comment retrouver les clés publiques perdues? Toutes trois, dans mon cas, proviennent de Launchpad. Or j’ai plus d’une dizaine de sources à l’enseigne de Launchpad! Aller sur le site de chacun et récupérer ladite clé? Je ne voulais pas y passer des heures!

Il doit bien y avoir quelque chose à faire avec le numéro fourni à la fin de chaque message d’erreur pour retrouver la clé perdue! (Ce numéro identifie le dépôt pour laquelle la clé manque.) En fouillant un peu, j’ai trouvé ce qui suit.

Au préalable, vérifiez les permissions des fichiers du dossier .gnupg pour vous assurer que vous êtes bien le propriétaire du fichier pubring.gpg qui va être mis à jour. Par exemple, ici, pubring.gpg appartient à root:

gilbert@gilbert-desktop:~$ ls -al .gnupg/
total 32
drwx——   2 gilbert gilbert 4096 2010-03-28 17:31 .
drwxr-xr-x 138 gilbert gilbert 4096 2010-03-28 20:18  ..
-rw——-   1 gilbert gilbert 9364 2009-10-31 23:30 gpg.conf
-rw——-   1 root    root    2255 2010-03-27 22:55 pubring.gpg
-rw——-   1 gilbert gilbert    0 2009-10-31 23:30 secring.gpg
-rw——-   1 gilbert gilbert 1200 2009-10-31 23:35 trustdb.gpg

Pour que gilbert redevienne le propriétaire de pubring.gpg, j’ai exécuté la commande suivante:

sudo chown gilbert:gilbert pubring.gpg

Ensuite, la paire de commandes suivantes fait la job pour chaque clé à récupérer:

gpg --recv-keys «clé»
gpg --armour --export «clé» | sudo apt-key add –

«clé» doit être remplacé par le numéro rapporté dans chacun des messages d’erreur.

La première commande importe la clé publique du dépôt identifié; la deuxième l’inscrit dans le trousseau de apt.

J’exécute donc la paire de commandes ci-dessus pour chaque clé à récupérer, et voilà! Les messages d’erreur sont maintenant chose du passé.

(Il me faut remercier Philippe Gauthier pour son aide sur la liste de discussion Ubuntu Québec, qui m’a aidé à y voir plus clair.)

Lire hors ligne :

One Comment

  1. J'ai modifié les deux commandes gpg –recv-keys et gpg –armour –export, car l'élément «clé» en était absent. Je l'avais écrit entre les symboles '<' et '>', lesquels, comme chacun sait, encadrent les balises dans le langage html ce qui fait que le mot «clé» n'apparaissait pas.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*