apt-get update falha ao encontrar alguns espelhos

0

Eu configurei minhas fontes para usar o protocolo mirrors:// "para encontrar servidores perto de mim, principalmente porque eu me mudo bastante.

No entanto, por algum motivo, ele não funciona para todos os repos - quando eu executo sudo apt-get update , recebo um monte de erros (cerca de 45) como o seguinte:

W: Failed to fetch mirror://mirrors.ubuntu.com/mirrors.txt/dists/raring/main/source/Sources  404  Not Found [Mirror: http://giano.com.dist.unige.it/ubuntu/]

W: Failed to fetch mirror://mirrors.ubuntu.com/mirrors.txt/dists/raring/universe/source/Sources  404  Not Found [Mirror: http://giano.com.dist.unige.it/ubuntu/]

Se bem me lembro, configurei isso através da GUI, mas ainda fui e olhei o que as linhas correspondentes a esses repos disseram em /etc/apt/sources.list - foi o que encontrei:

deb-src mirror://mirrors.ubuntu.com/mirrors.txt raring main restricted
deb-src mirror://mirrors.ubuntu.com/mirrors.txt raring universe

(Não consegui mapear todos os erros para as linhas de sources.list , mas acho que é só porque não tenho 100% de certeza do que estou procurando ...)

Eu pensei que o ponto de configurar as fontes como essa era certificar-se de que mirrors.ubuntu.com escolhe um espelho que tenha os repositórios de que você precisa. Por que estou recebendo erros 404 aqui e o que posso fazer sobre isso?

Eu preferiria continuar usando a configuração dos espelhos, em vez de usar servidores específicos codificados para obter tudo, se possível.

Atualização:
Graças aos comentários úteis nas primeiras respostas, consegui eliminar problemas de manutenção e firewall do servidor - não tenho nenhum problema em obter outras coisas do mesmo servidor, usando o protocolo espelho. O problema é que as fontes não estão disponíveis no espelho que eu estou apontando para . Em outras palavras, todos os pacotes estão lá, então as linhas em sources.list que começam com deb não têm problemas, mas deb-src linhas falham.

Eu também verifiquei abrindo, e. link no meu navegador. De acordo com a mensagem de erro, apt-get procura por um subdiretório desse diretório chamado source , que não existe. Portanto, o problema não está se conectando ao servidor, mas o servidor não tem os recursos que estou procurando.

Eu assumo que cabe ao espelho decidir se eles querem fornecer as fontes também ou apenas os pacotes, mas estou surpreso que mirrors.ubuntu.com me serve um espelho que não tem o que eu peço. Eu vejo três opções e também não gosto:

  • Codifique as origens de deb-src resources para servidores onde eu sei que eles estão disponíveis, ou seja, sacrifique o protocolo mirror nessas instâncias.
  • Desmarque pacakges de origem em Fontes de software, ou seja, sacrifique o download de fontes para os pacotes.
  • Ignore as mensagens de erro de apt-get e espere mirrors.ubuntu.com direcione-me para um servidor diferente no futuro.

Existe uma quarta opção que realmente resolve o problema? =)

    
por Tomas Aschan 03.05.2013 / 16:13

3 respostas

1

O protocolo de espelhos escolheu o servidor espelho mais próximo, que é http://giano.com.dist.unige.it/ubuntu/ . Mas, neste caso, http://giano.com.dist.unige.it/ubuntu/ falhou em responder com uma resposta válida. (Podem estar fazendo uma pequena manutenção)

E parece que está ativo e em funcionamento até o momento da redação deste texto.

Por favor, tente novamente. Seu problema pode ter sido resolvido. :)

Foi o que consegui quando abri o URL do navegador.

Se você ver, há dois itens que foram modificados pela última vez hoje.

    
por thefourtheye 03.05.2013 / 17:10
0

Se forem apenas os pacotes deb-src que estão falhando, isso não é um problema. O deb-src contém apenas o código-fonte, portanto, a menos que você esteja hackeando o código-fonte, você realmente não precisa deles (em geral, há exceções ocasionais).

No entanto, eu vi isso acontecer quando se deslocam para diferentes redes por várias razões. Tente o seguinte para ver se eles ajudam:

  1. Limpe os pacotes baixados em caso de falha de um espelho devido à incompatibilidade de versão: sudo apt-get clean . Isso corrigiu a questão uma vez, mas poderia ter sido uma coincidência. É fácil tentar embora.
  2. Verifique se um firewall não está bloqueando seus pacotes de saída. Normalmente apt usa portas de saída 80 (para HTTP) e 21 (para FTP). Se um firewall de saída estiver bloqueando isso, isso poderá causar problemas. Eu não sei exatamente qual porta o protocolo miirrors usa, mas ele precisa ser permitido através do firewall também. Existem algumas maneiras diferentes de descobrir as portas. Deixe-me saber se você precisa de orientação. Certifique-se também de que um firewall também não esteja bloqueando os pacotes de entrada. Isso geralmente não é um problema porque a maioria dos firewalls é stateful e eles esperam respostas de volta para conexões originadas dentro da rede.
  3. Verifique suas configurações de proxy. Normalmente, configurar o proxy para "auto" é suficiente, mas às vezes não é. Verifique com o administrador da rede para ver se você precisa de configurações de proxy especiais. Alguns proxies tratam o tráfego do apt de forma diferente do HTTP regular.
por Freedom_Ben 03.05.2013 / 17:21
0

Eu tive este problema um bem em Raspbian como um pacote particular estava sendo redirecionado para um mirror / archive hospedado em pdx.edu. O servidor de arquivamento no pdx.edu não está respondendo e não está acessível ... o que fazer?

No meu exemplo, eu estava tentando instalar o pacote 'pptp-linux'. Eu precisava encontrar um espelho para Raspbian que tenha este pacote. Você pode precisar encontrar um espelho para o seu sabor de distribuição e o exemplo para o meu foi listado aqui: link

Eu escolhi um nos EUA e o adicionei ao meu /etc/apt/sources.list no topo do arquivo:

deb http://distribution-us.hexxeh.net/raspbian/archive/raspbian wheezy main contrib non-free rpi

Salve as alterações e atualize o apt-get:

apt-get update

Muita atualização, zoom zoom ... e, em seguida, tentando instalar o meu pacote e apt-get downloads do novo espelho. Complete!

    
por goethesf 01.03.2014 / 19:53