Apt-Cacher

Introdução


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.

Instalação


Para instalar o apt-cacher escolha a máquina servidora e use seu gerenciador de pacotes favorito. Para funcionar, o apt-cacher necessita do Apache, logo será necessário instalá-lo também. Uma maneira de instalar esses pacotes, seria digitar em um terminal os comando abaixo:

 # apt-get update 
 # apt-get install apache2 apt-cacher 

Caso tenha problemas durante a instalação, verifique se sua rede precisa de Proxy. Caso afirmativo, utilize o tutorial disponível AQUI para configurar o Proxy em sua máquina.

Entendendo o Arquivo de Configuração


O arquivo de configuração principal do apt-cacher é o /etc/apt-cacher/apt-cacher.conf Edite-o conforme suas necessidades. Em seguida, uma breve descrição das opções. Vale lembrar que se você tiver algum tipo de firewall será necessário liberar a porta 3142 para UDP e TCP.

cache_dir=/var/cache/apt-cacherDiretório principal onde serão armazenados os arquivos .deb
admin_email=root@localhoste-mail do adminstrador da rede
allowed_hosts=*Lista de IPs, separada por vírgula, que podem acessar o apt-cacher. Por exemplo: allowed_hosts=10.0.0.1-10.0.0.10,10.5.0.1 indica que os IPs permitidos são todos na faixa de 10.0.0.1 à 10.0.0.10 e mais o IP 10.5.0.1. Para permitir que qualquer IP possa acessar, use *
denied_hosts=Faz o contrário da opção anterior, ou seja, bloqueia os IPs listados de acessarem o apt-cacher
allowed_hosts_6=Similar à allowed_hosts, mas os IPs são dados seguindo o padrão IPv6 (::ffff:w.x.y.z)
denied_hosts_6=Similar à denied_hosts, mas os IPs são dados seguindo o padrão IPv6 (::ffff:w.x.y.z)
allowed_locations=ftp.dominio.com.brPermite que apenas os domínios passados sejam válidos nos Canais de Software do Repositório. Essa opção vem desabilitada padrão.
generate_reports=1Gera relatórios diários de acesso do apt-cacher. Pode ser visualizado abrindo em um navegador o endereço http://IP.DO.SERVIDOR:3142/apt-cacher/report. Para desabilitar use 0 (zero).
clean_cache=1Limpa diariamente os pacotes que estão no cache, mas que não estão nas listas dos Canais de Software do Repositório atual. Para desabilitar use 0 (zero).
logdir=/var/log/apt-cacherDiretório dos logs de acesso ou de erros do apt-cacher
expire_hours=0Tempo em horas para que as listas dos Canais de Software do Repostiório sejam atualizadas. Caso seja 0 (zero) o apt-cacher irá comparar o pacote requisitado com a versão presente no servidor, daí irá atualizar se necessário.
http_proxy=dominio.proxy.com.br:8080Faz com que o apt-cacher passe os dados requisitados por um proxy externo. Essa opção vem desabilitada por padrão.
use_proxy=0Habilita (1) ou desabilita (0) o proxy externo configurado na opção anterior
limit=0Limitar a quantidade de bytes por segundo permitida para uso. Deixe em 0 (zero) para não fixar limite.
debug=0Adiciona mais informações aos logs de erro. Habilite com 1 e desabilite com 0.

Configurando o servidor


O primeiro passo para configurar o servidor é alterar as opções do arquivo /etc/apt-cacher/apt-cacher.conf de acordo com suas necessidades. Por padrão as opções do arquivo já permitem que ele funcione sem a necessidade de modificações.

Caso sua rede obrigue o uso de proxy, será necessário alterar duas opções do arquivo de configuração. A primeira opção é indicar o endereço do proxy. Para isso altere a seguinte linha do arquivo de configuração,

#http_proxy=dominio.proxy.com.br:8080

deixando ela da seguinte maneira:

http_proxy=IP.PROXY:PORTA

onde IP.PROXY e PORTA devem ser alterados para o IP e a PORTA do servidor proxy da sua rede.

A segunda opção é habilitar o uso do proxy. Para isso altere a seguinte linha do arquivo,

use_proxy=0

deixando ela da seguinte maneira:

use_proxy=1

Após realizar os ajustes no arquivo de configuração, é preciso habilitar o serviço do apt-cacher, para que ele iseja iniciado quando a máquina for ligada. Para isso, edite o arquivo /etc/default/apt-cacher, e modifique o valor do campo AUTOSTART para 1:

AUTOSTART=1

Em seguida inicialize o serviço, utilizando o comando abaixo:

# service apt-cacher start

Para testar suas configurações, abra um navegador e digite o endereço: http://IP.DO.SEU.SERVIDOR:3142/apt-cacher. Sendo que IP.DO.SEU.SERVIDOR é, óbvio, o IP da máquina usada como servidora e 3142 é a porta padrão usada pelo apt-cacher (a não ser que você tenha modificado-a na sua configuração). Se aparecer uma página de informações do apt-cacher, então o servidor está configurado. Caso contrário, reveja suas configurações.

Gerenciando o serviço no servidor


Os comandos

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

e

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

e

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

gerenciam a atividade do serviço (para, inicia e reinicia). Sempre que alguma mudança for feita no arquivo de configuração do apt-cacher será necessário reiniciar o serviço para que as novas configurações entrem em vigor.

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

Configurando o apt-cacher no cliente


Há duas maneiras de configurar o cliente. Escolha a que for mais adequada a sua situação.

Maneira 01

Editando o arquivo /etc/apt/sources.list Esse arquivo contém o endereço de todos os repositórios disponíveis na Internet. A configuração consiste em alterar todos os endereços, indicando qual endereço do servidor Apt-Cacher. Modifique cada linha do arquivo /etc/apt/sources.list da seguinte maneira:

onde houver, por exemplo:

deb http://br.archive.ubuntu.com/ubuntu/ dapper main restricted

modifique para:

deb http://IP.DO.SEU.SERVIDOR:3142/apt-cacher/br.archive.ubuntu.com/ubuntu/ dapper main restricted

Nota: Não há quebra na linha. Se aparecer em seu navegador a linha quebrada é devido a resolução de sua tela.

Maneira 02

Criando um proxy para o apt-get. Crie (ou edite) o arquivo /etc/apt/apt.conf adicioando as linhas:

Acquire::http::Proxy "http://IP.DO.SEU.SERVIDOR:3142";
Acquire::https::Proxy "https://IP.DO.SEU.SERVIDOR:3142";

Agora basta atualizar o repositório do cliente. Isso pode ser feito através de seu gerenciador de pacotes favorito ou usando em um terminal:

 # apt-get update 

Caso não ocorra nenhum erro é sinal de que o Sevidor e o Cliente estão corretamente configurados.

Conclusão


Vale lembrar que quando você for baixar um pacote em uma máquina cliente os valores que aparecem como velocidade de conexão e tempo de transferência não são tão reais, já que ela está baixando do servidor local e não do externo. Apenas nos casos em que o pacote não esteja no servidor local é que será necessário um tempo um pouco maior, já que o apt-chacer irá baixar esse pacote para o servidor e ao mesmo tempo tranferir para a máquina cliente.

ensino/semestres/2012.1/mcs/material/guia_pratico_apt-cacher/inicio.txt · Última modificação: 2012/06/05 14:25 por 2664038