как обойти проблему «выпуск файла истек» на локальном зеркале

<p>у меня есть локальное зеркало (созданное с помощью debmirror), и когда я запускаю <code>apt-get update</code> через несколько дней я получаю это:</p><pre><code>e: release file expired, ignoring file:/home/wena/.repo\_bin/dists/sid/release (invalid since 14h 31min 45s) </code></pre><p>как мне обойти это?</p>

<p>добавьте это к команде:</p><pre><code>-o acquire::check-valid-until=false </code></pre><p>например:</p><pre><code>sudo apt-get -o acquire::check-valid-until=false update </code></pre>

<p>если вам не нужна эта проверка, независимо от того, для какого зеркала, просто создайте файл в <code>/etc/apt/apt.conf.d/</code> (например, назовите его <code>10no--check-valid-until</code>) и поместите опцию прямо там:</p><pre><code>acquire::check-valid-until "0"; </code></pre><p>после этого вы никогда больше не будете обеспокоены упомянутым предупреждением.</p>

<p>файлы выпуска имеют действительную запись до, например, <code>valid-until: thu, 07 oct 2010 08:17:56 utc</code></p><p>если файл релиза больше не действителен, вы должны снова запустить debmirror, чтобы проверить, есть ли какие-либо изменения в хранилище. одним из изменений будет файл релиза, и вы получите новый срок его действия.</p><p>вы можете легко автоматизировать это с помощью записи в crontab.</p>

<p>это также может произойти, если ваша системная дата/время неверны. я исправил это, исправив свое местное время перед обновлением.</p>

<p>не уверен, связано ли это с текущей проблемой джесси ( <a href="https://lists.debian.org/debian-devel-announce/2019/03/msg00006.html">https://lists.debian.org/debian-devel-announce/2019/03/msg00006.html</a> ) или нет. но для тех, кто получил такую же ошибку, даже уже используется</p><pre><code>sudo apt-get -o acquire::check-valid-until=false update </code></pre><p>и все же произошла та же проблема, можете попробовать это вместо</p><pre><code>echo 'acquire::check-valid-until no;' > /etc/apt/apt.conf.d/99no-check-valid-until </code></pre><p>меня устраивает :)</p>

<p>некоторые зеркала могут содержать устаревшие файлы. это недавно произошло со мной, и это также было связано с сервером кэширования, который я использую (apt-cacher-ng), который пытается сэкономить пропускную способность, перенаправляя хранилища для одного и того же архива в один объект (в моем случае, если это был венгерское зеркало). прямые обновления через немецкое зеркало работали нормально, например. попробуйте сменить зеркало, которое вы используете. если вы используете apt-cacher-ng, вам нужно будет что-то сделать в строке изменения содержимого следующего файла:</p><ul> <li>/ и т.д./кв-бинокль-нг/backends\_debian</li> <li>/ и т.д./кв-бинокль-нг/backends\_debvol</li> </ul><p>после этого вы должны также перезапустить apt-cacher-ng, чтобы изменения вступили в силу.</p>

<p>я удалил <code>/var/lib/apt/*</code> и перезапустить <code>apt-get update</code>, и это работает!</p>

<p>зеркало не может быть просрочено.</p><p>скорее всего, что-то еще в вашей системе может быть испорчено. попробуй это:</p><hr><p>1) временно закомментируйте связанные строки из <code>/etc/apt/sources.list</code>, или <code>/etc/apt/source.list.d/*</code>. например, после того, как я закомментировал следующие две строки, моя ошибка исчезла (вследствие чего эти архивы временно не использовались для перезагрузок):</p><pre><code>deb http://security.debian.org/ stretch/updates non-free contrib main deb http://mirrors.ocf.berkeley.edu/debian/ stretch-updates main contrib non-free </code></pre><p>2) откройте синаптический и перезагрузите, или, вероятно, <code>sudo apt-get update</code> также будет работать.</p><p>3) прокомментируйте эти строки обратно.</p><p>4) повторите шаг 2.</p><hr><p>исправлено это для меня. я предполагаю, что в моем подходящем кеше плохая дата.</p><p>моя проблема возникла после восстановления файловых систем/(root) и/var из снимков btrfs, чтобы помочь устранить возникшую проблему при установке пакета. точное сообщение об ошибке, которое я получил, было:</p><blockquote> <p>срок действия файла для <a href="http://mirrors.ocf.berkeley.edu/debian/dists/stretch-updates/inrelease">http://mirrors.ocf.berkeley.edu/debian/dists/stretch-updates/inrelease</a> истек (недействителен с 5d 4h 50min 18s). обновления для этого хранилища не будут применяться. срок действия файла релиза для <a href="http://security.debian.org/dists/stretch/updates/inrelease">http://security.debian.org/dists/stretch/updates/inrelease</a> истек (недействителен с 2d 2h 52min 43s). обновления для этого хранилища не будут применяться.</p> </blockquote>