我有一个本地镜像(使用debmirror创建),apt-get update
几天后运行时,我得到了:
E: Release file expired, ignoring file:/home/wena/.repo_bin/dists/sid/Release (invalid since 14h 31min 45s)
我该如何解决?
我有一个本地镜像(使用debmirror创建),apt-get update
几天后运行时,我得到了:
E: Release file expired, ignoring file:/home/wena/.repo_bin/dists/sid/Release (invalid since 14h 31min 45s)
我该如何解决?
Answers:
将此添加到命令:
-o Acquire::Check-Valid-Until=false
例如:
sudo apt-get -o Acquire::Check-Valid-Until=false update
如果您不关心此检查,那么无论使用哪个镜像,都只需在其中创建文件/etc/apt/apt.conf.d/
(例如10no--check-valid-until
,将其命名为),然后将选项直接放在其中即可:
Acquire::Check-Valid-Until "0";
在此之后,您将再也不会受到上述警告的困扰。
echo "Acquire::Check-Valid-Until false;" | tee -a /etc/apt/apt.conf.d/10-nocheckvalid
发行文件具有有效至直到的条目,例如 Valid-Until: Thu, 07 Oct 2010 08:17:56 UTC
如果发行文件不再有效,则应再次运行debmirror来检查存储库中是否有任何更改。更改将是发布文件,您将对其具有新的有效性。
您可以使用crontab条目轻松地自动执行此操作。
那里的某些镜像可能具有陈旧的文件。这最近发生在我身上,并且还与我正在使用的缓存服务器(apt-cacher-ng)绑定,该服务器试图通过将同一档案的存储库重定向到单个实体来节省带宽(在我的情况下,如果是匈牙利的镜子)。例如,通过德国镜像直接更新可以。尝试更换您正在使用的镜子。如果您使用的是apt-cacher-ng,则需要在更改以下文件内容的那一行中做一些事情:
之后,您还应该重新启动apt-cacher-ng才能使更改生效。
如果您的系统日期/时间错误,也会发生这种情况。我通过在更新之前更正本地时间来解决此问题。
不确定其是否与Jessie当前问题(https://lists.debian.org/debian-devel-announce/2019/03/msg00006.html)相关。但是对于那些已经使用过的错误
sudo apt-get -o Acquire::Check-Valid-Until=false update
仍然出现相同的问题,可以尝试使用
echo 'Acquire::Check-Valid-Until no;' > /etc/apt/apt.conf.d/99no-check-valid-until
这个对我有用 :)
镜像可能没有过期。
相反,您系统上的其他内容可能会混乱。尝试这个:
1)暂时从/etc/apt/sources.list
或中注释掉相关行/etc/apt/source.list.d/*
。例如,在注释掉以下两行之后,我的错误消失了(结果是这些存档暂时不用于重新加载):
deb http://security.debian.org/ stretch/updates non-free contrib main
deb http://mirrors.ocf.berkeley.edu/debian/ stretch-updates main contrib non-free
2)打开突触并重新加载,或者可能sudo apt-get update
也可以。
3)重新注释这些行。
4)重复步骤2。
为我修复了此问题。我猜我的apt缓存有一个错误的日期。
从btrfs快照还原我的/(根)和/ var文件系统以帮助解决出现的软件包安装问题后,发生了我的问题。我收到的确切错误消息是:
http://mirrors.ocf.berkeley.edu/debian/dists/stretch-updates/InRelease的发布文件 已过期(自5d 4h 50min 18s起无效)。此存储库的更新将不会应用。http://security.debian.org/dists/stretch/updates/InRelease的发布文件 已过期(自2d 2h 52min 43s起无效)。此存储库的更新将不会应用。