前言
manjaro系统一年多没用,再次打开它之后习惯性的去滚动更新一下,结果被拦在了软件包签名验证这一个环节。
解决过程
在网上找到很多方案,尝试了很多都不好使。
像 初始化密钥环
pacman-key --init
pacman-key --populate archlinux
更换密钥服务器,分别尝试了下面这些服务器,
hkp://pgp.mit.edu:11371
hkps://hkps.pool.sks-keyservers.net:443
hkp://ipv4.pool.sks-keyservers.net:11371
结果都不好用,猜测可能是墙的原因,懒得去搞科学上网。
最后我是将GnuPg密钥服务器改为了 hkp://keyserver.ubuntu.com
,编辑文件/etc/pacman.d/gnupg/gpg.conf,将 keyserver 这一行改为
keyserver hkp://keyserver.ubuntu.com
然后更新 GnuPG
密钥
(base) ➜ ~ sudo pacman-key --refresh-keys
[sudo] pz 的密码:
gpg: 密钥 A6234074498E9CEE:“Christian Hesse (Arch Linux Package Signing) <arch@eworm.de>” 66 个新的签名
gpg: 处理的总数:1
gpg: 新的签名:66
gpg: marginals needed: 3 completes needed: 1 trust model: pgp
gpg: 深度:0 有效性: 1 已签名: 22 信任度:0-,0q,0n,0m,0f,1u
gpg: 深度:1 有效性: 22 已签名: 94 信任度:0-,0q,0n,22m,0f,0u
gpg: 深度:2 有效性: 74 已签名: 28 信任度:74-,0q,0n,0m,0f,0u
gpg: 下次信任度数据库检查将于 2023-01-01 进行
pub rsa2048 2011-08-12 [SC]
02FD1C7A934E614545849F19A6234074498E9CEE
uid [ 完全 ] Christian Hesse (Arch Linux Package Signing) <arch@eworm.de>
uid [ 完全 ] Christian Hesse <eworm@archlinux.org>
sub rsa2048 2011-08-12 [E]
sub ed25519 2019-08-29 [S]
sub cv25519 2019-08-29 [E]
gpg: 密钥 25EA6900D9EA5EBC:“George Rawlinson <george@rawlinson.net.nz>” 1 个新的签名
gpg: 处理的总数:1
gpg: 新的签名:1
pub ed25519 2016-11-03 [C]
034D823DA2055BEE6A6BF0BB25EA6900D9EA5EBC
uid [ 未知 ] George Rawlinson <george@rawlinson.net.nz>
uid [ 完全 ] George Rawlinson <grawlinson@archlinux.org>
sub ed25519 2016-11-04 [A]
sub ed25519 2016-11-03 [S]
sub cv25519 2016-11-04 [E]
...
再去更新软件,最后就只有一个autojump的签名找不到,略过这个软件最后更新成功。
PS: autojump这个软件最后也更新成功了,是通过将签名关闭的方法搞定的。也就是修改 /etc/pacman.conf
文件
SigNever = Never
更新完之后,立马又改了回去。
SigLevel = TrustedOnly
参考文章
manjaro pacman及其数字签名问题解决
解决 Arch/Manjaro Linux 仓库更新签名报错及手动干预软件包升级
archLinux 官方论坛帖子–[SOLVED] Problem with pacman update - Signature is unknown trust