Αν όταν εκτελούμε updates σε σύστημα Linux με:
1 |
sudo apt-get update |
εμφανιστεί το σφάλμα:
The following signatures couldn’t be verified because the public key is not available: NO_PUBKEY ΧΧΧΧΧΧΧΧΧΧΧΧΧΧΧΧ
τότε, αντιγράφουμε το public key
(το ΧΧΧΧΧΧΧΧΧΧΧΧΧΧΧΧ
) και πληκτρολογούμε:
1 |
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys ΧΧΧΧΧΧΧΧΧΧΧΧΧΧΧΧ |
Πλέον όταν κάνουμε apt-get update
τα updates θα προχωρήσουν χωρίς πρόβλημα.
Ένα ακόμα παρεμφερές σφάλμα που μπορεί να εμφανιστεί είναι το εξής:
Err:11 http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.2 Release.gpg
The following signatures were invalid: KEYEXPIRED 1637973123
Προκειμένου να λύσουμε αυτό το πρόβλημα με το KEYEXPIRED
πρώτα ανακτούμε τη λίστα με τα ‘keys’ που έχουν λήξει:
1 |
apt-key list | grep 'expired' |
Αυτή η εντολή θα εμφανίσει μια λίστα που θα έχει τη μορφή:
pub 2048R/BEC6D174 2015-03-27 [expired: 2017-06-04]
pub 4096R/G8V29285 2015-05-28 [expired: 2017-11-22]
pub 4096R/B5C16386 2015-05-28 [expired: 2017-11-22]
Θα αντιγράψουμε τα keys και για κάθε ένα από αυτά θα δώσουμε την ακόλουθη εντολή:
1 |
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv [key] |
Το terminal θα πρέπει να μας δώσει το εξής μήνυμα:
Executing: /tmp/tmp.oJH4fKop3/gpg.1.sh –keyserver
hkp://keyserver.ubuntu.com:80
–recv
AB123456
gpg: requesting key AB123456 from hkp server keyserver.ubuntu.com
gpg: key AB123456: «MongoDB 3.2 Release Signing Key <packaging@mongodb.com>» 1 new signature
gpg: Total number processed: 1
gpg: new signatures: 1
Πλέον μπορούμε να τρέξουμε τα updates χωρίς πρόβλημα. 🙂