ti-enxame.com

Como contornar o problema "Liberar arquivo expirado" em um espelho local

Eu tenho um espelho local (criado com o debmirror) e quando executo apt-get update depois de alguns dias, recebo o seguinte:

E: Release file expired, ignoring file:/home/wena/.repo_bin/dists/sid/Release (invalid since 14h 31min 45s)

Como faço para resolver isso?

71
tshepang

Adicione isto ao comando:

-o Acquire::Check-Valid-Until=false

Por exemplo:

Sudo apt-get -o Acquire::Check-Valid-Until=false update
110
A A

Se você não se importa com essa verificação, não importa para qual espelho, basta criar um arquivo em /etc/apt/apt.conf.d/ (por exemplo, nomeie 10no--check-valid-until) e coloque a opção diretamente lá:

Acquire::Check-Valid-Until "0";

Depois disso, você nunca mais será incomodado com o aviso mencionado.

40
Jaleks

Os arquivos de liberação têm uma entrada válida até, por exemplo Valid-Until: Thu, 07 Oct 2010 08:17:56 UTC

Se o arquivo de liberação não for mais válido, execute o debmirror novamente para verificar se há alguma alteração no repositório. Uma mudança será o arquivo de lançamento e você receberá uma nova validade.

Você pode automatizar isso facilmente com uma entrada crontab.

11
echox

Isso também pode acontecer se a data/hora do sistema estiver incorreta. Eu o corrigi corrigindo meu horário local antes de fazer a atualização.

6
MarrekNožka

Não tenho certeza se está relacionado ao problema atual de Jessie ( https://lists.debian.org/debian-devel-announce/2019/03/msg00006.html ) ou não. mas para aqueles que tem o mesmo erro até já usaram

Sudo apt-get -o Acquire::Check-Valid-Until=false update

e ainda ocorreu o mesmo problema, tente isso em vez disso

echo 'Acquire::Check-Valid-Until no;' > /etc/apt/apt.conf.d/99no-check-valid-until

Funciona para mim :)

4
Alex Chandra

Alguns dos espelhos podem ter arquivos obsoletos. Isso aconteceu comigo recentemente, e também estava vinculado ao servidor de cache que estou usando (apt-cacher-ng), que tenta economizar largura de banda redirecionando os repositórios do mesmo arquivo para uma única entidade (no meu caso, se Espelho húngaro). Atualizações diretas através do espelho alemão funcionaram bem, por exemplo. Tente mudar o espelho que você está usando. Caso você esteja usando o apt-cacher-ng, precisará fazer algo na linha de alteração do conteúdo do seguinte arquivo:

  • / etc/apt-cacher-ng/backends_debian
  • / etc/apt-cacher-ng/backends_debvol

Depois disso, você também deve reiniciar o apt-cacher-ng para que as alterações entrem em vigor.

3
user4973

Eu removi /var/lib/apt/* e execute novamente apt-get update, e funciona!

2
Patrick

O espelho pode não ter expirado.

Em vez disso, algo mais no seu sistema pode estar bagunçado. Tente o seguinte:


1) Comente temporariamente as linhas relacionadas de from /etc/apt/sources.list ou /etc/apt/source.list.d/*. Por exemplo, depois de comentar as duas linhas a seguir, meu erro foi eliminado (com a conseqüência de que esses arquivos temporariamente não foram usados ​​para recarregamentos):

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) Abra o synaptic e recarregue, ou provavelmente Sudo apt-get update também funcionaria.

3) Comente essas linhas novamente.

4) Repita a etapa 2.


Corrigido isso para mim. Suponho que meu cache apt tenha uma data ruim.

Meu problema ocorreu após a restauração dos meus sistemas de arquivos/(root) e/var a partir dos instantâneos btrfs para ajudar a corrigir um problema de instalação de pacote que ocorreu. A mensagem de erro exata que eu estava recebendo era:

Libere o arquivo para http://mirrors.ocf.berkeley.edu/debian/dists/stretch-updates/InRelease expirou (inválido desde 5d 4h 50min 18s). As atualizações para este repositório não serão aplicadas. O arquivo de lançamento para http://security.debian.org/dists/stretch/updates/InRelease expirou (inválido desde 2d 2h 52min 43s). As atualizações para este repositório não serão aplicadas.

0
Elliptical view