Você está na página 1de 9

Mirror de reposotorio Debian/Ubuntu

Laborat orio de Software Livre DCC / UFMG 23 de mar co de 2009

Sum ario
1 Introdu c ao 2 Pr e-requisitos 3 Instala c ao 3.1 Ferramenta apt-mirror . . . . . . . . . . . . . . . 3.2 Congura c ao . . . . . . . . . . . . . . . . . . . . 3.2.1 Congurando o apt-mirror . . . . . . . . . 3.2.2 Selecionando os reposit orios para o Mirror 4 Criar o Mirror 5 Atualizar o Mirror 6 Utilizar o Mirror 7 Cr editos 3 3 3 3 3 3 5 6 7 7 9

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

Introdu c ao

i Esta documenta ca o e voltada para a cria ca o de um espelho de reposit orio Ubuntu/Debian. Espelhos de reposit orio s ao interessantes j a que, uma vez criados, permitem disponibilizar pacotes localmente para a rede interna. Obs: Os testes desta documenta ca o foram feitos no Ubuntu 8.10 ( ver ca o atual na presente data)

Pr e-requisitos

Para o acesso e utiliza ca o do Mirror, os programas FTP e Apache se fazem necess arios.

Instala c ao

3.1

Ferramenta apt-mirror

Ser a necessario instalar apenas o programa apt-mirror que e responsavel pela cria ca o do espelho. Para isto basta digitar em um terminal: $ sudo aptitude install apt-mirror

3.2
3.2.1

Congura c ao
Congurando o apt-mirror

Por default, a congura ca o da ferramenta apt-mirror toma o caminho /var/spool/aptmirror como o local onde o espelho ser a criado. Para mudar isso, basta editar o arquivo mirror.list que se encontra no /etc/apt/mirror.list $ sudo vim /etc/apt/mirror.list Por exemplo, para que o apt-mirror crie o reposit orio em /opt/ubuntu/reposit orio voc e deve mudar o inicio do arquivo mirror.list de:

############# config ################## # # set base_path /var/spool/apt-mirror # # if you change the base path you must create the directories below with write # privileges # # 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 <running host architecture> set nthreads 20 set _tilde 0 # ############# end config ##############

Para:
############# config ################## # set base_path /opt/ubuntu/reposit orio # # if you change the base path you must create the directories below with write # privileges # 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 <running host architecture> set nthreads 20 set _tilde 0 # ############# end config ##############

Feito isso, ser a necess ario criar os diretorios e copiar o script de limpeza. Para isso digite no terminal: $ sudo mkdir /opt/ubuntu/reposit orio/mirror $ sudo mkdir /opt/ubuntu/reposit orio/skel $ sudo mkdir /opt/ubuntu/reposit orio/var $ sudo cp /var/spool/apt-mirror/var/clean.sh /opt/ubuntu/reposit orio/var

Agora e necess ario passar os direitos de escrita nesses diret orios para o usu ario apt-mirror. Uma forma de garantir isso e tornar o usu ario apt-mirror dono desses diretorios 4

$ sudo chown -Rv apt-mirror:apt-mirror /opt/ubuntu/reposit orio

3.2.2

Selecionando os reposit orios para o Mirror

O arquivo que diz ao apt-mirror quais reposit orios criar mirror se encontra em /etc/apt/mirror.list Por default os reposit orios listados no arquivo s ao:

############# end config ############## deb http://archive.ubuntu.com/ubuntu intrepid main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu intrepid-updates main restricted universe multiverse #deb http://archive.ubuntu.com/ubuntu intrepid-backports main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu intrepid-security main restricted universe multiverse #deb http://archive.ubuntu.com/ubuntu intrepid-proposed main restricted universe multiverse deb-src http://archive.ubuntu.com/ubuntu intrepid main restricted universe multiverse deb-src http://archive.ubuntu.com/ubuntu intrepid-updates main restricted universe multiverse #deb-src http://archive.ubuntu.com/ubuntu intrepid-backports main restricted universe multiverse deb-src http://archive.ubuntu.com/ubuntu intrepid-security main restricted universe multiverse #deb-src http://archive.ubuntu.com/ubuntu intrepid-proposed main restricted universe multivers clean http://archive.ubuntu.com/ubuntu

Caso voc e queira tamb em os reposit orios de backports e proposed basta descomentar as linhas comentadas. Outra observa ca o importante e que a maquina utilizada para esta documenta c ao era 64 bits portanto o espelho que seria criado era apenas para esta arquitetura. Caso queira que a maquina monte um mirror de 32 bits tamb em, basta duplicar cada linha de endere co de reposit orio e especicar a arquitetura. Em nosso exemplo caria do seguinte modo:

