É possível espelhar os repositórios do apt?

13

Sou estudante da Case Western Reserve University, e a largura de banda dos servidores Ubuntu para a minha localização geralmente é terrivelmente ruim (da ordem de algumas centenas de bytes por segundo). Eu e alguns amigos gostariamos de poder baixar os pacotes uma vez e colocá-los em cache para o restante de nossas instalações do Ubuntu no campus. Para fazer isso, precisaríamos configurar nossos próprios repositórios APT ou configurar alguma forma de servidor de cache (squid?) No qual poderíamos apontar nossos sistemas.

A instalação desse espelho é um processo difícil? Como alguém conseguiria isso?

Billy ONeal
fonte
Nem 1k / s? Eu recomendo que você reclame com o administrador do sistema. Até o wifi gratuito da Starbucks pode atingir 150k / s.
Gödel
1
@ Gödel: A conexão real é muito mais rápida - recebo downloads de 1 MB / s em praticamente todos os lugares, exceto coisas relacionadas à aptidão. O espelho é apenas parece ser extremamente lento.
Billy ONeal
1
Eu também estou na CWRU e vi menos que velocidades estelares no espelho padrão. Você já tentou usar um espelho na Internet2, como mirror.anl.gov? Geralmente, posso obter velocidades superiores a 1 MB / s para esses espelhos.
precisa
@ Eric: Ah - mudar o espelho parece resolver o problema. Talvez o bit "Selecionar melhor espelho" se preocupe mais com a latência do que com a largura de banda. Obrigado!
Billy ONeal

Respostas:

10

Você pode usar o apt-proxy em vez de um espelho completo, pois isso levará consideravelmente menos espaço e tempo para ser configurado:

https://help.ubuntu.com/community/AptProxy

Você precisaria atualizar as listas de repositórios para quem quiser usar seu proxy.

ImaginaryRobots
fonte
4

Existem várias maneiras de espelhar um repositório ou downloads de pacotes de cache. Qual é a melhor solução depende de quantas pessoas vão usá-lo e qual infraestrutura já está disponível.

Por exemplo, muitas universidades já possuem espelhos de software locais e, nesse caso, a solução mais fácil é provavelmente adicionar o Ubuntu a esse espelho. ;)

E se a sua universidade já possui um servidor proxy, pode ser possível usá-lo (talvez com algumas configurações personalizadas para os repositórios?).

Quando você deseja espelhar o todo ou uma parte dos repositórios oficiais (e / ou outros repositórios), você pode usar algo como apt-mirror, debmirror, debpartial-mirror, mirrorkitouubumirror . O espelhamento de repositórios inteiros pode gerar muitos pacotes que ninguém usa, por isso, se a largura de banda é realmente um problema (mesmo à noite), pode ser útil espelhar apenas os pacotes populares ...

Quando você deseja armazenar em cache apenas os pacotes usados , existe apt-cacher, apt-cacher-ngou apt-p2p, ou um proxy como o Squid.

Uma vantagem de ter um espelho local (quando comparado a um cache) é que a instalação / atualizações sempre serão rápidas (para os pacotes disponíveis no espelho), enquanto, ao usar um cache, a primeira pessoa que precisa de um pacote precisará aguarde até que seja baixado. Você também pode configurar o espelho para atualizar à noite, para que o download de pacotes ocorra quando (quase) ninguém mais estiver usando o uplink da Internet.

A vantagem de usar um cache é que você baixará exatamente exatamente quais pacotes são necessários e nunca mais do que isso.

JanC
fonte