<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
<?xml-stylesheet href="docbook.xsl" type="text/xsl"?>
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
<article lang="pt_BR">
  <articleinfo>
    <title>Criando um espelho do repositório da Debian</title>
    <authorgroup>
      <author>
        <firstname>Leonardo</firstname>
        <othername>Serra Maciel de</othername>
        <surname>Campos</surname>
        <affiliation>
          <address>
            <email>linuxbh@brfree.com.br</email>
          </address>
        </affiliation>
      </author>
    </authorgroup>
    <revhistory>
      <revision>
        <revnumber>1.2</revnumber>
        <date>2005-01-12 22:11:07 -0300</date>
        <authorinitials>Leonardo Serra Maciel de Campos</authorinitials>
      </revision>
    </revhistory>
    <copyright>
      <year>2005</year>
      <holder>Leonardo Serra Maciel de Campos</holder>
    </copyright>
    <legalnotice>
      <para>Este documento é licenciado sobre a licença de Atribuição-Compartilhamento da Creative Commons. Para ver uma cópia desta licença, visite <ulink url="http://creativecommons.org/licenses/by-sa/2.0/"/> ou envie uma carta para Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.</para>
    </legalnotice>
    <abstract>
      <para>Este documento visa ensinar como criar um espelho do repositório da Debian.</para>
    </abstract>
  </articleinfo>
  <sect1>
    <title>Introdução</title>
    <sect2>
      <title>Conteudo do repositório da Debian</title>
      <para>O repositório da Debian contem um conjunto de pastas contendo pacotes DEB e dois arquivos especiais: <filename>Packages.gz</filename> para pacotes binarios e <filename>Source.gz</filename> para pacotes fontes. Estes arquivos são utilizados para realizar instalações do <glossterm baseform="Debian GNU/Linux">Debian GNU/Linux</glossterm>.</para>
    </sect2>
    <sect2>
      <title>Divisões do repositório da Debian</title>
      <para>O repositório da Debian possui divisões e subdivições. A divisão principal diz respeito a versão do <glossterm baseform="Debian GNU/Linux">Debian GNU/Linux</glossterm>, ela se divide em:</para>
      <itemizedlist>
        <listitem>
          <para>stable</para>
        </listitem>
        <listitem>
          <para>testing</para>
        </listitem>
        <listitem>
          <para>unstable</para>
        </listitem>
      </itemizedlist>
      <para>A subdivisão diz respeito a licença dos pacotes. Ela se didive em:</para>
      <itemizedlist>
        <listitem>
          <para>main</para>
          <note>
            <para>Pacotes considerados livres pela Debian de acordo com a <ulink url="http://www.debian.org/social_contract#guidelines">DFSG</ulink></para>
          </note>
        </listitem>
        <listitem>
          <para>non-free</para>
          <note>
            <para>Pacotes considerados não livres pela Debian de acordo com a <ulink url="http://www.debian.org/social_contract#guidelines">DFSG</ulink>.</para>
          </note>
        </listitem>
        <listitem>
          <para>contrib</para>
          <note>
            <para>Pacotes considerados livres pela Debian de acordo com a <ulink url="http://www.debian.org/social_contract#guidelines">DFSG</ulink> mas que dependem de pacotes que estão na non-free.</para>
          </note>
        </listitem>
        <para>Dentro de cada subdivisão existem os pacotes binarios e os pacotes fontes.</para>
      </itemizedlist>
    </sect2>
  </sect1>
  <sect1>
    <title>Ambiente</title>
    <para>Será presumido que o seu sistema <glossterm baseform="Debian GNU/Linux">Debian GNU/Linux</glossterm> e o aptitude estão corretamente configurados. Iremos fazer um espelho parcial do repositório da Debian, pois nem todos os arquivos são uteis para nosso ambiente.</para>
    <para>A tabela abaixo mostra as versões de cada <glossterm baseform="Software">Software</glossterm> usado.</para>
    <table>
      <title>Versão dos Softwares</title>
      <tgroup cols="2">
        <thead>
          <row>
            <entry>
              <glossterm baseform="Software">Software</glossterm>
            </entry>
            <entry>Versão</entry>
          </row>
        </thead>
        <tbody>
          <row>
            <entry>Debian GNU/Linux</entry>
            <entry>Sarge</entry>
          </row>
          <row>
            <entry>debmirror</entry>
            <entry>20041209</entry>
          </row>
        </tbody>
      </tgroup>
    </table>
    <para>A tabelo abaixo mostra os principais parâmetros do ambiente onde foi feito esta documentação.</para>
    <table>
      <title>Parâmetros</title>
      <tgroup cols="2">
        <thead>
          <row>
            <entry>Característica</entry>
            <entry>Valor</entry>
          </row>
        </thead>
        <tbody>
          <row>
            <entry>Endereço do servidor de http onde ficara o espelho parcial do repositório da Debian</entry>
            <entry>
              <replaceable>www.exemplo.com.br</replaceable>
            </entry>
          </row>
          <row>
            <entry>Caminho para o espelho parcial do repositorio da Debian</entry>
            <entry>
              http://<replaceable>www.exemplo.com.br/debian/</replaceable>
            </entry>
          </row>
          <row>
            <entry>Pasta local no servidor de http onde ficara os arquivos do espelho parcial do repositorio da Debian</entry>
            <entry>
              <filename>
                <replaceable>/var/www/debian</replaceable>
              </filename>
            </entry>
          </row>
          <row>
            <entry>Endereço do repositorio oficial da Debian</entry>
            <entry>
              <replaceable>http.us.debian.org</replaceable>
            </entry>
          </row>
          <row>
            <entry>Metodo utilizado para acessar o repositório oficial da Debian</entry>
            <entry>
              <replaceable>http</replaceable>
            </entry>
          </row>
          <row>
            <entry>Distribuição Debian que sera parcialmente espelhada</entry>
            <entry>
              <replaceable>sarge</replaceable>
            </entry>
          </row>
          <row>
            <entry>Arquitetura Debian que sera parcialmente espelhada</entry>
            <entry>
              <replaceable>i386</replaceable>
            </entry>
          </row>
          <row>
            <entry>Endereço do servidor proxy para acessar o repositório oficial da Debian</entry>
            <entry>
              <replaceable>proxy.exemplo.com.br:3128</replaceable>
            </entry>
          </row>
        </tbody>
      </tgroup>
    </table>
  </sect1>
  <sect1>
    <title>Instalação</title>
    <orderedlist numeration="arabic">
      <listitem>
        <para>Execute o seguinte comando para instalar o debmirror:</para>
        <screen><prompt>#</prompt> <userinput>aptitude install debmirror</userinput></screen>
      </listitem>
      <listitem>
        <para>Execute o seguinte comando para criar a copia dos arquivos do repositório oficial da Debian:</para>
        <screen><prompt>#</prompt> <userinput>debmirror -e <replaceable>http</replaceable> -d <replaceable>sarge</replaceable> -h <replaceable>http.us.debian.org</replaceable> -a <replaceable>i386</replaceable> --verbose --progress --postcleanup --proxy http://<replaceable>proxy.exemplo.com.br:3128</replaceable> <filename><replaceable>/var/www/debian</replaceable></filename></userinput></screen>
      </listitem>
    </orderedlist>
  </sect1>
  <sect1>
    <title>Configuração</title>
    <note>
      <para>A etapa de configuração é para manter um sincronismo entre a copia do repositório local e o repositório oficial da Debian. Caso não precise disto ignore esta etapa.</para>
    </note>
    <para>Crie um arquivo com o nome de <filename>debmirror</filename> dentro da pasta <filename>/etc/cron.d</filename> com o seguinte conteudo:</para>
