Lors de l'exécution apt-get update
, J'obtiens l'erreur suivante:
root@ADS3-Debian6:/home/aluno# apt-get update
Atingido http://sft.if.usp.br squeeze Release.gpg
Ign http://sft.if.usp.br/debian/ squeeze/contrib Translation-en
Ign http://sft.if.usp.br/debian/ squeeze/contrib Translation-pt
Ign http://sft.if.usp.br/debian/ squeeze/contrib Translation-pt_BR
(...)
Obter:10 http://security.debian.org squeeze/updates/non-free i386 Packages [14 B]
Baixados 612 kB em 4s (125 kB/s)
Lendo listas de pacotes... Pronto
There is no public key available for the following key IDs: 8B48AD6246925553
Les autres réponses fonctionneront, ou non, selon que la clé "8B48AD6246925553" est présente ou non dans les packages qu'ils indiquent.
Si vous avez besoin d'une clé, vous devez l'obtenir, et où la trouver, c'est dans un serveur de clés (très probablement n'importe quel serveur de clés fera l'affaire):
Sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 8B48AD6246925553
Je vous recommande de suivre la réponse de @ mariotomo plutôt que les étapes ci-dessous:
Selon Il n'y a pas de clé publique disponible pour l'ID de clé suivant , cela le corrigera:
Sudo aptitude install debian-archive-keyring
Je recommande:
$ Sudo apt-get install debian-archive-keyring
$ Sudo apt-key update
C'est mieux que d'autres approches car il n'installe pas debian-keyring
, ce qui est gros et 99% du temps inutile.
L'erreur Il n'y a pas de clé publique disponible pour les ID de clé suivants indique un problème de sécurité grave: un package du système d'exploitation ne peut pas être vérifié pour l'intégrité avec sa clé publique, car sa clé publique est manquante.
Si le message était:
There is no public key available for the following key IDs: 1397BC53640DB551
Vous pouvez utiliser cette commande pour savoir quel référentiel utilise la clé:
for n in `ls /var/lib/apt/lists/*gpg`; do echo "$n" ; gpg --list-packets "$n" | grep 1397BC53640DB551; done
Dans cet exemple, qui est le référentiel de Google pour Chrome:
/var/lib/apt/lists/dl.google.com_linux_chrome_deb_dists_stable_Release.gpg
Si vous faites confiance à Google, à son gouvernement, etc., vous devez savoir où se trouve la clé et l'ajouter avec:
wget -q -O - https://dl.google.com/linux/linux_signing_key.pub | apt-key add -
J'ai rencontré le même problème dans Linux Mint (Kernel Version 3.13.0-24) et j'ai pu le résoudre en utilisant les commandes:
gpg --recv-keys <the-reported-key>
gpg --export <the-reported-key> | apt-key add -
Points à noter:
1) Les commandes ont été exécutées dans l'ordre 2) Les commandes ont été exécutées en tant qu'utilisateur root
Courtoisie this réponse.
Ma réponse est une légère mise à niveau (à mon humble avis, YMMV) sur @mariotomo (que j'ai surévalué) dans le scriptlet bash suivant
gpg
Vous pouvez également commenter la ligne eval
pour une "exécution à sec": le scriptlet ne vous montrera alors que ce qu'il a l'intention de faire, sans le faire réellement. Veillez simplement à modifier la valeur de NO_PUBKEY
chaque fois que vous utilisez ceci (vous pouvez également changer KEYSERVER
comme vous le souhaitez):
NO_PUBKEY='1397BC53640DB551' # CHANGE TO THE VALUE CITED IN YOUR ERROR MESSAGE!
KEYSERVER='keys.gnupg.net'
NO_PUBKEY_LEN="${#NO_PUBKEY}"
echo "NO_PUBKEY_LEN='${NO_PUBKEY_LEN}'" # for sanity or debugging
# note following works because bash arrays have 0-based indices
NO_PUBKEY_2ND_HALF_START=$(( NO_PUBKEY_LEN/2 ))
echo "NO_PUBKEY_2ND_HALF_START='${NO_PUBKEY_2ND_HALF_START}'" # ditto
NO_PUBKEY_2ND_HALF="${NO_PUBKEY:${NO_PUBKEY_2ND_HALF_START}}"
echo "NO_PUBKEY_2ND_HALF='${NO_PUBKEY_2ND_HALF}'" # ditto
for CMD in \
'date' \
"gpg --keyserver ${KEYSERVER} --recv-keys ${NO_PUBKEY_2ND_HALF}" \
'date' \
"gpg -a --export ${NO_PUBKEY_2ND_HALF} | Sudo apt-key add -" \
; do
echo -e "${CMD}"
eval "${CMD}"
done
Comme alternative:
$ Sudo apt-get install debian-keyring debian-archive-keyring
$ Sudo apt-key update
Courir killall -q gpg-agent
si les autres solutions ne fonctionnent pas. Cela peut fonctionner.
J'obtenais une erreur similaire pour un référentiel PPA sur Ubuntu 18.04 et après avoir essayé diverses solutions sur Internet le mois dernier, je suis juste tombé sur l'agent gpg et l'ai tué. Ensuite, les référentiels PPA ont commencé à se mettre à jour en faisant Sudo apt-get update
. Je sais que cela peut compromettre la sécurité, mais parfois vous avez besoin d'un package d'un PPA, et GPG ne vous le permet tout simplement pas. Plus tard, vous redémarrez l'agent gpg et les choses reviennent à la normale.