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

执行apt-get update时出现无效签名错误:原因及解决方法

Hey,我经常在Stack Overflow上帮人解决Kali的这类问题,碰到apt-get update报无效签名错误,大概率是这几个原因,对应解决办法也很直接:

可能的触发原因
  • 密钥过期或未更新:Kali官方会定期轮换软件源的签名密钥,如果你的系统里存储的还是旧密钥,验证新的源文件时就会失败。
  • 软件源配置有问题:比如你加了第三方非官方源、或者源地址失效/写错了,这些源的签名密钥不在系统的信任列表里,自然过不了验证。
  • 系统时间偏差太大:签名验证对时间很敏感,如果系统时间早于密钥生效时间,或者晚于密钥过期时间,都会被判定为无效签名。
  • 缓存的源文件损坏:之前下载的源索引文件(比如InRelease、Release.gpg)损坏,导致签名校验不通过。
对应的解决步骤

1. 更新Kali官方签名密钥

这是最常用的修复方式,直接导入最新的官方密钥:

wget -q -O - https://archive.kali.org/archive-key.asc | gpg --dearmor | sudo tee /usr/share/keyrings/kali-archive-keyring.gpg > /dev/null

如果上面的命令执行有问题,也可以通过密钥服务器获取官方密钥:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys ED444FF07D8D0BF6

2. 修复软件源配置

先备份当前的源文件,避免改错后无法恢复:

sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak

然后编辑源配置文件,替换成官方或国内靠谱的镜像源(比如阿里云镜像,速度更快):

sudo nano /etc/apt/sources.list

把文件内容替换为:

deb https://mirrors.aliyun.com/kali kali-rolling main non-free contrib
deb-src https://mirrors.aliyun.com/kali kali-rolling main non-free contrib

保存退出(按Ctrl+O确认保存,回车,再按Ctrl+X退出nano),之后重新执行sudo apt-get update试试。

3. 同步系统时间

如果是时间问题导致的,先安装并同步网络时间:

sudo apt install ntpdate -y
sudo ntpdate pool.ntp.org

为了避免下次开机时间又乱,开启时间同步服务自启:

sudo systemctl enable ntpdate

4. 清理缓存并重新下载源文件

如果是缓存的源文件损坏,先清理缓存再重新获取:

sudo apt clean
sudo apt update --fix-missing

内容的提问来源于stack exchange,提问作者Niraj Chemjong

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 04:02:45