You are on page 1of 12

by Vagner Fonseca

(http://www.cooperati.com.br
/author/vagnerfonseca/)
on 26/05/2011
(http://www.cooperati.com.br
/2011/05/26/criando-
um-repositorio-local-
de-pacotes-para-debian-
ou-ubuntu/)
under Linux
(http://www.cooperati.com.br
/category/linux/), Servidor
(http://www.cooperati.com.br
/category/servidor/), Super
Programas
(http://www.cooperati.com.br
/category/super-
programas/)
tagged debian
(http://www.cooperati.com.br
/tag/debian/), linux
(http://www.cooperati.com.br
/tag/linux-2/), repositrios
(http://www.cooperati.com.br
/tag/repositorios/), servidor
(http://www.cooperati.com.br
/tag/servidor-2/), Ubuntu
(http://www.cooperati.com.br
/tag/ubuntu/)
Permalink
(http://www.cooperati.com.br
/2011/05/26/criando-
um-repositorio-local-
de-pacotes-para-debian-
ou-ubuntu/)
CRIANDO UM REPOSITRIO LOCAL DE
PACOTES PARA DEBIAN OU UBUNTU
(http://rafaelbernardes.files.wordpress.com/2011/05/debian-1.gif)
Ter servidores e desktops em Linux apresenta muitas vantagens em sua rede
como estabilidade, segurana, e a capacidade de total customizao do
ambiente. Mas nem sempre fcil manter esse parque de mquinas
atualizado, ter um repositrio prprio uma tima opo para facilitar
atualizaes e instalaes de ambientes para testes.
Tudo que precisamos neste caso uma mquina Debian ou Ubuntu com um
servidor Web instalado. Isto no ser coberto neste post, apenas a
configurao dos repositrios.
Primeiro instale o pacote debmirror, que utiliza o Rsync como mtodo de
sincronia. Assim depois de instalado e sincronizado o repositrio o Rsync ir
apenas fazer download dos arquivos que no existem no servidor, assim
poucos arquivos sero baixados para atualizar o servidor.
Instalemos o programa:
# apt-get install debmirror rsync
Para facilitar a configurao do repositrio iremos criar um script para ser
(http://www.cooperati.com.br/)
(http://facebook.com

(http://twitter.com

(http://www.linkedin.com

(http://youtube.com

HOME (HTTP://WWW.COOPERATI.COM.BR) PRINCIPAIS CATEGORIAS (HTTP://WWW.COOPERATI.COM.BR)
COOPERATI | CURSOS (HTTP://CURSOS.COOPERATI.COM.BR)
COOPERATI | {DEV;} (HTTP://DEV.COOPERATI.COM.BR)
CooperaTI | Criando um repositrio local de pacotes para Debian ou U... http://www.cooperati.com.br/2011/05/26/criando-um-repositorio-local...
1 de 12 25/05/2014 23:39
agendado para atualizao constante. Nos arquivos abaixo, antes das opes
que so palavras ( como host por exemplo) usaremos dois sinais de menos (
), o wordpress costuma mudar para travesso depois da edio.
# vi /usr/local/bin/mirror-debian.sh
#!/bin/bash
# Repositorio de onde sero baixados os pacotes
repo=ftp.br.debian.org
# Lugar do repositrio onde esto os pacotes
root=:debian
# Onde na mquina local serao baixados os pacotes
localdir=/var/www/debian/
# Versoes do Debian
dists=stable
# Sees de Software utilizados
sections=main,contrib,non-free
# Arquitetura, 32bits(i386), 64bits(amd64)
arch=i386,amd64
# Parametros de configurao do Debmirror (Apenas stable, utilizando o
Rsync, ignorando o arquivo Release.gpg e no baixando pacotes de cdigo
fonte)
defopt=-v -p arch=$arch host=$repo root=$root section=$sections
dist=$dists -e rsync ignore-release-gpg postcleanup getcontents
nosource
# Linha que executa o Debmirror
echo -e n Criando mirror de Debian n
debmirror $defopt $localdir
####################################
Agora vamos criar um script para o repositrio do Ubuntu:
# vi /usr/local/bin/mirror-ubuntu.sh
#!/bin/bash
# Repositorio de onde sero baixados os pacotes
repo=us.archive.ubuntu.com
# Lugar do repositrio onde esto os pacotes
root=:ubuntu
# Onde na mquina local serao baixados os pacotes
localdir=/var/www/ubuntu/
# Versoes do Ubuntu
dists=maverick
# Sees de Software utilizados
sections=main,restricted,universe,multiverse
# Arquitetura, 32bits(i386), 64bits(amd64)
arch=i386,amd64
# Parametros de configurao do Debmirror (Apenas Maverick, utilizando o
Rsync, ignorando o arquivo Release.gpg e no baixando pacotes de cdigo
fonte)
defopt=-v -p arch=$arch host=$repo root=$root section=$sections
dist=$dists -e rsync ignore-release-gpg postcleanup getcontents
nosource
# Linha que executa o Debmirror
echo -e n Criando mirror de Ubuntu n
CooperaTI | Criando um repositrio local de pacotes para Debian ou U... http://www.cooperati.com.br/2011/05/26/criando-um-repositorio-local...
2 de 12 25/05/2014 23:39
debmirror $defopt $localdir
####################################
Aps criar os arquivos vamos dar permisso de execuo aos scripts:
# chmod -v 755 /usr/local/bin/mirror-*
Para testar basta executar manualmente os comandos:
# mirror-debian.sh
Ou
# mirror-ubuntu.sh
Lembrando que os repositrios tero todos os pacotes disponveis das
distribuies, por isso o download inicial de cada um ser de mais de 40 GB,
porm depois de sincronizados os downloads sero muito, mas muito
menores.
Segue abaixo um screenshot de um repositrio de Ubuntu sendo sincronizado
com este script de Debmirror
(http://rafaelbernardes.files.wordpress.com/2011/05/demirror.png)
Faa o agendamento dos scripts na crontab do seu sistema, aguarde o
download ser finalizado (vai levar um bom tempo dependendo da sua conexo
;-p) e basta utilizar seus repositrios em seus clientes.
Supondo que o IP do Servidor Web seja 192.168.1.200, nos clientes Debian
colocaremos a seguinte linha na sources.list:
# vi /etc/apt/sources.list
deb http://192.168.1.200/debian stable main contrib non-free
########################
Nos clientes Ubuntu colocaremos a seguinte linha:
deb http://192.168.1.200/ubuntu maverick main restricted universe
CooperaTI | Criando um repositrio local de pacotes para Debian ou U... http://www.cooperati.com.br/2011/05/26/criando-um-repositorio-local...
3 de 12 25/05/2014 23:39
Compartilhe
:
multiverse
########################
Atualize seus clientes com:
# apt-get update
Para testar faa:
# apt-get install cmatrix
Espero que tenha ajudado aqueles que tem dvida em como criar um
repositrio espelho de Debian ou Ubuntu, e no se esqueam de assinar
nosso Portal.
Vagner Fonseca
(http://www.cooperati.com.br/author
/vagnerfonseca/)
More Posts (http://www.cooperati.com.br
/author/vagnerfonseca/) - Website
(http://www.cooperati.com.br)
(http://www.cooperati.com.br/2011/05/26/criando-um-repositorio-local-
de-pacotes-para-debian-ou-ubuntu/?share=email)
CooperaTI | Criando um repositrio local de pacotes para Debian ou U... http://www.cooperati.com.br/2011/05/26/criando-um-repositorio-local...
4 de 12 25/05/2014 23:39
Curtir isso:
PREVIOUS (HTTP://WWW.COOPERATI.COM.BR/2!!/"/2"/RECUPERANDO#OB$ETOS#
DELETADOS#DO#ACTIVE#DIRECTOR%#USANDO#O#WINDOWS#POWERSHELL/)
NE&T (HTTP://WWW.COOPERATI.COM.BR/2!!/"/2'/POSTER#MICROSO(T#
E&CHANGE#SERVER#2!#ARCHITECTURE/)
!) COMMENTS
on Criando um repositrio
local de pacotes para
Debian ou Ubuntu
Carregando...
()
(http://www.cooperati.com.br/2011/05/26/criando-um-repositorio-local-
de-pacotes-para-debian-ou-ubuntu/?share=twitter)
(http://www.cooperati.com.br/2011/05/26/criando-um-repositorio-local-
de-pacotes-para-debian-ou-ubuntu/?share=facebook)
(http://www.cooperati.com.br/2011/05/26/criando-um-repositorio-local-
de-pacotes-para-debian-ou-ubuntu/?share=linkedin)
(http://www.cooperati.com.br/2011/05/26/criando-um-repositorio-local-
de-pacotes-para-debian-ou-ubuntu/?share=google-plus-1)
LUCIANO SILVA
26/05/20 at 0!"2# $ %&ttp"//'''(cooperati(com(br/20/05
/26/criando)um)repositorio)local)de)pacotes)para)debian)ou)ubuntu
/*comment)!60+ Responder (/2011/05/26/criando-um-repositorio-
local-de-pacotes-para-debian-ou-ubuntu
/?replytocom=960#respond)
Saberia ensinar como criar um repositrio em um servidor na web?
Estamos precisando disso aqui na ONG onde trabalho para colocar
alguns pacotes especficos de uso nosso.
DEI&E UMA RESPOSTA
, seu endere-o de email n.o
ser/ publicado Campos
obrigatrios s.o marcados
0
CooperaTI | Criando um repositrio local de pacotes para Debian ou U... http://www.cooperati.com.br/2011/05/26/criando-um-repositorio-local...
5 de 12 25/05/2014 23:39
VAGNER FONSECA
(HTTP://VAGNERFONSECA.WORDPRESS.COM)
02/06/20 at 0!"15 $ %&ttp"//'''(cooperati(com(br/20/05
/26/criando)um)repositorio)local)de)pacotes)para)debian)
ou)ubuntu/*comment)!6+ Responder (/2011/05/26
/criando-um-repositorio-local-de-pacotes-para-debian-
ou-ubuntu/?replytocom=961#respond)
Luciano,
Caso voc tenha acesso ao servidor web no nvel de
administrador do servidor o procedimento o mesmo, caso o
seu acesso seja apenas de hospedagem seria muito difcil criar
esse servidor l, j que voc no teria acesso a protocolo
rsync nem ao debmirror.
Espero ter esclarecido sua dvida.
DANIEL MOURA
06/06/20 at 0!"15 $ %&ttp"//'''(cooperati(com(br/20/05
/26/criando)um)repositorio)local)de)pacotes)para)debian)ou)ubuntu
/*comment)!62+ Responder (/2011/05/26/criando-um-repositorio-
local-de-pacotes-para-debian-ou-ubuntu
/?replytocom=962#respond)
Grande Vagner, este seu tutorial est demais, s tenho uma dvida, e se
eu quiser criar um repositrio para a nova verso do ubuntu 11.04, onde
e qual dos dois scripts tenho q alterar?
VAGNER FONSECA (HTTP://INTELLIS.COM.BR)
06/06/20 at 0"26 $ %&ttp"//'''(cooperati(com(br/20/05
/26/criando)um)repositorio)local)de)pacotes)para)debian)
ou)ubuntu/*comment)!62+ Responder (/2011/05/26
/criando-um-repositorio-local-de-pacotes-para-debian-
ou-ubuntu/?replytocom=96#respond)
Daniel,
Para criar um repositrio para outra verso do Ubuntu voc
deve mudar no segundo script (mirror-ubuntu.sh ), cujo nome j
diz que para Ubuntu ;-P , na linha dists=maverick para
dists=natty e caso quiera fazer mais de uma verso do
Ubuntu no repositrio utilize dists=maverick,natty,oneiric
(oneiric ser a prxima verso do Ubuntu).
Espero ter ajudado e em breve teremos um review interessante
sobre o Gerenciamento de Servidores com Ubuntu via Web.
Aguarde.
CooperaTI | Criando um repositrio local de pacotes para Debian ou U... http://www.cooperati.com.br/2011/05/26/criando-um-repositorio-local...
6 de 12 25/05/2014 23:39
RAFAEL CRUZ.
/06/20 at 20"0# $ %&ttp"//'''(cooperati(com(br/20/05
/26/criando)um)repositorio)local)de)pacotes)para)debian)ou)ubuntu
/*comment)!61+ Responder (/2011/05/26/criando-um-repositorio-
local-de-pacotes-para-debian-ou-ubuntu
/?replytocom=96!#respond)
Aee consegui termina o download..^^
vlw ~vagner vai ajudar muitos nos estudos de montagem de laboratrios
em casa
RODRIGO LEONEL
20/01/202 at 5"2# $ %&ttp"//'''(cooperati(com(br/20/05
/26/criando)um)repositorio)local)de)pacotes)para)debian)ou)ubuntu
/*comment)2625+ Responder (/2011/05/26/criando-
um-repositorio-local-de-pacotes-para-debian-ou-ubuntu
/?replytocom=65#respond)
Fala Vagner:
To fazendo uns testes aqui para implementar esse servio para a
ativao dos servidores daqui da empresa, ai estou com uma dvida,
qual seria o tamanho que deveria reservar em uma mquina virtual? Uns
50 Gb para cada distribuio? To fazendo uns testes aqui e vou postar
quando da resultado.
abraos
PS.: Ainda precisando daquela mquina?
RICARDO PINHEIRO (HTTP://WWW.COOPERATI.COM.BR)
20/01/202 at #"06 $ %&ttp"//'''(cooperati(com(br/20/05
/26/criando)um)repositorio)local)de)pacotes)para)debian)
ou)ubuntu/*comment)262#+ Responder (/2011/05/26
/criando-um-repositorio-local-de-pacotes-para-debian-
ou-ubuntu/?replytocom=6"#respond)
Rodrigo,
Criei recentemente um repositrio para o Debian stable e
testing para as arquiteturas x86 e x86_64 e o espao utilizado
foi de 104GB.
Espero ter ajudado
Abraos
VAGNER FONSECA (HTTP://WWW.COOPERATI.COM.BR)
(Author)
20/01/202 at 20"12 $ %&ttp"//'''(cooperati(com(br/20/05
/26/criando)um)repositorio)local)de)pacotes)para)debian)
ou)ubuntu/*comment)2610+ Responder (/2011/05/26
/criando-um-repositorio-local-de-pacotes-para-debian-
CooperaTI | Criando um repositrio local de pacotes para Debian ou U... http://www.cooperati.com.br/2011/05/26/criando-um-repositorio-local...
7 de 12 25/05/2014 23:39
ou-ubuntu/?replytocom=6!0#respond)
Fala Rodrigo,
Tudo bem mas j tenho mquina sobrando
RODRIGO LEONEL
5/05/202 at 5"21 $ %&ttp"//'''(cooperati(com(br/20/05
/26/criando)um)repositorio)local)de)pacotes)para)debian)ou)ubuntu
/*comment)10##+ Responder (/2011/05/26/criando-
um-repositorio-local-de-pacotes-para-debian-ou-ubuntu
/?replytocom=!0""#respond)
Vagner,
Tentei postar logando pelas minhas contas do Google, Facebook e
Twitter mas sem sucesso, ento vai por aqui direto.
O espao que estou ocupando em disco :
Debian, stable, i386 e 64, main, contrib, non-free e source: 49Gb
Ubuntu, precise, i386 e 64, main, restricted, universe e multiverse: 61Gb
LEONARDO DIAS (HTTP://WWW.MAISTEC.COM.BR)
21/0/202 at !"2# $ %&ttp"//'''(cooperati(com(br/20/05
/26/criando)um)repositorio)local)de)pacotes)para)debian)ou)ubuntu
/*comment)360!+ Responder (/2011/05/26/criando-
um-repositorio-local-de-pacotes-para-debian-ou-ubuntu
/?replytocom=#609#respond)
Boa noite Wagner, tudo bem?
Gostaria de uma ajuda.
Fiz os passos para criar o servidor de repositrio e tudo deu certo.
S que eu tenho uma necessidade diferente aqui na minha empresa, eu
preciso manter verses do debian sem atualizao, isso por conta do
PHP e MYSQL que usamos no desenvolvimento.
Por exemplo, eu fao um download da verso 6 que est no site hoje, os
programadores faro os ajustes para essa verso e no posso mud-la
mais, entendeu?
Como eu posso fazer para manter essa verso 6, depois baixar uma
possvel verso 7 e nunca mudar aquele download antigo que fiz da
verso 6.
Deu para entender?
Agradeo a ajuda.
Abraos
VAGNER FONSECA (HTTP://WWW.COOPERATI.COM.BR)
(Author)
25/0/202 at "03 $ %&ttp"//'''(cooperati(com(br/20/05
/26/criando)um)repositorio)local)de)pacotes)para)debian)
ou)ubuntu/*comment)3660+ Responder (/2011/05/26
/criando-um-repositorio-local-de-pacotes-para-debian-
CooperaTI | Criando um repositrio local de pacotes para Debian ou U... http://www.cooperati.com.br/2011/05/26/criando-um-repositorio-local...
8 de 12 25/05/2014 23:39
ou-ubuntu/?replytocom=#660#respond)
Leonardo,
Mude os diretrios onde os scripts gravam os arquivos
baixados.
LEONARDO DIAS
(HTTP://WWW.MAISTEC.COM.BR)
25/0/202 at 5"02 $ %&ttp"//'''(cooperati(com(br
/20/05/26/criando)um)repositorio)local)de)pacotes)
para)debian)ou)ubuntu/*comment)36!6+ Responder
(/2011/05/26/criando-um-repositorio-local-
de-pacotes-para-debian-ou-ubuntu
/?replytocom=#696#respond)
Obrigado amigo, vou fazer assim.
Abraos
JULIANO
0!/02/202 at 22"12 $ %&ttp"//'''(cooperati(com(br/20/05
/26/criando)um)repositorio)local)de)pacotes)para)debian)ou)ubuntu
/*comment)036#+ Responder (/2011/05/26/criando-
um-repositorio-local-de-pacotes-para-debian-ou-ubuntu
/?replytocom=10#6"#respond)
Ok, ficou muito bom! Aqui funcionou! Gostaria de sugerir um
complemento: seria possvel fazer um repositrio local de drives de
impressora (sansung, HP e outros)?
CooperaTI | Criando um repositrio local de pacotes para Debian ou U... http://www.cooperati.com.br/2011/05/26/criando-um-repositorio-local...
9 de 12 25/05/2014 23:39
NOME *
EMAIL *
SITE
CHEC+ HERE TO SUBSCRIBE TO NOTI(ICATIONS (OR NEW POSTS
VINICIUS (HTTP://GRAVATAR.COM/VINIGRANDE)
22//202 at 22"1 $ %&ttp"//'''(cooperati(com(br/20/05
/26/criando)um)repositorio)local)de)pacotes)para)debian)ou)ubuntu
/*comment)2106+ Responder (/2011/05/26/criando-
um-repositorio-local-de-pacotes-para-debian-ou-ubuntu
/?replytocom=12!06#respond)
pra mim deu erro na linha
# Parametros de configurao do Debmirror (Apenas Maverick,
utilizando o Rsync, ignorando o arquivo Release.gpg e no baixando
pacotes de cdigo fonte)
defopt=-v -p arch=$arch host=$repo root=$root section=$sections
dist=$dists -e rsync ignore-release-gpg postcleanup getcontents
nosource
especificamente no parametro -p diz que o parmetro no existe.
BRUNO
22/02/201 at 5"26 $ %&ttp"//'''(cooperati(com(br/20/05
/26/criando)um)repositorio)local)de)pacotes)para)debian)ou)ubuntu
/*comment)23#2+ Responder (/2011/05/26/criando-
um-repositorio-local-de-pacotes-para-debian-ou-ubuntu
/?replytocom=12#"2#respond)
Gostei muito do post. Simples e direto.
Obrigado, Vagner.
FILIPO TARDIM (HTTPS://PLUS.GOOGLE.COM/+FILIPOTARDIM)
20/01/201 at 00"1 $ %&ttp"//'''(cooperati(com(br/20/05
/26/criando)um)repositorio)local)de)pacotes)para)debian)ou)ubuntu
/*comment)2#66+ Responder (/2011/05/26/criando-
um-repositorio-local-de-pacotes-para-debian-ou-ubuntu
/?replytocom=12"66#respond)
Excelente!
EU estava fazendo de uma forma mais trabalhosa. Seu script ficou
sensacional!
S tenho uma dvida. H como baixar os PPAs do Ubuntu tambm por
esse procedimento?
Um abrao!
CooperaTI | Criando um repositrio local de pacotes para Debian ou U... http://www.cooperati.com.br/2011/05/26/criando-um-repositorio-local...
10 de 12 25/05/2014 23:39
COMENT,RIO
PUBLICAR COMENTRIO
AVISE#ME SOBRE COMENT,RIOS SEGUINTES POR EMAIL.
AVISE#ME SOBRE NOVAS PUBLICA-.ES POR EMAIL.
PRINCIPAIS AUTORES:
Rafael Bernardes
(http://www.cooperati.co
m.br/author
/bernardesrafael/) (579)
Maurcio Cassemiro
(http://www.cooperati.co
m.br/author/cassemiro/)
(125)
Vagner Fonseca
(http://www.cooperati.co
m.br/author
/vagnerfonseca/) (123)
Carlos Finet
(http://www.cooperati.co
m.br/author/carlosfinet/)
(95)
Ricardo
(http://www.cooperati.co
m.br/author/rpinheiro/)
(78)
Vinicius Mozart
(http://www.cooperati.co
m.br/author/mozart/) (74)
Carlos Lauff
(http://www.cooperati.co
m.br/author/carloslauff/)
(62)
PRINCIPAIS POSTS /
P,GINAS
Site e mtodos para
testar portas
(http://www.cooperati.co
m.br/2009/04/22/site-
para-testar-portas/)
Acessar Roteador sem
Assistente de
Configurao Vivo (Dica)
(http://www.cooperati.co
m.br/2013/07/18/acessar-
roteador-sem-assistente-
de-configuracao-
vivo-dica/)
Executando programas
com credenciais de
administrador
(http://www.cooperati.co
m.br/2013/03
/01/executando-
programas-
com-credenciais-
de-administrador/)
Windows 8.1 - Como
adicionar programas e
aplicativos no menu iniciar
(boto direito)
(http://www.cooperati.co
m.br/2014/05
/23/windows-8-1-como-
adicionar-programas-
e-aplicativos-no-menu-
iniciar-botao-direito/)
CATEGORIAS
Selecionar categoria
RECEBA POSTS POR
EMAIL:
Digite o seu email:
Assinar
SITES PARCEIROS:
(http://www.osfreelas.co
m.br/)
Iniciar Download
download.pconverter.com
Baixar Software Gratuito: Conversor Comece aqui!
PARCEIRO DE
CONSULTORIA
(http://www.nipponcomput
er.com.br/)
Parceiro de Consultoria
CooperaTI | Criando um repositrio local de pacotes para Debian ou U... http://www.cooperati.com.br/2011/05/26/criando-um-repositorio-local...
11 de 12 25/05/2014 23:39
0 COOPERATI
Infobusiness
Informtica
(http://www.cooperati.co
m.br/author/canalinfob/)
(58)
Rodrigo Ramos
(http://www.cooperati.co
m.br/author
/rodrigoramos/) (47)
Carol Souza
(http://www.cooperati.co
m.br/author/carolinux/)
(42)
Desvincular Conta
Microsoft no Windows 8.1
(http://www.cooperati.co
m.br/2014/02
/01/desvincular-conta-
microsoft-
no-windows-8-1/)
Zentyal - Gerenciamento
de Servidores Linux
(Parte 1)
(http://www.cooperati.co
m.br/2012/03/13/zentyal-
gerenciamento-
de-servidores-linux-
parte1/)
Windows Server 2012
Ativando o Windows
Server 2012
(http://www.cooperati.co
m.br/2012/09
/21/windows-server-
2012-ativando-
o-windows-server-2012/)
Servidor local de Chat
(Openfire)
(http://www.cooperati.co
m.br/2011/07/05/servidor-
local-de-chat-openfire/)
Restaurando o firmware
original no TP-Link
WR1043ND
(http://www.cooperati.co
m.br/2012/02
/09/restaurando-
o-firmware-original-no-tp-
link-wr1043nd/)
Monitoramento +
Instalao Zabbix Server
+ Agent Windows
(http://www.cooperati.co
m.br/2014/04
/23/monitoramento-
instalacao-zabbix-server-
agent-windows/)
COOPERATI 1 PARCEIRO
DE CONSULTORIA AMA2ON
CooperaTI | Criando um repositrio local de pacotes para Debian ou U... http://www.cooperati.com.br/2011/05/26/criando-um-repositorio-local...
12 de 12 25/05/2014 23:39

You might also like