修复 Arch Linux 中 “invalid or corrupted package” 错误的简单指南。

我在物理机和虚拟机中都安装有一些 Arch Linux 系统,我会在需要时访问它们。将近两个月后,当我尝试使用 sudo pacman -Syu 升级其中一个中的 Arch Linux 时,我遇到了数百个这样的错误:

Arch Linux 中无效或损坏的包错误示例

问题是当你遇到上面的错误时,你无法升级/更新你的 Arch 系统。即使你同步镜像或获得更快的镜像。所以,如果你运行 sudo pacman -Syyu,错误仍然存在。这就造成了困难,因为在修复此问题之前你无法安装任何其他软件包。

原因

当你在 Arch Linux 系统上安装或升级软件包时,pacman 会根据 archlinux-keyring 软件包中的密钥检查软件包的数字签名。此验证过程可确保你下载和安装的软件包未经修改且来自受信任的来源。

它包含用于 验证包的真实性和完整性 和 pacman 中的密钥环。archlinux-keyring 包由 Arch Linux 开发人员定期更新,以包含新的可信密钥并撤销任何泄露的密钥。

如果你的 Arch Linux 系统很长时间没有更新,那么各种包的数字签名可能会不匹配。更改后的密钥可能与你系统中的密钥不匹配。

因此出现错误了。

修复

要修复 Arch Linux 中的 “invalid or corrupted package (PGP signature)” 错误,你需要从 Core 仓库安装/更新 archlinux-keyring 包。从终端运行以下命令:

sudo pacman -S archlinux-keyring

上述命令完成后,运行升级:

sudo pacman -Syu

这将解决问题,你可以在 Arch Linux 中继续你的正常活动。建议始终保持 archlinux-keyring 包为最新,以维护 Arch Linux 系统的安全性和完整性。

(题图:MJ/7ed6d549-93c6-463d-823e-3a8c3957790f)


via: https://www.debugpoint.com/invalid-corrupted-package-arch/

作者:Arindam 选题:lkxed 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

添加新评论