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: Conrado Pinto Rebessi
Data de Publicação: 02 de Abril de 2005
Aqui na empresa temos diversas máquinas utilizando Debian Sarge, e a atualização delas estava se tornando um problema para o nosso link. Resolvi então criar um repositório apt dentro da empresa, pesquisando, descobri este software, o apt-mirror, que me ajudou muito a fazer e a manter o repositório atualizado.
Documentei os passos da instalação e configuração, e aproveito aqui para encaminhá-lo. Espero que seja de alguma valia.
Separei a instalação e a confiugração em 3 etapas, para facilitar o entendimento:
# /etc/apt/sources.list deb http://apt-mirror.sourceforge.net/ apt-mirror/
apt-get update
apt-get install apt-mirror
Configurar o /etc/apt/mirror.list com o(s) repositório(s) debian a ser(em) espelhado(s) No arquivo exemplo abaixo, faço mirror do linorg.usp.br e do security.debian.org
# /etc/apt/mirror.list # apt-mirror configuration file # # The default configuration options (uncomment and change to override) # # # set base_path /var/spool/apt-mirror # set mirror_path $base_path/mirror # set skel_path $base_path/skel # set var_path $base_path/var set defaultarch i386 # set nthreads 20 # deb http://linorg.usp.br/debian/ testing main contrib non-free deb-src http://linorg.usp.br/debian/ testing main contrib non-free deb http://linorg.usp.br/debian-non-US/ testing/non-US main contrib non-free deb-src http://linorg.usp.br/debian-non-US/ testing/non-US main contrib non-free deb http://security.debian.org/ testing/updates main contrib non-free # # Cleaner configuration example # # set cleanscript $var_path/clean.sh # # What shold we clean up clean http://security.debian.org/ clean http://linorg.usp.br/ # But exclude this directories skip-clean http://security.debian.org/doc/ skip-clean http://security.debian.org/tools/ skip-clean http://security.debian.org/debian/doc/ skip-clean http://security.debian.org/debian/tools/ skip-clean http://security.debian.org/debian/project/ skip-clean http://security.debian.org/debian-non-US/project/ skip-clean http://linorg.usp.br/doc/ skip-clean http://linorg.usp.br/tools/ skip-clean http://linorg.usp.br/debian/doc/ skip-clean http://linorg.usp.br/debian/tools/ skip-clean http://linorg.usp.br/debian/project/ skip-clean http://linorg.usp.br/debian-non-US/project/
Feito isto, podemos criar o nosso mirror. Lembrando que o número de pacotes é grande, então é bom dispor de um pouco de espaço na partição que contém o diretório /var/spool/apt-mirror, no meu caso, ele ocupou um pouco mais de 19Gb
su - apt-mirror apt-mirror
Agora é esperar (São 19Gb de downloads), numa conexão razoável (512kbps) isto deve demorar uns 3 ou 4 dias.
Agora é hora de disponibilizar os arquivos, afinal, alguém pode querer usá-los senão, para que estaríamos fazendo o repositório? :-) Criamos um arquivo chamado /etc/apache/conf.d/apt-repository.conf com o conteúdo:
Alias /debian/pool /var/spool/apt-mirror/mirror/linorg.usp.br/debian/pool Alias /debian/dists /var/spool/apt-mirror/skel/linorg.usp.br/debian/dists Alias /debian-non-US/pool /var/spool/apt-mirror/mirror/linorg.usp.br/debian-non-US/pool Alias /debian-non-US/dists /var/spool/apt-mirror/skel/linorg.usp.br/debian-non-US/dists Alias /security /var/spool/apt-mirror/mirror/security.debian.org Alias /debian-non-US/dists /var/spool/apt-mirror/skel/linorg.usp.br/debian-non-US/dists <Directory /var/spool/apt-mirror/mirror/linorg.usp.br/debian/pool> AllowOverride None Options Indexes Order Deny,Allow Allow from 172.16.0.0/12 Allow from 127.0.0.1/32 Deny from all </Directory> <Directory /var/spool/apt-mirror/skel/linorg.usp.br/debian/dists/> AllowOverride None Options Indexes Order Deny,Allow Allow from 172.16.0.0/12 Allow from 127.0.0.1/32 Deny from all </Directory> <Directory /var/spool/apt-mirror/mirror/linorg.usp.br/debian-non-US/pool> AllowOverride None Options Indexes Order Deny,Allow Allow from 172.16.0.0/12 Allow from 127.0.0.1/32 Deny from all </Directory> <Directory /var/spool/apt-mirror/skel/linorg.usp.br/debian-non-US/dists/> AllowOverride None Options Indexes Order Deny,Allow Allow from 172.16.0.0/12 Allow from 127.0.0.1/32 Deny from all </Directory> <Directory /var/spool/apt-mirror/mirror/security.debian.org/> AllowOverride None Options Indexes Order Deny,Allow Allow from 172.16.0.0/12 Allow from 127.0.0.1/32 Deny from all </Directory>
Devemos acertar a diretiva "Allow from 172.16.0.0/12" de acordo com as nossas nescessidades, esta é específica para a minha rede interna.
Agora reiniciamos o Apache
/etc/init.d/apache restart
Nosso repositório está pronto para ser usado. Passamos então a configurar nossos clientes
Configuramos o /etc/apt/sources.list para apontar para o nosso repositório recém-criado
deb http://<ip_do_mirror>/debian testing main contrib non-free deb http://<ip_do_mirror>/debian-non-US/ testing/non-US main contrib non-free deb-src http://<ip_do_mirror>/debian testing main contrib non-free deb-src http://<ip_do_mirror>/debian-non-US/ testing/non-US main contrib non-free deb http://<ip_do_mirror>/security testing/updates main contrib non-free
Atualizamos a base de dados do apt
apt-get update
E podemos sair utilizando o apt, por exemplo, fazendo uma atualização do sistema
apt-get upgrade
Duas coisas são importantes para manter o nosso mirror "consistente": Atualizá-lo constantemente; e Remover os arquivos antigos. para isto, coloquei esta entrada no /etc/crontab
# /etc/crontab 0 1 * * * apt-mirror /usr/bin/apt-mirror && /bin/sh /var/spool/apt-mirror/var/clean.sh
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