You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何删除/etc/apt/trusted.gpg文件中的过期密钥?

如何删除/etc/apt/trusted.gpg文件中的过期密钥?

嘿,我之前在处理Ubuntu下的Key is stored in legacy trusted.gpg keyring警告时,刚好研究过删除过期密钥的方法,下面是亲测有效的步骤:

步骤1:列出所有密钥,定位过期条目

首先运行命令查看系统中存储的所有APT密钥,重点关注标记为[ expired]的条目:

sudo apt-key list

你会看到类似这样的输出(和你提供的示例一致):

/etc/apt/trusted.gpg

pub dsa1024 2003-02-03 [SCA] [expired: 2022-02-16]
A4A9 4068 76FC BD3C 4567 70C8 8C71 8D3B 5072 E1F5
uid [ expired] MySQL Release Engineering mysql-build@oss.oracle.com

pub rsa4096 2021-12-14 [SC] [expired: 2023-12-14]
859B E8D7 C586 F538 430B 19C2 467B 942D 3A79 BD29
uid [ expired] MySQL Release Engineering mysql-build@oss.oracle.com

pub rsa4096 2023-10-23 [SC] [expires: 2025-10-22]
BCA4 3417 C3B4 85DD 128E C6D4 B7B3 B788 A8D3 785C
uid [ unknown] MySQL Release Engineering mysql-build@oss.oracle.com
sub rsa4096 2023-10-23 [E] [expires: 2025-10-22]

这里需要提取过期条目的最后8位密钥ID,比如上面两个过期密钥的ID分别是5072E1F5和3A79BD29。

步骤2:逐个删除过期密钥

针对每个过期的密钥ID,运行以下命令删除:

sudo apt-key del <过期密钥ID>

比如删除第一个过期的MySQL密钥:

sudo apt-key del 5072E1F5

删除第二个:

sudo apt-key del 3A79BD29

注意:虽然系统会提示apt-key is deprecated,但目前这个删除命令依然可以正常工作;如果想彻底遵循新的规范,你可以先确认所有有效的密钥都已经迁移到/etc/apt/trusted.gpg.d/目录下(就像你之前导出MySQL有效密钥那样),之后直接备份并清空/etc/apt/trusted.gpg文件即可。

步骤3:验证删除结果

再次运行sudo apt-key list,检查那些标记为[ expired]的条目是否已经消失,确认删除成功。

最后运行sudo apt update,应该不会再出现相关的过期密钥警告了。

备注:内容来源于stack exchange,提问作者Manuel Jordan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.20 12:44:34