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.
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.
O ideal é que o apt-cacher
seja executado de um servidor que esteja conectado
diretamente na internet.
# apt-get install apt-cacher
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
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
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 ;-)
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
.
/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.
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 :-)
This policy contains information about your privacy. By posting, you are declaring that you understand this policy:
This policy is subject to change at any time and without notice.
These terms and conditions contain rules about posting comments. By submitting a comment, you are declaring that you agree with these rules:
Failure to comply with these rules may result in being banned from submitting further comments.
These terms and conditions are subject to change at any time and without notice.
Comentários