############# end config ############## deb http://archive.ubuntu.com/ubuntu intrepid main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu intrepid-updates main restricted universe

multiverse deb http://archive.ubuntu.com/ubuntu intrepid-backports main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu intrepid-security main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu intrepid-proposed main restricted universe multiverse deb-src http://archive.ubuntu.com/ubuntu multiverse deb-src http://archive.ubuntu.com/ubuntu universe multiverse deb-src http://archive.ubuntu.com/ubuntu universe multiverse deb-src http://archive.ubuntu.com/ubuntu universe multiverse deb-src http://archive.ubuntu.com/ubuntu universe multiverse intrepid main restricted universe intrepid-updates main restricted intrepid-backports main restricted intrepid-security main restricted intrepid-proposed main restricted

deb-i386 http://archive.ubuntu.com/ubuntu multiverse deb-i386 http://archive.ubuntu.com/ubuntu universe multiverse deb-i386 http://archive.ubuntu.com/ubuntu universe multiverse deb-i386 http://archive.ubuntu.com/ubuntu universe multiverse deb-i386 http://archive.ubuntu.com/ubuntu universe multiverse

intrepid main restricted universe intrepid-updates main restricted intrepid-backports main restricted intrepid-security main restricted intrepid-proposed main restricted

deb-i386-src http://archive.ubuntu.com/ubuntu multiverse deb-i386-src http://archive.ubuntu.com/ubuntu universe multiverse deb-i386-src http://archive.ubuntu.com/ubuntu universe multiverse deb-i386-src http://archive.ubuntu.com/ubuntu universe multiverse deb-i386-src http://archive.ubuntu.com/ubuntu universe multiverse

intrepid main restricted universe intrepid-updates main restricted intrepid-backports main restricted intrepid-security main restricted intrepid-proposed main restricted

clean http://archive.ubuntu.com/ubuntu

Criar o Mirror

Basta executar o programa apt-mirror com permiss oes de root. $ sudo apt-mirror

Atualizar o Mirror

Para atualizar o espelho, basta executar o comando apt-mirror com permiss oes de root. Sabendo disto, uma boa pr atica seria agendar no crontab para ser feito atualiza co es periodicas. Por exemplo para agendar um atualiza c ao todos os dias as 4 horas da manha, deve-se inserir a seguinte linha no crontab do usu ario root: 0 4 * * * apt-mirror

Para realizar isso, basta inserir a linha no editor do crontab: $ sudo crontab -e

Feito isso, a saida do comando sudo crontab -l deve ser algo semelhante: # m h dom mon dow command 0 4 * * * apt-mirror

Utilizar o Mirror

Agora que o mirror esta criado, para que as maquinas locais possam o utilizar devemos criar um link simbolico dentro da pasta /var/www direcionando para o nosso reposit orio onde os diretorios spool e dists est ao. Em nosso caso eles se encontram em:/opt/ubuntu/reposit orio/mirror/archive.ubuntu.com/ubuntu/
$ sudo ln -s /opt/ubuntu/reposit orio/mirror/archive.ubuntu.com/ubuntu /var/www/ubuntu

Feito isso, o Mirror est a pronto para ser utilizado pelas maquinas ubunutu locais. Supondo que a maquina que contem o reposit orio responde pelo ip 192.168.1.20, para que as demais maquinas da rede utilizem ela como espelho, precisamos modicar o arquivo /etc/apt/sources.list trocando todos os endere cos 7

http://dominio/ubuntu por http://192.168.1.20/ubuntu de todas elas. Agora so precisamos atualizar o reposit orio em cada maquina com o comando: $ sudo aptitude update

Cr editos

Direito Autorais Reservados R Universidade Federal de Minas Gerais Departamento de Ci encia da Computa ca o Raphael Ottoni Santiago Machado de Faria

Esta documenta c ao e livre; voc e pode redistribu -la e/ou modic a-la sob os termos da Licen ca P ublica Geral GNU conforme publicada pela Free Software Foundation; tanto na sua vers ao 2, como qualquer vers ao posterior (a seu crit erio). A distribui c ao desta documenta ca o e feita na expectativa de que ela seja u til, por em, sem nenhuma garantia; nem mesmo a garantia impl cita de comerciabilidade ou adequa c ao a uma nalidade espec ca. Consulte a Licen ca P ublica Geral do GNU para mais detalhes.

http://creativecommons.org/licenses/GPL/2.0/ http://creativecommons.org/licenses/GPL/2.0/legalcode.pt

Você também pode gostar