插件窝 干货文章 修复 Arch Linux 中的 “invalid or corrupted package (PGP signature)” 错误

修复 Arch Linux 中的 “invalid or corrupted package (PGP signature)” 错误

密钥 pacman sudo 软件包 166    来源:    2025-04-20

修复 Arch Linux 中的 "invalid or corrupted package (PGP signature)" 错误

这个错误通常发生在尝试安装或更新软件包时,表明系统无法验证软件包的PGP签名。以下是几种解决方法:

1. 更新密钥环

首先尝试更新 Arch Linux 的密钥环:

sudo pacman -Sy archlinux-keyring
sudo pacman-key --refresh-keys

2. 重新初始化密钥环

如果更新密钥环不起作用,尝试重新初始化:

sudo pacman-key --init
sudo pacman-key --populate archlinux
sudo pacman-key --refresh-keys

3. 手动导入缺失的密钥

如果错误信息中提到了特定的密钥ID(如"key ABCDEF123456 is unknown"),可以手动导入:

sudo pacman-key -r ABCDEF123456
sudo pacman-key --lsign-key ABCDEF123456

4. 检查系统时间

PGP签名验证依赖于正确的时间设置,确保系统时间准确:

timedatectl status

如果时间不正确,可以同步:

sudo timedatectl set-ntp true

5. 临时禁用签名验证(不推荐)

如果急需安装软件包且确认来源可靠,可以临时禁用签名验证:

sudo pacman -S package-name --assume-installed archlinux-keyring --noconfirm

警告:这会降低系统安全性,仅作为最后手段使用。

6. 检查镜像站状态

有时镜像站同步问题会导致此错误,尝试更换镜像站:

sudo pacman-mirrors -c China  # 对于Manjaro用户
# 或者编辑/etc/pacman.d/mirrorlist

7. 完全重建密钥数据库

如果以上方法都无效,可以尝试:

sudo rm -rf /etc/pacman.d/gnupg
sudo pacman-key --init
sudo pacman-key --populate archlinux
sudo pacman -Sy archlinux-keyring

完成上述步骤后,再次尝试安装或更新软件包。如果问题仍然存在,可能需要检查网络连接或等待Arch Linux官方解决密钥服务器问题。