De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.

apt-cacher - configuração local de repositórios Debian

Colaboração: André Luiz Facina

Data de Publicação: 22 de Fevereiro de 2009

Quando temos vários servidores com a mesma distribuição é interessante criar um repositório de cache local, de modo que, uma vez que um pacote é baixado de um repositório oficial, todos os outros servidores irão baixar do repositório local, não sendo mais necessário realizar novamente o cansativo download dos pacotes que já foram baixados.

Ainda mais quando trabalhamos com linux e precisamos realizar o apt-get upgrade em todos os servidores, não seria nada agradável ter que baixar da internet os mesmos pacotes que já foram baixados em outro servidor ;-)

Para isso, mais uma vez o Debian se destaca com a ferramenta apt-cacher, sendo a instalação e configuração muito simples.

Instalação

O ideal é que o apt-cacher seja executado de um servidor que esteja conectado diretamente na internet.

 # apt-get install apt-cacher

Configuração

O principal arquivo de configuração é o /etc/apt-cacher/apt-cacher.conf. É importante mudar o paramentro allowed_hosts, pois por padrão todos os hosts estão autorizados a utilizar o cache.

Um exemplo do arquivo de configuração (sem os comentários)

cache_dir=/var/cache/apt-cacher
admin_email=andre.facina@localhost
daemon_port=3142
group=www-data
user=www-data
allowed_hosts=192.168.1.0/24
denied_hosts=
allowed_hosts_6=fec0::/16
denied_hosts_6=
generate_reports=1
clean_cache=1
offline_mode=0
logdir=/var/log/apt-cacher
expire_hours=0
use_proxy=0
use_proxy_auth=0
limit=0
debug=0
path_map = debian ftp.uni-kl.de/pub/linux/debian ftp2.de.debian.org/debian ; ubuntu archive.ubuntu.com/ubuntu ; security security.debian.org/debian-security ftp2.de.debian.org/debian-security

#EOF

Uma opção interessante é a path_map, onde é possível definir aliases para diferentes repositórios.

Ativando o apt-cacher na inicialização

# vi /etc/default/apt-cacher
 AUTOSTART=1 

Reiniciar o apt-cacher

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

Reiniciar o apache ( observe que foi criado um arquivo de configuração para o Apache '/etc/apache2/conf.d/apt-cacher.conf')

# /etc/init.d/apache2 restart

Utilização

Para as máquinas que utilizarão o cache é preciso editar o arquivo de configuração de repositórios do apt, /etc/apt/sources.list. É preciso remover todos os repositórios e reconfigurá-los na seguinte sintaxe:

 deb http://ip_do_servidor_de_cache:porta/apt-cacher/repositorio_debian/debian unstable main contrib non-free

Exemplo

 deb http://192.168.1.1/apt-cacher/ftp.br.debian.org/debian lenny main contrib non-free

Lembra-se da opção "path_map", onde definimos os aliases? Em vez de passarmos o repositório completo do Debian, podemos apenas passar o alias que definimos no arquivo de configuração, por exemplo:

 deb http://192.168.1.1:3142/apt-cacher/security

Agora em outra máquina, após editar o sources.list execute o apt-get update e baixe um pacote, logo em seguida entre no servidor de cache e veja o conteúdo do diretório /var/cache/apt-cacher, eis aí os pacotes baixados ;-)

Importando os packages de /var/cache/apt/archives/ para o repositório do apt-cacher

As funcionalidades do apt-cacher não param por aí. Imagine que em seu servidor você já tenha baixado centenas de pacotes, mas sem utilizar o apt-cacher. Então por padrão eles ficaram armazenados no diretório de cache do apt (/var/cache/apt/archives/). É possível importá-los para o repositório do apt-cacher com a ferramenta apt-cacher-import.pl.

Exemplo

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

Simples e rápido, ele importará todos os pacotes para o novo repositório.

Gerando relatório de utilização do cache

Também é possível gerar um relatório simples da utilização do cache. Se você deixou a opção generate_reports=1 no arquivo de configuração (/etc/apt-cacher/apt-cacher.conf) o próprio apt-cacher se encarregará de gerar o relatório todos os dias. Senão, pode executá-lo manualmente /usr/share/apt-cacher/apt-cacher-report.pl.

Para acessar o relatório digite:

 http://ip_do_servidor_de_cache/apt-cacher/report

Para outras informações acesse:

 http://ip_do_servidor_de_cache/apt-cacher

O apt-cacher lhe será muito útil se você tiver muitos servidores com a mesma distribuição (Debian, Ubuntu), vai lhe poupar tempo e largura de banda e não veremos o chefe reclamando que a internet está lenta quando estivermos instalando muitos e muitos pacotes nos servidores :-)

Adicionar comentário

* Campos obrigatórios
5000
Powered by Commentics

Comentários

Nenhum comentário ainda. Seja o primeiro!


Veja a relação completa dos artigos de André Luiz Facina