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.