0
点赞
收藏
分享

微信扫一扫

安装 manjaro 旧版后 pacman 更新keyring

鱼满舱 2024-05-18 阅读 33

安装旧版后,运行pacman -S archlinuxcn-keyring

提示:

manjaro-system  invalid corruted package pgp signature

结果是命令执行失败。

原因(似乎是)

新版manjaro的 pacman 上游更新了密钥环的格式,使得本地的主密钥无法签署其它密钥

解决方法:

1.先检查系统时间,如果不对,就改

sudo ntpd -qg  
2 sudo hwclock -w

2.更新已知密钥

pacman-key --refresh-keys

这步时间很久,因为有很多

3.因为开头报错的过期秘钥是manjaro-system ,所以我先更新这个

pacman -S manjaro-system

4.然后再执行开头的命令

pacman -S archlinuxcn-keyring

成功。

5.有博客说的方法改动太多,我没尝试

sudo rm -rf /etc/pacman.d/gnup  //rm命令谨慎操作

sudo pacman-key --init       //注意,操作这里先把 /etc/pacman.conf 文件恢复为初始备份

sudo pacman-key --populate archlinux 

pacman秘钥的知识

在 Arch Linux 中,GPG 密钥用于验证软件包的完整性和真实性,确保你下载和安装的软件包没有被篡改。当你从软件仓库安装软件包时,pacman(Arch Linux 的包管理器)会使用 GPG 密钥来验证这些软件包的签名

这些秘钥需要下载,pacman-key --populate

用于自动从 Arch Linux 的密钥服务器(archlinux.org 的密钥服务器)下载并信任 Arch Linux 官方软件仓库的 GPG 密钥(公钥)

下载的公钥会被 pacman 自动信任,这意味着当你从 Arch Linux 的官方仓库安装软件包时,pacman 会自动使用这些公钥来验证软件包的签名

上面第3和4的命令,是手工安装公钥集合,Keyring是GPG 公钥集合。如果--populate 提示某个秘钥环文件不存在,就需要手工安装对应包。

pacman -S 安装软件时,是否检查公钥? 是可以控制的。在pacman.conf文件结尾,每个仓库可以设置SigLevel = 有很多可选项,之间用空格

pacman命令的知识

pacman -Syy 更新缓存,不升级现有软件。追加u 就会升级全部。


举报

相关推荐

0 条评论