apt-mirror: Crie um repositorio local para Debian ou Ubuntu e derivados

O apt-mirror serve para criar uma copia dos repositorios do Debian e derivados para um computador local, deixando disponivel a banda de internet para outros fins, e diponibilizando os pacotes na rede. Muito util quando tenha que fazer muitas instalações.

1. Instale o apt-mirror e apache2

apt-get install apt-mirror apache2

2. Edite o arquivo de configuração:

pico /etc/apt/mirror.list

Exemplo de mirror.list com modificações e comentado

############# config ##################
# 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 cleanscript $var_path/clean.sh
# set defaultarch
# set postmirror_script $var_path/postmirror.sh
# set run_postmirror 0
set nthreads 20
set _tilde 0
#
############# end config ##############
# Aqui são os repositorios que serao copiados.
# Obs.: será copiado somente os arquivos da arquitetura do seu sistema onde esta instalado o apt-mirror.
# Exemplo: se voce esta executando um sistema i386 o apt-mirror baixara somente os pacotes referente a arquiterura i386.

# Repositorio do Debian Squeeze com codigos fontes
deb http://ftp.br.debian.org/debian squeeze main contrib non-free
deb-src http://ftp.br.debian.org/debian unstable main contrib non-free

# Repositorio do Debian Lenny
deb http://ftp.br.debian.org/debian lenny main contrib non-free

#Repositorio do Opera
deb http://deb.opera.com/opera/ testing non-free

# Repositorios do Ubuntu Natty Narwhal (11.04) e Maverick Meerkat (10.10)

deb http://archive.ubuntu.com/ubuntu natty main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu maverick main restricted universe multiverse

# Caso queira adicionar outra arquitetura, basta alterar como nos exemplos abaixo e remova o comentario.
# Exemplo:
deb-amd64 http://ftp.br.debian.org/debian lenny main contrib non-free
#deb-alpha http://ftp.us.debian.org/debian unstable main contrib non-free
#deb-amd64 http://ftp.us.debian.org/debian unstable main contrib non-free
#deb-armel http://ftp.us.debian.org/debian unstable main contrib non-free
#deb-hppa http://ftp.us.debian.org/debian unstable main contrib non-free
#deb-i386 http://ftp.us.debian.org/debian unstable main contrib non-free
#deb-ia64 http://ftp.us.debian.org/debian unstable main contrib non-free
#deb-m68k http://ftp.us.debian.org/debian unstable main contrib non-free
#deb-mips http://ftp.us.debian.org/debian unstable main contrib non-free
#deb-mipsel http://ftp.us.debian.org/debian unstable main contrib non-free
#deb-powerpc http://ftp.us.debian.org/debian unstable main contrib non-free
#deb-s390 http://ftp.us.debian.org/debian unstable main contrib non-free
#deb-sparc http://ftp.us.debian.org/debian unstable main contrib non-free

# Adicione todas as url, para a limpeza apos toda atualização.
clean http://ftp.br.debian.org/debian
clean http://deb.opera.com/opera
clean http://archive.ubuntu.com/ubuntu

## Parte que não será baixada
skip-clean http://ftp.br.debian.org/debian/doc
skip-clean http://ftp.br.debian.org/debian/tools
skip-clean http://ftp.br.debian.org/debian/project/

3. Crie um link simbolico para cada url do repositorio em /var/www/

ln -s /var/spool/apt-mirror/mirror/archive.ubuntu.com/ubuntu/ /var/www/ubuntu
ln -s /var/spool/apt-mirror/mirror/deb.opera.com/opera/ /var/www/opera
ln -s /var/spool/apt-mirror/mirror/ftp.br.debian.org/debian/ /var/www/debian

4. Baixe os arquivos dos repositorios executando:

apt-mirror

5. Adicione a seguinte linha no /etc/crontab para sempre atualizar os repositorios.

0 1 * * * apt-mirror /usr/bin/apt-mirror && /bin/sh /var/spool/apt-mirror/var/clean.sh

6. Adicione no arquivo sources.list os novos repositorios, nos micros que vao usar o novo servidor de repositorios.

# Debian Squeeze
deb http://ip-ou-nome-do-micro-onde-esta-o-repositorio-local/debian squeeze main contrib non-free
deb-src http://ip-ou-nome-do-micro-onde-esta-o-repositorio-local/debian unstable main contrib non-free

# Debian Lenny
deb http://ip-ou-nome-do-micro-onde-esta-o-repositorio-local/debian lenny main contrib non-free

# Opera
deb http://ip-ou-nome-do-micro-onde-esta-o-repositorio-local/opera/ testing non-free

# Repositorios do Ubuntu Natty Narwhal (11.04) e Maverick Meerkat (10.10)
deb http://ip-ou-nome-do-micro-onde-esta-o-repositorio-local/ubuntu natty main restricted universe multiverse
deb http://ip-ou-nome-do-micro-onde-esta-o-repositorio-local/ubuntu maverick main restricted universe multiverse

7. Atualize os repositrios com apt-get update

8. Se ao apos atualizar uma mensagem de erro, como a abaixo:

W: Erro GPG: http://… testing Release: As assinaturas a seguir não puderam ser verificadas devido à chave pública não estar disponível: NO_PUBKEY A2019EA84E7532C8

Execute o comando abaixo substituindo os ultimos 8 digitos pelos os X

gpg –keyserver subkeys.pgp.net –recv-keys XXXXXXXX && gpg –armor –export XXXXXXXX | apt-key add –

Assim:

gpg –keyserver subkeys.pgp.net –recv-keys 4E7532C8 && gpg –armor –export 4E7532C8 | apt-key add –

Fontes:

http://popey.com/blog/2006/10/24/Creating_an_Ubuntu_repository_mirror_with_apt-mirror/

http://www.dicas-l.com.br/arquivo/como_criar_um_mirror_debian__sarge__utilizando_apt-mirror.php

http://blog.nucleoassistir.com/blog/2010/09/criando-repositorio-apt-mirror/

Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: