Sample Header Ad - 728x90

GPG - "pacman-key --refresh-keys" fails with "gpg: keyserver refresh failed: Permission denied"

8 votes
1 answer
8352 views
I'm currently having issues with installing a package due to a missing key. My first plan was to updating my keyring however "pacman-key --refresh-keys" fails: [user@hostname ~]$ sudo pacman-key --refresh-keys gpg: refreshing 134 keys from hkp://pool.sks-keyservers.net gpg: keyserver refresh failed: Permission denied ==> ERROR: A specified local key could not be updated from a keyserver. Also tried running it under "su". [user@hostname ~]$ su Password: [root@hostname user]# pacman-key --refresh-keys gpg: refreshing 134 keys from hkp://pool.sks-keyservers.net gpg: keyserver refresh failed: Permission denied ==> ERROR: A specified local key could not be updated from a keyserver. Tried running dirmngr manually to see if there are any errors. [user@hostname ~]$ sudo dirmngr ERROR: A specified local key could not be updated from a keyserver After removing both ".gnupg" directories I ran dirmngr again. [user@hostname ~]$ dirmngr --debug-level guru dirmngr: enabled debug flags: x509 crypto memory cache memstat hashing ipc dns network lookup extprog dirmngr: error opening '/home/user/.gnupg/dirmngr_ldapservers.conf': No such file or directory dirmngr[18151.0]: permanently loaded certificates: 141 dirmngr[18151.0]: runtime cached certificates: 0 dirmngr[18151.0]: trusted certificates: 141 (140,0,0,1) dirmngr[18151.0]: failed to open cache dir file '/home/user/.gnupg/crls.d/DIR.txt': No such file or directory dirmngr[18151.0]: creating directory '/home/user/.gnupg' dirmngr[18151.0]: creating directory '/home/user/.gnupg/crls.d' dirmngr[18151.0]: new cache dir file '/home/user/.gnupg/crls.d/DIR.txt' created dirmngr[18151.0]: DBG: chan_3 -> # Home: /home/user/.gnupg # Home: /home/user/.gnupg dirmngr[18151.0]: DBG: chan_3 -> # Config: [none] # Config: [none] dirmngr[18151.0]: DBG: chan_3 -> OK Dirmngr 2.2.3 at your service OK Dirmngr 2.2.3 at your service And now I'm completely stuck. I suspected there might be some kind of permissions issue with a file needed by GPG but given that I've deleted both ".gnupg" directories and that they've been regenerated I don't see what's wrong. I've also tried everything on this wiki page: https://wiki.parabola.nu/Parabola_Keyring everything worked including the "sudo pacman-key --populate archlinux archlinux32 archlinuxarm parabola" command but "pacman-key --refresh-keys" still gave me the permissions error. Just tried refreshing my keyring with gpg directly: [user@hostname ~]$ sudo gpg2 --refresh-keys gpg: directory '/root/.gnupg' created gpg: keybox '/root/.gnupg/pubring.kbx' created Then tried to do it with pacman-key: [user@hostname ~]$ sudo pacman-key --refresh-keys gpg: refreshing 135 keys from hkp://pool.sks-keyservers.net gpg: keyserver refresh failed: Permission denied ==> ERROR: A specified local key could not be updated from a keyserver. So that failed. Tried with gpg2 to see if the output was the same: [user@hostname ~]$ sudo gpg2 --refresh-keys There wasn't any output so I doubt that the files it created are related to my current issue. As a last ditch effort I tried without sudo and got no output: [user@hostname ~]$ gpg2 --refresh-keys Still stuck with this. Even installed kgpg to manually generate a config file for gpg. However, I'm still getting this damn permissions error.
Asked by ToffeeYogurtPots (175 rep)
Dec 4, 2017, 12:19 PM
Last activity: Jul 6, 2021, 12:02 PM