Debian/Ubuntu无公钥怎么办,apt密钥失效怎么修

遇到 Debian 或 Ubuntu 执行 apt update 弹出 W: There is no public key available for the following key IDs,不用重装系统,这通常只是某个第三方软件源缺少签名公钥,补齐 key 或换掉问题源,十分钟内就能让更新恢复正常。如果你刚好在用国内服务器的 Debian/Ubuntu 镜像,把 key 修好之后,apt 更新速度往往也会跟着稳下来。

debian更新提示没有公钥怎么办?先理解这行黄字到底卡在哪

很多人在 VPS 上第一次见到这行提示会下意识以为系统坏了,其实它只是 apt 在说:某个源里的软件包签名,我本地没有对应的公钥可以验证,apt 会把这个源暂时跳过,不会阻止系统自带仓库继续更新。

Ubuntu WineHQ安装公钥后仍提示没有公钥的解决方法分享
加载中
Ubuntu WineHQ安装公钥后仍提示没有公钥的解决方法分享

常见触发场景包括:

  • 手动添加了 Docker、Nginx、MySQL、NodeSource 等第三方源,只写了 deb 地址,没有配置 signed-by 公钥路径
  • 从 Debian 10 升级到 Debian 11 或 Ubuntu 20.04 升级到 22.04,旧版 apt-key add 导入的 key 不再被新的 keyring 机制读取
  • 云厂商模板里预装的某个软件源公钥过期,或者模板制作时漏导了 key
  • 本地 /etc/apt/trusted.gpg、/etc/apt/trusted.gpg.d/ 目录被误删、清空或权限损坏
  • 换源脚本只替换了 /etc/apt/sources.list,没有同步替换 /etc/apt/sources.list.d/ 下第三方源里的 key 路径

这行 W 之所以是黄字不是红字,就是因为它的严重级别不高,系统包管理器仍然可以正常更新 Ubuntu 官方 archive.ubuntu.com 或 Debian 官方 deb.debian.org 的安全补丁,只是被跳过那个源里的软件拿不到更新,对于跑着 Docker 或者 Node.js 生产服务的机器,这个跳过就不算小事了。

ubuntu apt update 公钥缺失解决方法:从缺失KEY到apt update不再报W

先抓取完整的 key ID

不要只扫一眼警告就急着搜命令,先把缺失的 key ID 拿到手:

sudo apt update 2>&1 | grep "NO_PUBKEY"

多数时候会看到类似:

NO_PUBKEY 3B4FE6ACC0B21F32

末尾那一串 3B4FE6ACC0B21F32 就是需要补充的 key ID,也有部分情况提示的是 The following signatures couldn't be verified because the public key is not available,这种同样能用下面方法处理。

选择导入公钥的正确姿势

最短的临时修复是用 apt-key:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3B4FE6ACC0B21F32

Debian/Ubuntu无公钥怎么办,apt密钥失效怎么修

这条命令在旧版 Debian/Ubuntu 上很好用,但 apt-key 已经被官方标记为弃用,它在 Debian 11、Ubuntu 22.04 上仍然能执行,不过会打印一堆 deprecation 警告,更干净的做法是把 key 放进 /usr/share/keyrings/ 目录,再让源文件通过 signed-by 精确指向它:

sudo mkdir -p /usr/share/keyrings
sudo gpg --keyserver keyserver.ubuntu.com --recv-keys 3B4FE6ACC0B21F32
sudo gpg --export 3B4FE6ACC0B21F32 | sudo tee /usr/share/keyrings/custom.gpg >/dev/null

然后检查 /etc/apt/sources.list.d/ 下对应源的 .list 文件,把原本的:

deb [arch=amd64] https://example.com/ubuntu jammy stable

改成:

deb [arch=amd64 signed-by=/usr/share/keyrings/custom.gpg] https://example.com/ubuntu jammy stable

如果不想改源文件,也可以直接把 key 放进 /etc/apt/trusted.gpg.d/:

sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/custom.gpg < keyfile

这种方式比 apt-key 更集中,也更容易管理,但仍然属于全局信任,不如 signed-by 精准。

验证警告是否消失

执行:

sudo apt update

如果之前那行 W 不再出现,说明 key 已经补对位置,还有个别源会继续提示,通常是源文件里 signed-by 路径与实际导出的 key 文件名不一致,用 grep -R "signed-by" /etc/apt/sources.list /etc/apt/sources.list.d/ 逐个核对即可。

国内服务器debian ubuntu公钥更新慢的另一个原因:keyserver连不上

国内不少服务器在执行 gpg --keyserver keyserver.ubuntu.com 时会卡很久,甚至直接超时,这并不代表 key 不存在,而是 key server 的访问链路不稳定。

遇到这种情况可以先试 80 端口:

sudo gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3B4FE6ACC0B21F32

如果还是慢,就别跟 keyserver 死磕,直接去软件源官方网站下载 GPG key 文件,再用 gpg --dearmor 转成 apt 可识别的格式,以 Docker 官方源为例:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker.gpg

NodeSource 的 key 也能直接下载:

curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | sudo gpg --dearmor -o /usr/share/keyrings/nodesource.gpg

Debian/Ubuntu无公钥怎么办,apt密钥失效怎么修

这种直接从源站拿 key 的方式,比依赖公共 keyserver 更适合国内服务器环境,只要能访问对应软件源的下载地址,key 一般就不会卡住。

debian missing public key 修复实战:一台VPS换源后更新的复盘

说一个具体场景,一台 Debian 12 的 VPS,为了加速把系统源换成了简米云镜像,之后又在同一台机器上按照旧教程添加了 Docker 源,结果执行 apt update 时出现了:

W: GPG error: https://download.docker.com/linux/debian bookworm InRelease
The following signatures couldn't be verified because the public key is not available:
NO_PUBKEY 8D81803C0EBFCD88

这里的问题不是简米云镜像,而是添加 Docker 源时只写了:

deb [arch=amd64] https://download.docker.com/linux/debian bookworm stable

漏掉了官方文档里要求的 signed-by 参数,修复时先下载 Docker 官方的 GPG key:

curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker.gpg

然后编辑 /etc/apt/sources.list.d/docker.list,改成:

deb [arch=amd64 signed-by=/usr/share/keyrings/docker.gpg] https://download.docker.com/linux/debian bookworm stable

最后执行:

sudo apt update

W 提示消失,Docker 源开始正常刷新,这个过程和换源没有直接冲突,只是旧教程省略了 keyring 步骤导致的典型问题。

老版本debian ubuntu公钥过期修复与apt-key弃用后的判断

公钥过期和公钥缺失是两回事,过期通常表现为 KEYEXPIRED 或者 EXPKEYSIG,缺失才是 NO_PUBKEY,但两种问题的修复思路接近:拿到新 key,替换旧 key,或者直接移除已经不再使用的失效源。

目前不同导入方式的适用情况可以这样理解:

导入方式 推荐程度 适用版本 备注
apt-key adv --recv-keys 临时可用 Debian 10、Ubuntu 20.04 及更早 最简单,但写入全局信任,已弃用
gpg --dearmor 到 /usr/share/keyrings 推荐 Debian 11/12、Ubuntu 22.04/24.04 隔离干净,需配合 signed-by
导出到 /etc/apt/trusted.gpg.d/ 可以接受

Debian/Ubuntu无公钥怎么办,apt密钥失效怎么修

全版本

比旧 apt-key 好管理,但仍是全局信任
直接删除失效第三方源视情况全版本如果该源已经不用,删除最省事

处理老版本系统时,/etc/apt/trusted.gpg 被误删,可以重新安装系统自带的 keyring 包,Debian 下是 debian-archive-keyring,Ubuntu 下是 ubuntu-keyring:

