Como diminuir o tempo de espera para atualizações do repositório

30

Ao fazer um aptitude update / apt-get update ou usar o Update Manager para atualizar, às vezes chego a um link do repositório que demora muito. O percentual não termina e leva um bom tempo até que seja ignorado.

Como posso diminuir o tempo para que, se um determinado repositório levar mais de 10 segundos para se conectar ou terminar, ele deva ignorá-lo e mover os seguintes. Aqui está uma imagem explicando o problema:

Ele está tentando se conectar ao archive.ubuntu.com mas, como está demorando demais, fica ali por pelo menos 3 a 5 minutos (não mediu o tempo) e, em seguida, mostra como ignorado e passa para o seguinte. Desejo alterar isso para segundos em vez de minutos.

    
por Luis Alvarado 24.05.2012 / 07:42

3 respostas

35
  

Como posso diminuir o tempo para que, se um determinado repositório levar mais de 10 segundos para conectar ou concluir, ele deva ignorá-lo e mover os seguintes?

Os espelhos são uma opção, como explicado @adempewolff. Deixe-me dar uma resposta direta:

Configurando tempos limite de conexão do apt-get

Você pode controlar esses tempos limite por meio das seguintes opções apt.conf :

  Acquire::http::Timeout "10";
  Acquire::ftp::Timeout "10";
  

Observe que isso só se aplica a tempos limite de conexão, NÃO a tempos limite de "término", ou seja, se ele se conectar em 10 segundos, continuará fazendo o download de um pacote de 100 MB, mesmo se estiver em 1 KB / segundo:

Para implementar essas opções, basta criar um arquivo conf em /etc/apt/apt.conf.d ; suponha que chamamos de 99timeout .

  • Pressione Alt+F2 , tipo gksudo gedit /etc/apt/apt.conf.d/99timeout
  • Digite / cole as linhas acima, com sua escolha de tempo limite em segundos
  • Salve e saia.
  • Agora, experimente sudo apt-get update

E o "encontrar o melhor servidor" do viciado em terminal hack!

Expandido e movido como uma resposta para esta pergunta mais apropriada

Opções adicionais de conf-get conf que você pode tentar ajustar

  • Acquire::Queue-Mode : modo de enfileiramento; O Modo Fila pode ser um dos host ou access que determina como o APT faz o paralelismo das conexões de saída. host significa que uma conexão por host de destino será aberta, access significa que uma conexão por tipo de URI será aberta.

  • Acquire::Retries : número de novas tentativas para executar. Se este for diferente de zero, o APT repetirá os arquivos com falha o número de vezes especificado.

  • Acquire::http::Dl-Limit : aceita valores inteiros em kilobytes, para reduzir a velocidade de download e não diminuir a velocidade de navegação / email / etc. ao atualizar. O valor padrão é 0, que desativa o limite e tenta usar o máximo possível da largura de banda. Se ativada, desativará o recurso de download paralelo de apt-get .

  • Percorra man apt.conf se achar que alguma outra coisa pode ajudar!

por ish 24.05.2012 / 08:06
5

Geralmente, certos repositórios que estão sendo carregados com lentidão lenta são apenas um sintoma do uso de um espelho lento. Os espelhos padrão para muitas regiões não são os mais rápidos (eu sei que este é o caso na China).

Mudar seu espelho é feito com facilidade através da GUI de fontes de software. Você pode abrir essa janela de duas maneiras:

  1. Abra Ubuntu Software Center e clique em Software Sources no menu Edit .

ou

  1. Abra um terminal (ou digite alt-F2 ) e execute software-properties-gtk

Quando essa janela aparecer, você verá um menu suspenso dizendo Download From: que seleciona o seu espelho. Selecione a opção Other neste menu.

Na nova janela que aparecer, clique no botão Selecione o melhor servidor e isso irá testar e escolher automaticamente o servidor mais rápido para a sua localização.

Espero que isso ajude!

Veja também:

2
O

apt-fast funciona como apt-get , mas faz o download de atualizações e pacotes de repositórios em paralelo. Veja este tutorial para aprender como usá-lo.

    
por tslocum 27.04.2013 / 08:24

Tags