You need to enable JavaScript to run this app.
文档中心
云服务器

云服务器

复制全文
下载 pdf
Linux操作系统问题
如何解决Debian security APT软件源Release/InRelease文件过期问题?
复制全文
下载 pdf
如何解决Debian security APT软件源Release/InRelease文件过期问题?
问题描述
在Debian操作系统中,通过APT(Advanced Package Tool,软件包管理工具)执行 apt updateapt-get update 命令时,软件源可能因Release/InRelease文件元数据超过有效期而被拒绝使用。
报错示例:
E: Release file for http://mirrors.example.com/debian-security/dists/bullseye-security/InRelease is expired Ginvalid since 18h 47min 0s). Updates for this repository will not be applied
注意
出现该问题后,APT将无法加载故障源的软件包索引,依赖该源的软件包也就无法检索、安装或升级。在镜像构建、CI/CD或自动化运维场景中,可能直接导致任务失败。
问题原因
APT会读取软件源的Release/InRelease文件,并通过APT的安全机制(apt-secure)校验来源、签名和元数据状态。部分软件源会在元数据中设置以下时间字段:
字段
说明
Date
元数据的生成时间。
Valid-Until
元数据的有效期截止时间。超过该时间后,APT默认拒绝继续使用该索引,以降低旧仓库元数据被重放的风险。
当满足如下任一条件时,APT会判定该软件源的Release/InRelease文件“已过期”并拒绝使用:
  • 软件源上游未按时重新生成元数据(如发布流程延迟、镜像同步滞后),导致Valid-Until早于当前时刻。
  • 本机系统时钟异常,且系统时间快于实际时间,导致APT误判当前系统时间已超过Valid-Until
解决方案
本节为您提供关闭故障源的有效期校验,规避报错问题的方案。适用于上游尚未恢复、但业务必须立即安装或更新软件包的场景。
注意
关闭有效期校验会削弱对旧仓库元数据重放的防护,执行前请确认软件源可信、故障范围明确,并记录所修改的条目。
  1. 请根据报错提示,确认有问题的软件源及其所在的配置文件,通常为/etc/apt/sources.list/etc/apt/sources.list.d/*.list
  1. 执行如下命令,备份软件源配置。
说明
请将/etc/apt/sources.list替换为实际软件故障源所在配置文件路径。
  • sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
  1. 关闭故障源有效期校验。
  1. 执行如下命令,编辑软件源配置文件。
说明
请将/etc/apt/sources.list替换为实际软件故障源所在配置文件路径。
  • vim /etc/apt/sources.list
  1. i键进入编辑模式,在目标故障源debdeb-src条目的URL前添加[check-valid-until=no]选项。
说明
若该源条目已有其他选项(如[arch=amd64]),请将check-valid-until=no合添加至已有选项模块内并以空格分隔,例如[arch=amd64 check-valid-until=no])。
  1. esc键退出编辑模式,输入:wq按回车键,保存并退出文件。
  1. 执行如下命令,验证是否可以正常进行更新操作。
  • sudo apt update
  • 若APT不再出现过期报错,表示已成功关闭故障源的有效期校验。
  1. 后续,您可以按需回滚软件源配置或重新启用元数据有效期检查。
  • 回滚配置
  • 若上述修改导致新的问题或您需要回滚配置,请执行如下命令,使用备份文件进行回滚。
说明
请将/etc/apt/sources.list替换为实际软件故障源所在配置文件路径。
  • sudo cp /etc/apt/sources.list.bak /etc/apt/sources.list
  • 重新启用元数据有效期检查
  • 当您确认软件源上游已发布新的Release/InRelease文件后,建议您移除[check-valid-until=no]配置,重新启用元数据有效期检查。
  1. 执行如下命令,编辑软件源配置文件。
说明
请将/etc/apt/sources.list替换为实际软件故障源所在配置文件路径。
  • vim /etc/apt/sources.list
  1. i键进入编辑模式,删除目标源debdeb-src条目的URL前添加的[check-valid-until=no]选项。
  1. esc键退出编辑模式,输入:wq按回车键,保存并退出文件。
  1. 执行如下命令,确认软件源可用,且没有再次出现过期报错。
  • sudo apt update
最近更新时间:2026.09.07 17:32:28
这个页面对您有帮助吗?
有用
有用
无用
无用