APT-Cacher - Seu repositório de pacotes locais

Publicado por Marcos Vinicius Campez em 24/08/2009

[ Hits: 20.683 ]

Blog: http://bytelivre.net

 


APT-Cacher - Seu repositório de pacotes locais



"O apt-cacher é um programa para criar repositórios locais de atualizações sob demanda. Ou seja, você configura o servidor e coloca os clientes de uma rede local apontando para os canais de software (repositórios) desse servidor. Assim, quando uma máquina cliente solicita um pacote, o apt-cacher verifica se ele já existe no servidor, caso sim ele baixa dele, caso não ele baixa o pacote para o servidor e depois copia para a máquina cliente. Isso evita que diversas máquinas em uma rede baixem os mesmos pacotes, economizando assim tempo e banda de conexão." (Ubuntu-br - wiki.ubuntu-br.org/apt-cacher)

Essa dica é indispensável para aqueles que, como eu, administra uma rede Linux ou pelo menos possui mais de um servidor Linux com gerenciador de pacotes o APT.

O problema

Imagine a seguinte situação: você, administrador de rede, possui cinco servidores Linux com distribuições Debian-Like iguais. Certo dia sai uma atualização enorme de segurança ou de qualquer outra coisa e você, como bom administrador, terá que atualizar seus servidores. Baixar cinco vezes os mesmos pacotes? Acho que não né?! Imagine então o aperto que você não irá passar se sua rede for toda em ambiente Linux e ter que atualizar computador por computador baixando pacote por pacote, e no meio desse desperdício de banda seu patrão manda você baixar aquele arquivinho de 500MB que ele precisa urgente. E aí?! Game over!

A solução

Implantar um servidor de pacotes locais! E que software usar? Eu recomendo o APT-Cacher.

Instalação e configuração no servidor

Instalar programas no Ubuntu ou distribuições Debian-Like é muito complicado, como todos sabem, então vamos devagar. Abra o terminal e digite:

sudo apt-get install apt-cacher apache2

O APT-Cacher depende do Apache, então instalamos os dois.

O arquivo de configuração principal do APT-Cacher é o /etc/apt-cacher/apt-cacher.conf. Todas as configurações estão muito bem comentadas em inglês neste arquivo.

Com o arquivo apt-cacher.conf configurado podemos ativar o APT-Cacher na inicialização como um daemon. Para isso abra o arquivo /etc/default/apt-cacher e coloque:

AUTOSTART=1

Salve o arquivo e reinicie o APT-Cacher.

sudo /etc/init.d/apt-cacher restart

Para saber se está tudo ok basta digitar no seu navegador:

http://localhost:3142

Se entrar na página de configuração do APT-Cacher, parabéns! Está tudo ok até agora.

Quando baixamos arquivos tanto pelo APT quanto pelo APTITUDE, os pacotes ficam salvos na pasta /var/cache/apt/archives. Para disponibilizarmos esses pacotes no APT-Cacher existe um script escrito em Perl que faz todo o trabalho para gente, exportando os arquivos da pasta /var/cache/apt/archives para o cache do APT-Cacher. Basta rodarmos o comando:

sudo /usr/share/apt-cacher/apt-cacher-import.pl /var/cache/apt/archives -r

Com isso estamos prontos para configurar os clientes.

Configuração nos clientes

A configuração dos clientes é bem mais simples.

Abra o arquivo /etc/apt/sources.list e edite conforme mostrado abaixo:

deb http://br.archive.ubuntu.com/ubuntu/ jaunty main restricted (modo normal)
deb http://IP_DO_SERVIDOR:3142/br.archive.ubuntu.com/ubuntu/ jaunty main restricted (modo APT-Cacher)

Faça isso em todo seu conteúdo da sources.list e dê um update nos repositórios. Aconselho ir mudando e atualizando aos poucos, caso houver algum erro você saberá exatamente aonde ocorreu.

Com isso, quando você for instalar, por exemplo, o pacote aMSN, o cliente irá procurar no servidor APT-Cacher, se o pacote aMSN existir no servidor, o cliente baixa o pacote do próprio, caso não exista ele baixa o pacote da internet pelo servidor e encaminha o mesmo para o cliente. Quando algum outro cliente for baixá-lo, ele já estará disponível localmente.

Até a próxima! (-:

Mais dicas, tutoriais e artigos, acessem meu blog: tavernadosilicio.wordpress.com

Outras dicas deste autor

RabbitVCS - Cliente SVN para Linux

Apache - Criando Virtual Hosts

Instalando o VirtualBox

Instalando o Foxit Reader em sua distribuição Linux

Servidor FTP ativo no CentOS com o vsftpd

Leitura recomendada

Como instalar codecs no Kaffeine - openSUSE

XFCE, o rápido e eficiente window manager

Colabore com documentação para o Gambas

sb-get: Gerenciador de pacotes para Slackware Linux que usa SlackBuilds

Desktop 3D (Looking Glass) - Instalação simples no Debian

  

Comentários
[1] Comentário enviado por rafaelhenrique em 29/12/2009 - 14:36h

Cara to com uma dúvida, tipo, se eu mandar baixar um pacote no cliente e este pacote não existe no servidor (APT-Cacher) este pacote ficará no cache do cliente ou no cache do servidor, ou nos dois caches?

Abraço e parabéns pela dica!

[2] Comentário enviado por michellenery em 24/03/2010 - 11:34h

Estou com um problema, eu tenho 2 SOs instalados, Windows e o ubuntu, entretanto quando configuro o cliente apt-cacher, atualizo e instalo os pacotes, simplesmente o Windows some, o linux também. Só fica detectando erros na memória. Alguém poderia me ajudar?
[]'s

[3] Comentário enviado por michellenery em 24/03/2010 - 11:37h

Rafael, eu acho que tenho a resposta:
http://wiki.ubuntu-br.org/apt-cacher

[4] Comentário enviado por erasmo em 30/12/2011 - 12:03h

Marcos,

O host não esta atualizando os pacotes, quando usa o apt-get udpate, o que pode ser?

obrigado



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts