Pas de clé publique disponible pour vérifier l’authenticité des dépôts
Au lancement de la mise à jour des paquets du serveur, je suis tombé sur le message d’erreur suivant :
W: There is no public key available for the following key IDs:
8B48AD6246925553
W: There is no public key available for the following key IDs:
8B48AD6246925553
W: There is no public key available for the following key IDs:
8B48AD6246925553Code language: PHP (php)
Visiblement, APT a perdu ses petits et ne retrouve plus la clé publique GPG d’un des mes dépôts (webmin en l’occurence).
Voici comment remédier au problème.
Un projet WordPress en tête ?
Vous avez une idée claire de ce que vous voulez, mais pas les ressources en interne pour le faire bien. Je développe des sites et extensions WordPress sur-mesure — sans délais à rallonge ni mauvaises surprises.
Décrivez-moi votre projet →Solution : demander et ajouter la clé au trousseau GPG
Un peu de ménage dans APT
On commence par faire un peu de ménage dans les fichiers APT avec un petit coup de balai:
apt-get cleanCode language: JavaScript (javascript)
… avant de récréer le dossier lists/partial pour véritablement recréer le cache APT :
cd /var/lib/apt
mv lists lists.old
mkdir -p lists/partial
apt-get clean && apt-get autoremove && apt updateCode language: JavaScript (javascript)
Import de la clé publique
Maintenant, il nous reste à importer la clé publique manquante dans notre trousseau.
On se place dans le dossier root pour travailler:
cd /root
On demande la clé publique:
gpg --recv-keys 8B48AD6246925553
On l’exporte et on l’ajoute à notre trousseau :
gpg --export 8B48AD6246925553 | apt-key add -Code language: JavaScript (javascript)
On peut alors relancer la mise à jour des paquets :
apt-get clean && apt-get autoremove
apt update && apt upgradeCode language: JavaScript (javascript)
Script bash pour automatiser la mise à jour des clés APT
Soyons plus fous, nous allons automatiser les deux commandes avec un petit script BASH. On crée notre script :
nano /home/scripts/renew-apt-key
et on y ajoute:
#!/bin/bash
# Author : Matt Biscay
# Author URI : https://www.skyminds.net/?p=8735
gpg --keyserver keyserver.ubuntu.com --recv-keys $1
gpg --armor --export $1 | sudo apt-key add -Code language: PHP (php)
On enregistre le fichier et on le rend executable :
chmod +x renew-apt-key
Il ne vous reste plus qu’à renouveler votre clé APT avec:
sudo ./renew-apt-key NUMERO-DE-CLE
Et voilà, plus d’erreur lors des mises à jour APT.
Besoin d'un coup de main ?
Ce bug qui traîne depuis des semaines, ce plugin qui casse votre mise en page, cette fonctionnalité que personne n'arrive à implémenter proprement — c'est exactement ce que je règle au quotidien depuis 20 ans.
Parlons de votre problème →

Mise à jour de l’article avec le script Bash.