sudo apt-get install --reinstall debian-archive-keyring
sudo apt-get install --reinstall ubuntu-keyring

不过当前版本的公钥文件通常已经迁移到 /usr/share/keyrings/,旧位置的 trusted.gpg 只是兼容性残留。

多数情况下,W 警告不是系统损坏,而是某个仓库的信任关系断了,只要把 key 放回正确位置,apt update 就能恢复正常,对于国内服务器,优先从软件源官网直接下载 key 文件,比连公共 keyserver 更省时间,整件事折腾来回,本质就一句话:apt 只认你交给它的那串公钥,缺了哪个,补哪个。

Q&A:debian ubuntu没有公钥相关问题

Q:debian更新提示没有公钥怎么办会影响系统安全更新吗?
A:不会影响系统自带仓库的安全更新,apt 只是跳过缺少公钥的那个第三方源,deb.debian.org 或 archive.ubuntu.com 的更新仍然会正常进行,但如果缺少公钥的源里有 Nginx、Docker、Node.js 等你正在使用的软件,这部分安全补丁就拿不到,需要尽快补齐。

Q:ubuntu apt update 公钥缺失解决方法里 apt-key 还能用吗?
A:能用但不推荐。apt-key 在 Ubuntu 22.04 和 Debian 11 上仍然存在,执行后会警告已弃用,它会把 key 写入全局信任文件,时间长了容易弄不清楚哪个 key 对应哪个源,新装系统建议直接用 gpg --dearmor 把 key 放到 /usr/share/keyrings/,并在源文件里写 signed-by 路径。

Q:国内服务器 debian ubuntu 公钥导入一直失败是网络问题吗?
A:多数情况下是公共 keyserver 的连接问题,国内服务器访问 keyserver.ubuntu.com 经常超时,改用 hkp://keyserver.ubuntu.com:80 会好一些,更稳定的做法是直接从软件源官网下载 GPG key 文件,再导入到 /usr/share/keyrings/,如果软件源官网都连不上,说明网络链路本身就不适合该源,考虑换成国内镜像源。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://idctop.com/debian-ubuntu%e6%97%a0%e5%85%ac%e9%92%a5%e6%80%8e%e4%b9%88%e5%8a%9e%ef%bc%8capt%e5%af%86%e9%92%a5%e5%a4%b1%e6%95%88%e6%80%8e%e4%b9%88%e4%bf%ae/

赞 (0)
香港服务器租一年需要多少钱,香港服务器租用哪家便宜
上一篇 2026年9月18日 02:56
Web服务器应满足哪些要求?,如何选择稳定可靠方案
下一篇 2026年9月18日 02:57

