PPA keys
Software from Launchpad’s Personal Package Archive (PPA) requires a GnuPG key so your system can verify that it’s getting the packages from the correct source. Personal Package Archives allow any person in the Ubuntu community who has committed to observe the Ubuntu Code of Conduct to upload Ubuntu source packages to be built and published as an apt repository by Launchpad. GnuPG (also referred to as GPG) is GNU’s tool for secure communication and data storage.
1. Check if you need PPA keys
- You can find out if you have any PPA software that needs a key by running this command to update the package index:
-
sudo apt-get update
- If you’re missing any keys for packages from http://ppa.launchpad.net, you will see error messages similar to these:
-
Fetched 616B in 0s (752B/s) Reading package lists... Done W: GPG error: http://ppa.launchpad.net intrepid Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 6AF0E1940624A220 W: GPG error: http://ppa.launchpad.net intrepid Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 60D11217247D1CFF W: You may want to run apt-get update to correct these problems
2. Get the key IDs
Each error will display a code immediately following NO_PUBKEY. This is the key ID of the package.
3. Add PPA keys to your apt keyring
Replace KEY_ID in this command with the key ID of the package:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys KEY_ID
Note that if you copy and paste this command, you may need to delete and retype the double dashes (–) for the command to work.
- Example for the first key ID above:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 6AF0E1940624A220
- Result:
Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --secret-keyring /etc/apt/secring.gpg --trustdb-name /etc/apt/trustdb.gpg --keyring /etc/apt/trusted.gpg --keyserver keyserver.ubuntu.com --recv-keys 6AF0E1940624A220 gpg: requesting key 0624A220 from hkp server keyserver.ubuntu.com gpg: key 0624A220: public key "Launchpad PPA for TualatriX" imported gpg: Total number processed: 1 gpg: imported: 1 (RSA: 1)
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 60D11217247D1CFF
- Result:
Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --secret-keyring /etc/apt/secring.gpg --trustdb-name /etc/apt/trustdb.gpg --keyring /etc/apt/trusted.gpg --keyserver keyserver.ubuntu.com --recv-keys 60D11217247D1CFF gpg: requesting key 247D1CFF from hkp server keyserver.ubuntu.com gpg: key 247D1CFF: public key "Launchpad PPA for OpenOffice.org Scribblers" imported gpg: no ultimately trusted keys found gpg: Total number processed: 1 gpg: imported: 1 (RSA: 1)
4. Update the package index
- When finished, run this command again to update the package index using the new keys:
-
sudo apt-get update
- You should now be able to update your packages normally.
Obligatory Happy Ending
And they all lived happily ever after. The end.

thanks your tips were really useful!
Comment by GAMA — May 29, 2010 @ 11:56 pm
I’m happy to help out.
Comment by mostlylinux — May 30, 2010 @ 10:58 am
Thanks for that, worked for me too, although had to remove and re-type the — after pasting the command
Comment by kurt — October 14, 2010 @ 1:49 pm
Thanks for letting me know about that! I will add a comment up above in case anyone else runs into the same issue, although the dashes copy just fine for me here.
Comment by mostlylinux — October 15, 2010 @ 6:32 am