8

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 < /dev/null dirmngr[25316]: error opening '/root/.gnupg/dirmngr_ldapservers.conf': No such file or directory dirmngr[25316.0]: permanently loaded certificates: 141 dirmngr[25316.0]: runtime cached certificates: 0 dirmngr[25316.0]: trusted certificates: 141 (140,0,0,1) # Home: /root/.gnupg # Config: [none] OK Dirmngr 2.2.3 at your service 

I noticed the "error opening '/root/.gnupg/dirmngr_ldapservers.conf'" which had been mentioned on the Arch Linux forums. So I created a blank "/root/.gnupg/dirmngr_ldapservers.conf" and ran dirmngr again. I also get a similar error if I run dirmngr without sudo so I created a blank "/home/user/.gnupg/dirmngr_ldapservers.conf" too.

[user@hostname ~]$ sudo dirmngr < /dev/null dirmngr[28763.0]: permanently loaded certificates: 141 dirmngr[28763.0]: runtime cached certificates: 0 dirmngr[28763.0]: trusted certificates: 141 (140,0,0,1) # Home: /root/.gnupg # Config: [none] OK Dirmngr 2.2.3 at your service [user@hostname ~]$ dirmngr < /dev/null dirmngr[32757.0]: permanently loaded certificates: 141 dirmngr[32757.0]: runtime cached certificates: 0 dirmngr[32757.0]: trusted certificates: 141 (140,0,0,1) # Home: /home/user/.gnupg # Config: [none] OK Dirmngr 2.2.3 at your service 

Removed both the ".gnupg" folders, ran "pacman-key --init" and then tried "pacman-key --refresh-keys".

[user@hostname ~]$ sudo rm -rf /root/.gnupg [user@hostname ~]$ sudo rm -rf /home/user/.gnupg [user@hostname ~]$ sudo pacman-key --init [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 

After removing both ".gnupg" directories I ran dirmngr again.

[user@hostname ~]$ dirmngr --debug-level guru dirmngr[18151]: enabled debug flags: x509 crypto memory cache memstat hashing ipc dns network lookup extprog dirmngr[18151]: 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.

1 Answer 1

1

switch keyserver in ~/.gnupg/gpg.conf the current one defined could well be 404

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.