相关推荐

  • 国网短信是什么意思?国网短信通知怎么开通

    2026年政企短信通信领域,【国网短信】凭借其央企级专属通道与金融级加密标准,已成为电力及泛能源行业实现秒级触达、防伪防漏的最优通信基建方案,解构【国网短信】的核心通信逻辑什么是中国国家电网短信通道作为电力通信的神经中枢,【国网短信】并非普通的商业信息推送,而是依托国家电网专网与三大运营商核心网直连的闭环通信链……

    2026年4月26日
    6000
  • H5应用本地存储怎么实现?h5本地存储有哪些优缺点

    H5应用程序本地存储的核心在于利用浏览器提供的API将数据保存在用户设备上,以实现离线访问、提升加载速度和优化用户体验,其中localStorage适合长期存储,sessionStorage适合临时会话数据,在移动互联网时代,用户对于网页应用的响应速度有着极高的要求,当网络环境不稳定或完全断网时,传统的Web应……

    2026年7月9日
    3300
  • 国家级开发区排名数据出炉?哪个开发区实力最强

    2026年国家级开发区排名核心数据表明,综合发展水平前五名被苏州工业园区、广州经开区、天津经开区、北京经开区与昆山经开区牢牢占据,产业集聚度与单位土地产出效益成为决定排名位次的关键分水岭,2026国家级开发区排名核心数据透视头部阵营稳中有变根据商务部2026年最新考核评估,苏州工业园区凭借生物医药与纳米技术应用……

    2026年4月30日
    6200
  • 高防服务器纵然云真的靠谱吗,高防服务器怎么选

    高防服务器纵然云的核心优势在于其将底层硬件防护与云端智能调度深度融合,能在遭遇大规模DDoS攻击时保障业务连续性,是金融、游戏及直播行业应对网络攻击的首选基础设施方案,高防服务器纵然云的技术架构解析在网络安全领域,传统的物理机防御往往受限于机房带宽上限,一旦攻击流量超过物理端口承载能力,业务便会直接瘫痪,高防服……

    2026年5月31日
    4400
  • 负载均衡切换网络就能登录?负载均衡切换网络后无法登录怎么办

    负载均衡切换网络就能登录在企业级服务器部署与运维实践中,网络稳定性与访问连续性直接影响业务可用性,近期对某国产高性能云服务器集群开展深度测评,重点验证其负载均衡机制在多网络链路切换场景下的响应能力与登录一致性表现,本次测试基于真实生产环境模拟,涵盖不同运营商接入、链路抖动、主备切换等典型故障场景,所有数据均来自……

    服务器测评 2026年4月17日
    6200
  • 99美元的serverhub值不值,性能怎么样?

    3.99美元/月能拿到1G内存、65G硬盘、1T流量的配置,在2026年的VPS市场里属于“入门价格、中端硬盘”的典型代表,性价比集中在存储空间而非计算性能上,适合个人博客、小型爬虫、代理转发或备用节点,但不适合承载高并发业务,很多朋友看到这个价格第一反应是“能不能跑Docker”,第二反应是“商家会不会跑路……

    2026年9月2日
    500
  • 负载均衡厂商怎么选?华为云、阿里云、腾讯云、F5、Nginx对比

    负载均衡厂商对比在高并发、高可用架构中,负载均衡器作为流量调度的核心组件,其性能、稳定性与扩展能力直接决定整体系统的健壮性,本文基于2026年最新市场环境,对主流负载均衡解决方案进行深度测评,涵盖硬件负载均衡、软件负载均衡及云原生负载均衡三大类,从性能指标、高可用机制、运维成本、安全能力、生态兼容性五个维度展开……

    2026年4月15日
    7100
  • 新春特惠柬埔寨vps怎么样,柬埔寨vps哪个好

    随着2026年新春佳节的临近,针对海外业务部署与跨境网络访问的需求正在逐步回升,本次我们针对市场上备受关注的柬埔寨VPS进行了深度实测,重点考察其宣称的海外三网优化线路表现以及DDR5内存在实际生产环境中的性能释放,结合平台推出的新春特惠活动,我们将从硬件配置、网络架构、带宽资源及性价比维度进行全面解析,为开发……

    2026年3月9日
    14300
  • BigQuery好用吗?Google数据仓库无服务器分析测评

    BigQuery测评:Google数据仓库,无服务器分析作为Google Cloud的核心分析服务,BigQuery重塑了企业处理海量数据的范式,其完全托管的无服务器架构消除了基础设施运维负担,用户可直接通过SQL接口访问PB级数据,平均查询响应速度较传统方案提升5-10倍,核心架构优势动态资源分离:存储与计算……

    2026年2月12日
    15900
  • Hostnine虚拟主机2.5折值得买吗,香港机房好不好

    Hostnine全场2.5折活动把新加坡/香港机房的虚拟主机、Reseller、VPS拉到同一低价区间;如果你在找SoftLayer线路且预算有限,这次折扣算是近期少见的入手窗口,不过低价只覆盖首期账单,续费会恢复原价,下单前务必确认结算周期,Hostnine 2.5折活动覆盖哪些产品折扣页面把虚拟主机、Res……

    2026年9月17日
    300

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注