<screen>
#
# Toda noite as 21 horas.
0 21 * * * root  test -x /usr/bin/debmirror &amp;&amp; <userinput>/usr/bin/debmirror -e <replaceable>http</replaceable> -d <replaceable>sarge</replaceable> -h <replaceable>http.us.debian.org</replaceable> -a <replaceable>i386</replaceable> --postcleanup --proxy http://<replaceable>proxy.exemplo.com.br:3128</replaceable> <filename><replaceable>/var/www/debian</replaceable></filename></userinput>
</screen>
    <note>
      <para>Para entender melhor o porque do conteudo do arquivo <filename>/etc/cron.d/debmirror</filename> e porque ele foi colocado na pasta <filename>/etc/cron.d/</filename> recomenda-se ler o <ulink url="http://www.debian.org/doc/debian-policy/ch-opersys.html#s9.5">Manual de Políticas Debian</ulink>.</para>
    </note>
  </sect1>
  <bibliography>
    <title>Bibliografia</title>
    <para>Os seguintes sítios foram usados como base para a criação desta documentação</para>
    <biblioentry>
      <title>Espelhos do Debian</title>
      <releaseinfo>
        <ulink url="http://www.debian.org/mirror/"/>
      </releaseinfo>
    </biblioentry>
    <biblioentry>
      <title>Debian Repository HOWTO</title>
      <releaseinfo>
        <ulink url="http://www.debian.org/doc/manuals/repository-howto/repository-howto.html"/>
      </releaseinfo>
    </biblioentry>
    <biblioentry>
      <title>Manual de Políticas Debian</title>
      <releaseinfo>
        <ulink url="http://www.debian.org/doc/debian-policy/"/>
      </releaseinfo>
    </biblioentry>
  </bibliography>
  <glossary>
    <title>Glossário</title>
    <glossentry>
      <glossterm>Debian GNU/Linux</glossterm>
      <glossdef>
        <para>O <ulink url="http://www.debian.org">Debian</ulink> é um sistema operacional (SO) livre para seu computador. Um sistema operacional é um conjunto de programas básicos e utilitários que fazem seu computador funcionar. O Debian usa o kernel (núcleo de um sistema operacional), <ulink url="http://www.kernel.org">Linux</ulink>, mas a maior parte das ferramentas do SO vêm do projeto <ulink url="http://www.gnu.org">GNU</ulink>; daí o nome GNU/Linux.</para>
      </glossdef>
    </glossentry>
    <glossentry>
      <glossterm>Logicial</glossterm>
      <glossdef>
        <para>Conjunto de instruções lógicas. Na informática designa um conjunto de instruções lógicas e suas dependências, também conhecido como programa ou sistema de computador.</para>
        <para>Esta palavra é pouco usada no Brasil, onde se usa muito a expressão "Software".</para>
        <para>Origem: <ulink url="http://pt.wikipedia.org/wiki/Logicial">Wikipédia, a enciclopédia livre.</ulink></para>
      </glossdef>
    </glossentry>
  </glossary>
</article>
