如何修复 Arch Linux 上终端中的以下错误?
error: msys: signature from "David Macek <[email protected]>" is invalid
当我执行命令时会发生这种情况。
sudo pacman-key --populate msys
答案1
这是一个已知问题,近年来有多种原因:https://github.com/msys2/MSYS2-packages/issues/2343
简而言之:
确保您的系统配置为使用实际存储库而不是可能已经过时或完全停止更新的旧镜像站点。
使用 Web 浏览器访问存储库 URL(上面链接)。找到该包的最新版本msys2-keyring-*-any.pkg.tar.zst
。在撰写本文时,它是msys2-keyring-1~20230703-1-any.pkg.tar.zst
.
手动下载软件包及其关联.sig
文件,然后验证其签名并安装:
curl -O https://repo.msys2.org/msys/x86_64/msys2-keyring-1~20230703-1-any.pkg.tar.zst
curl -O https://repo.msys2.org/msys/x86_64/msys2-keyring-1~20230703-1-any.pkg.tar.zst.sig
pacman-key --verify msys2-keyring-1~20230703-1-any.pkg.tar.zst.sig
pacman -U msys2-keyring-1~20230703-1-any.pkg.tar.zst
该pacman-key --verify ...
步骤可能仍会显示有关无效签名的警告,因为它仍在使用旧的密钥环;如果您当前的密钥环有多个版本已过时,这是预期的。任何其他错误都表明密钥环文件不完整或在传输过程中损坏,应重新下载。
成功更新密钥环后,您可以重新运行该pacman-key --verify ...
步骤,现在运行应该不会出现错误。