| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente |
| apt-key [Le 28/02/2018, 11:38] – trad partie en anglais L'Africain | apt-key [Le 26/06/2025, 22:12] (Version actuelle) – wget no sillent 89.86.155.3 |
|---|
| {{tag>dépôts }} | {{tag>dépôts }} |
| ---- | ---- |
| ====== Gestion des trousseaux de clés : régler l'erreur « GPG "AUCUNE_CLÉ_PUBLIQUE" » ====== | ====== Gestion des trousseaux de clés : régler l'erreur « GPG "NO_PUBKEY" » ====== |
| |
| ===== Méthode générale ===== | ===== Méthode générale ===== |
| | |
| | <note warning>Attention apt-key est obsolète utilisez plutôt</note> |
| | |
| | |
| | <code> |
| | wget -O- "http://keyserver.ubuntu.com/pks/lookup?op=get&search=0xvotre_n°_de_clé" | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/nondudepot.gpg > /dev/null |
| | </code> |
| |
| Lorsque vous ajoutez des [[:ppa|dépôts ppa]] à votre distribution afin de bénéficier de version supérieure de certains logiciels, vous vous trouvez sûrement souvent confronté à un message d'erreur du genre : | Lorsque vous ajoutez des [[:ppa|dépôts ppa]] à votre distribution afin de bénéficier de version supérieure de certains logiciels, vous vous trouvez sûrement souvent confronté à un message d'erreur du genre : |
| <file>W: GPG error: http://ppa.launchpad.net xenial Release: The following signatures couldn't be verified because the public key is not available: AUCUNE_CLÉ_PUBLIQUE votre_n°_de_clé</file> | <file>W: GPG error: http://ppa.launchpad.net xenial Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY votre_n°_de_clé</file> |
| |
| Pour pallier ce problème il vous suffit de saisir dans un [[:terminal]] la [[:commande_shell|commande]] suivante : | Pour pallier ce problème il vous suffit de saisir dans un [[:terminal]] la [[:commande_shell|commande]] suivante : |
| |
| <code bash>sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com votre_n°_de_clé</code> | <code bash>sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com votre_n°_de_clé</code> |
| ou bien : | |
| <code bash>sudo apt-get install add-apt-key && sudo add-apt-key votre_n°_de_clé</code> | |
| | <note warning>Attention apt-key est obsolète utilisez plutôt</note> |
| | |
| | |
| | <code bash> |
| | sudo apt-get -y purge add-apt-key |
| | sudo nano /usr/bin/add-apt-key |
| | </code> |
| | |
| | <code bash> |
| | #!/bin/bash |
| | sudo rm -f "/etc/apt/trusted.gpg.d/\$1.gpg" |
| | wget -O- "http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x"$1"" | gpg --dearmor | sudo tee "/etc/apt/trusted.gpg.d/\$1.gpg" > /dev/null |
| | sudo apt-get update |
| | </code> |
| | |
| | <code bash> |
| | sudo chmod +x /usr/bin/add-apt-key |
| | sudo add-apt-key votre_n°_de_clé |
| | </code> |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | <note tip>Encore plus simple ! Cette ligne de commande régénère les clés GPG manquantes |
| | <code>sudo apt-get update 2>&1 | sed -ne 's?^.*NO_PUBKEY ??p' | xargs -r -- sudo add-apt-key</code></note> |
| |
| ===== Port HKP filtré par un firewall ==== | ===== Port HKP filtré par un firewall ==== |
| Celui-ci contient notamment un logiciel très utile appelé **launchpad-getkeys**. \\ Une fois installé et lancé en ligne de commandes : | Celui-ci contient notamment un logiciel très utile appelé **launchpad-getkeys**. \\ Une fois installé et lancé en ligne de commandes : |
| * il récupère tout seul toutes les clés d'authentification possibles, évitant du coup toutes les manipulations décrites plus haut. | * il récupère tout seul toutes les clés d'authentification possibles, évitant du coup toutes les manipulations décrites plus haut. |
| * Il répare donc les erreurs de type « missing GPG » de façon très simple. | * Il répare donc les erreurs de type « missing GPG » de façon très simple. |
| |
| FIXME contient d'autres logiciels, dont **[[yad_yet_another_dialog|Yad (Yet Another Dialog)]]**, [[xclip|XClip]] et [[ppa#PPA-Purge : désinstaller un paquet automatiquement et proprement|PPA-Purge : désinstaller un paquet automatiquement et proprement]] qui sont **des dépendances de Launchpad-getkeys**. | FIXME contient d'autres logiciels, dont **[[yad_yet_another_dialog|Yad (Yet Another Dialog)]]**, [[xclip|XClip]] et [[ppa#PPA-Purge : désinstaller un paquet automatiquement et proprement|PPA-Purge : désinstaller un paquet automatiquement et proprement]] qui sont **des dépendances de Launchpad-getkeys**. |
| Pour le faire de de façon graphique, procéder comme suit: | Pour le faire de de façon graphique, procéder comme suit: |
| * Sur la page web de l'archive, donc pour l' exemple [[https://launchpad.net/~nilarimogard/+archive/webupd8|dépôt de launchpad-getkeys]], cliquer sur //Technical details about this PPA//. | * Sur la page web de l'archive, donc pour l' exemple [[https://launchpad.net/~nilarimogard/+archive/webupd8|dépôt de launchpad-getkeys]], cliquer sur //Technical details about this PPA//. |
| * Un espace de texte est déroulé, cliquer sur le code inscrit sous //Signing key//. | * Un espace de texte est déroulé, cliquer sur le code inscrit sous //Signing key//. |
| * Dans la nouvelle page, faire un clic droit sur l'[[wpfr>hyperlien]] pour pouvoir //Enregistrer la cible du lien sous...//. Choisir une destination. | * Dans la nouvelle page, faire un clic droit sur l'[[wpfr>hyperlien]] pour pouvoir //Enregistrer la cible du lien sous...//. Choisir une destination. |
| * Dans la fenêtre [[:tutoriel:comment_modifier_sources_maj#avec_une_interface_graphique|Sources de logiciels]] prévue à cette effet, choisir l'onglet //Authentification// puis cliquer sur //Importer la clé...//. | * Dans la fenêtre [[:tutoriel:comment_modifier_sources_maj#avec_une_interface_graphique|Sources de logiciels]] prévue à cette effet, choisir l'onglet //Authentification// puis cliquer sur //Importer la clé...//. |
| * Rechercher et sélectionner le fichier qui vient d'être enregistré (le nom par défaut est 'lookup'). Fermer la fenêtre des sources de logiciels. | * Rechercher et sélectionner le fichier qui vient d'être enregistré (le nom par défaut est 'lookup'). Fermer la fenêtre des sources de logiciels. |
| Les captures d'écrans associées à cette manipulation peuvent être trouvées sur : \\ **(en)** [[http://askubuntu.com/questions/13065/how-do-i-fix-the-gpg-error-no-pubkey-without-terminal#13088|« How do I fix the GPG error “NO_PUBKEY”? »]] —{ « Comment corriger une erreur GPG "AUCUNE CLÉ PUBLIQUE" » } ; source : forum AskUbuntu.com ; auteur : Agmenor ; 13 novembre 2010. | Les captures d'écrans associées à cette manipulation peuvent être trouvées sur : \\ **(en)** [[http://askubuntu.com/questions/13065/how-do-i-fix-the-gpg-error-no-pubkey-without-terminal#13088|« How do I fix the GPG error “NO_PUBKEY”? »]] —{ « Comment corriger une erreur GPG "AUCUNE CLÉ PUBLIQUE" » } ; source : forum AskUbuntu.com ; auteur : Agmenor ; 13 novembre 2010. |
| |
| =====Si malgré tout le problème persiste===== | **One Lign installer.** |
| | <note tip>sudo add-apt-repository ppa:webupd8team/y-ppa-manager && sudo apt update |
| | sudo apt install launchpad-getkeys && sudo launchpad-getkeys</note> |
| | |
| | |
| | ===== Si malgré tout le problème persiste ===== |
| |
| Commencez par forcer les mises à jour sans authentification, pour être sûr de tout avoir. | Commencez par forcer les mises à jour sans authentification, pour être sûr de tout avoir. |
| <code>sudo apt update && sudo apt-get -yf --allow-unauthenticated upgrade </code> | <code bash>sudo apt update && sudo apt-get -yf --allow-unauthenticated upgrade </code> |
| |
| sauvegardez vos clés .gpg actuelles, au cas où ! | sauvegardez vos clés .gpg actuelles, au cas où ! |
| Faites un dossier où mettre ça en attendant : | Faites un dossier où mettre ça en attendant : |
| |
| <code> mkdir ~/gpg-backups </code> | <code bash> mkdir ~/gpg-backups </code> |
| |
| Virez tout /etc/apt/trusted.gpg.d/ et /etc/apt/trusted.gpg dans le dossier précédemment créé : | Virez tout /etc/apt/trusted.gpg.d/ et /etc/apt/trusted.gpg dans le dossier précédemment créé : |
| |
| <code>sudo mv /etc/apt/trusted.gpg.d/*.* ~/gpg-backups/ | <code bash>sudo mv /etc/apt/trusted.gpg.d/*.* ~/gpg-backups/ |
| sudo mv /etc/apt/trusted.gpg ~/gpg-backups/ </code> | sudo mv /etc/apt/trusted.gpg ~/gpg-backups/ </code> |
| |
| Installez le gestionnaire / réparateur de PPA [[yppamanager|y-ppa-manager]] : | Installez le gestionnaire / réparateur de PPA [[yppamanager|y-ppa-manager]] : |
| <code> sudo add-apt-repository ppa:webupd8team/y-ppa-manager && sudo apt-get update && sudo apt-get install -y y-ppa-manager</code> | <code bash> sudo add-apt-repository ppa:webupd8team/y-ppa-manager && sudo apt update && sudo apt install -y y-ppa-manager</code> |
| |
| Vous pouvez le lancer en ligne de commande pour voir ses sorties : | Vous pouvez le lancer en ligne de commande pour voir ses sorties : |
| <code>y-ppa-manager</code> | <code bash>y-ppa-manager</code> |
| ou simplement par son lanceur graphique normal. | ou simplement par son lanceur graphique normal. |
| |
| Dans [[yppamanager|Y-ppa-manager]], cliquez sur à "Advanced". Des options pour réparer les problèmes de clés manquantes ou de BADSIG vous y sont proposées. Commencez par recharger les clés. En cas de besoin, jetez un œil aux autres choix, ils peuvent être utiles. | Dans [[yppamanager|Y-ppa-manager]], cliquez sur à "Advanced". Des options pour réparer les problèmes de clés manquantes ou de BADSIG vous y sont proposées. Commencez par recharger les clés. En cas de besoin, jetez un œil aux autres choix, ils peuvent être utiles. |
| Soyez patients lors de la sélection d'un option, attendez pour le solliciter de nouveau : il travaille en fond et vous avertira d'une notification une fois sa tâche terminée (si lancé en ligne de commande, vous pouvez contrôler son fonctionnement dans la fenêtre de terminal). | Soyez patient lors de la sélection d'une option, attendez pour le solliciter de nouveau : il travaille en fond et vous avertira d'une notification une fois sa tâche terminée (si lancé en ligne de commande, vous pouvez contrôler son fonctionnement dans la fenêtre de terminal). |
| |
| =====Exporter ses clés de ppa===== | =====Exporter ses clés de ppa===== |
| Cette commande créera un fichier avec contenant toutes les clés utilisées dans le système. | Cette commande créera un fichier avec contenant toutes les clés utilisées dans le système. |
| =====Obtenir une clé pour un usage local (sans internet)===== | =====Obtenir une clé pour un usage local (sans internet)===== |
| Pour obtenir un fichier gpg utilisable sans internet, rendez-vous sur [[https://keyserver.ubuntu.com/|le serveur de clé Ubuntu]], dans le champs "Search string", entrez **0xnuméro-de-votre-clé**, le numéro de votre clé correspond à l'erreur apt que vous avez rencontrée lorsque vous avez recharger la liste des paquets. | Pour obtenir un fichier gpg utilisable sans internet, rendez-vous sur [[https://keyserver.ubuntu.com/|le serveur de clé Ubuntu]], dans le champs "Search string", entrez **0xnuméro-de-votre-clé**, le numéro de votre clé correspond à l'erreur apt que vous avez rencontrée lorsque vous avez recharger la liste des paquets. Cliquez sur le lien après **pub** copiez le contenu de la page dans un fichier en lui donnnannt le nom de votre choix avec l'extension ''gpg''. |
| Une fois cela entrez la clé manuellement avec la commande : | Une fois cela fait, entrez la clé manuellement avec la commande : |
| <code>sudo apt-key add /chemin/vers/votre/clé/votre-clé.gpg</code> | <code>sudo apt-key add /chemin/vers/votre/clé/votre-clé.gpg</code> |
| Ou encore plus simplement avec la commande : | Ou encore plus simplement avec la commande : |
| <code>wget -O- "http://keyserver.ubuntu.com/pks/lookup?op=get&search=0xvotre_n°_de_clé" >votre-clé.gpg</code> | <code>wget -O- "http://keyserver.ubuntu.com/pks/lookup?op=get&search=0xvotre_n°_de_clé" >votre-clé.gpg</code> |
| | ===== Commande apt-key obsolète ===== |
| | |
| | Toutes les options de cette commande sont devenues obsolètes avec la version 22.04 à l'exception de **del** |
| | <code> man apt-key |
| | NAME |
| | apt-key - Deprecated APT key management utility |
| | DESCRIPTION |
| | Use of apt-key is deprecated, except for the use of apt-key del in maintainer scripts to remove existing keys from the main keyring. |
| | If such usage of apt-key is desired the additional installation of the GNU Privacy Guard suite (packaged in gnupg) is required.</code> |
| | |
| | Exemple de codification incorrecte |
| | <code>wget -qO- https://myrepo.example/myrepo.asc | sudo apt-key add - </code> |
| | La bonne codification devient |
| | <code> wget -qO- https://myrepo.example/myrepo.asc | sudo tee /etc/apt/trusted.gpg.d/myrepo.asc </code> |
| | |
| | |
| |
| ---- | |
| Contributeurs : [[utilisateurs:Daëavelwyn]], [[utilisateurs:Mysteroid]], [[utilisateurs:BeAvEr]] (petit toilettage de la documentation), [[utilisateurs:Agmenor]] (partie PPA), [[utilisateur:Jau]]. | |