como selecionar automaticamente o espelho rápido para o apt-get

2

Existe algum plug-in disponível para o apt-get para selecionar o espelho rápido, assim como o plugin do fastestmirror do YUM O plugin espelho mais rápido é projetado para uso em configurações de repositório onde você tem mais de um espelho em uma configuração de repositório. Ele faz uma conexão com cada espelho, cronometrando a conexão e, em seguida, classifica os espelhos de maneira mais rápida a mais lenta para uso pelo yum.

Motivo: eu adicionei vários espelhos (intranet e internet) no arquivo de configuração do apt, e quero que o apt-get use o espelho da intranet quando estou no escritório e a Internet espelhar em casa.

    
por Ted 20.08.2012 / 13:46

1 resposta

1

Como solução alternativa, você pode escrever um script que verifique em qual rede você está conectado e altere /etc/apt/sources.list de acordo. Algo parecido com o script abaixo, basta editá-lo para atender às suas necessidades.

Primeiro, faça um backup do seu /etc/apt/sources.list . Em seguida, crie dois arquivos sources.list, um para sua casa e outro para o escritório. Vamos supor que eles sejam chamados de sources.office.list e sources.home.list . Salve os dois em /etc/apt/ .

Agora, edite o script a seguir para atender às suas necessidades salve-o (para este exemplo, suponho que você o salve como ~/bin/change_sources.sh ) e torne-o executável executando este comando:

$ chmod +x ~/bin/change_sources.sh

O script:

#!/bin/bash
ip=ifconfig | grep Bcast | cut -d " " -f 12

## Set this for your office IP
if [ $ip == "XXX.XXX.XXX.XXX" ]
then 
    cp /etc/apt/sources.office.list /etc/apt/sources.list 
else
    cp /etc/apt/sources.home.list /etc/apt/sources.list 
fi

Agora, edite o arquivo etc/rc.local e adicione essa linha ao final do arquivo, antes de exit(0) :

/home/youruser/bin/change_sources.sh

Obviamente, altere o caminho acima para refletir o caminho para o script que você acabou de criar.

Na próxima vez que você reiniciar, o script deve ser executado e escolher automaticamente o arquivo sources.list correto.

EDIT: Se você quer ter ambos repositórios acessíveis o tempo todo, e baixar um pacote do mais rápido, se presente, você só precisa mudar a ordem dos repositórios nos fontes. Lista. Siga o procedimento que sugeri acima, simplesmente faça com que as linhas relevantes em /etc/apt/sources.office.list sejam assim:

deb http://fastest.mirror.for.office
deb http://fastest.mirror.for.home

e em /etc/apt/sources.home.list assim:

deb http://fastest.mirror.for.home
deb http://fastest.mirror.for.office

Se existir um pacote com a mesma versão em ambos os repositórios, o apt baixará do primeiro.

NOTA 1: Se as versões forem diferentes, o apt receberá o mais novo independentemente da ordem em que os repositórios estão.

NOTA2: Isso não verifica a velocidade de download dos repositórios. Você tem que fazer isso sozinho. Para encontrar o espelho mais rápido, você pode tentar usar o netselect-apt:

sudo apt-get install netselect-apt

Package netselect-apt:

speed tester for choosing a fast Debian mirror

This package provides a utility that can choose the best Debian mirror by downloading the full mirror list and using netselect to find the fastest/closest one.

    
por 20.08.2012 / 17:10