Accueil
» LINUX
»
Comment résoudre l'erreur GPG « NO_PUBKEY » sous Ubuntu
Comment résoudre l'erreur GPG « NO_PUBKEY » sous Ubuntu
L' erreur NO_PUBKEY signifie qu'APT a trouvé un dépôt, mais ne peut pas vérifier les métadonnées signées de ses paquets, car il lui manque la clé de signature publique de ce dépôt. Identifiez la source, obtenez sa clé auprès de l'éditeur, vérifiez l'empreinte complète et liez-la uniquement à ce dépôt Signed-By. Ensuite, actualisez APT. Ne contournez pas les vérifications de signature pour masquer l'erreur.
Notez l'URL du dépôt à côté de NO_PUBKEY. APT peut afficher un identifiant de clé court, tel que ABCD1234EF567890. Cela permet d'identifier la clé manquante, mais ne prouve pas qui en est le propriétaire. Vérifiez quelle source logicielle a produit l'erreur avant de modifier ses paramètres de confiance.
La ligne en surbrillance identifie un dépôt dont la clé de signature APT ne peut pas être vérifiée ; l’URL et l’identifiant de la clé sont des exemples.
2. Obtenez et vérifiez la clé de l'éditeur
Utilisez la page d'installation officielle du propriétaire du dépôt ou l'emplacement de téléchargement de la clé. Pour un PPA Launchpad, vérifiez son propriétaire et son archive sur Launchpad. Ubuntu documente l'ajout d'un PPA avec la commande `ppa` add-apt-repository, qui configure sa clé :
sudo add-apt-repository ppa:OWNER/ARCHIVE
Remplacez OWNER/ARCHIVEpar le PPA exact figurant sur sa page officielle. Pour un dépôt fournisseur, téléchargez sa clé uniquement en suivant les instructions du fournisseur. Cet exemple utilise une URL fictive ; remplacez-la par l’URL publiée :
Comparez l'empreinte digitale complète avec celle publiée par le fournisseur via un canal officiel. N'allez pas plus loin si elle diffère ou ne peut être vérifiée.
Utilisez les instructions de l'éditeur pour localiser la clé et son empreinte digitale.
3. Rangez la clé dans son propre porte-clés.
Pour une clé blindée ASCII .asc, créez un répertoire de trousseau de clés, convertissez la clé et autorisez APT à la lire :
Si l'éditeur fournit une .gpgclé binaire, enregistrez-la /etc/apt/keyringset définissez ses permissions0644 ; ne la désarmez pas. Nommez le fichier d'après son éditeur afin de pouvoir l'identifier ultérieurement.
4. Liez la clé à ce dépôt
Modifiez le fichier source existant du dépôt, généralement situé dans `/etc/dépôt/` /etc/apt/sources.list.d/. Conservez l'URI, la suite Ubuntu et les composants fournis par l'éditeur. Remplacez les espaces réservés ci-dessous et ne créez pas de source dupliquée.
Dans un .sourcesfichier deb822, ajoutez un Signed-Bychamp :
Types: deb
URIs: https://repo.example/ubuntu
Suites: YOUR_UBUNTU_CODENAME
Components: main
Signed-By: /etc/apt/keyrings/vendor-archive-keyring.gpg
Dans un .listfichier existant, ajoutez l'option à sa debligne existante :
deb [signed-by=/etc/apt/keyrings/vendor-archive-keyring.gpg] https://repo.example/ubuntu YOUR_UBUNTU_CODENAME main
Utilisez le format déjà présent dans cette source. Le manuel d'Ubuntusources.list explique Signed-Byles formats pris en charge.
L'entrée source pointe vers un porte-clés dans /etc/apt/keyrings.
5. Actualisez APT et vérifiez
Enregistrez le fichier source et exécutez :
sudo apt update
La mise à jour devrait se terminer sans l'avertissement du dépôt NO_PUBKEY. Vous pourrez ensuite installer ou mettre à jour les paquets normalement. Cette commande actualise les métadonnées des paquets ; elle ne met pas à niveau les paquets installés.
Une actualisation propre de la liste des paquets confirme qu'APT peut vérifier le dépôt configuré.
Si l'erreur persiste
Incohérence d'empreinte : la clé est peut-être obsolète ou provient d'un autre dépôt. Veuillez obtenir la clé actuelle auprès de l'éditeur.
Clé introuvable : vérifiez que le Signed-Bychemin d’accès à la source correspond exactement au fichier du trousseau de clés et que ce fichier est lisible.
Fichier de version manquant ou erreur 404 : le dépôt ne prend peut-être pas en charge votre nom de code Ubuntu. Suivez les recommandations de compatibilité de l’éditeur ou désactivez la source ; n’essayez pas de deviner une autre suite.
Archive officielle d'Ubuntu : vérifiez que la source pointe vers une archive officielle d'Ubuntu et que celle-ci ubuntu-keyringest intacte. N'importez pas de clé de remplacement non officielle.
Sur Ubuntu Desktop, si vous n'utilisez plus une source tierce, ouvrez « Logiciels et mises à jour » , désactivez-la dans « Autres logiciels » et rechargez les informations du paquet. Les libellés varient selon la version. L'ancienne méthode d'importation d'authentification globale ne remplace pas la vérification de la clé actuelle de l'éditeur et son utilisation Signed-By.
Conserver les vérifications de signature activées
N’utilisez pas les paramètres `<cache-dépôt>` trusted=yes, --allow-unauthenticated`<cache-dépôt>` ou `<cache-dépôt>` comme solution de contournement. Si l’éditeur ne peut pas confirmer la clé ou ne maintient plus le dépôt, désactivez-le et utilisez une source prise en charge. Consultez le manuel d’authentification des archives APT d’Ubuntu .