Capítulo 2. Usando o APT em ambas máquinas
Anterior |  | Próximo

# Capítulo 2. Usando o APT em ambas máquinas

## 2.1. Visão geral

Estando o APT disponível em ambas máquinas dá a configuração mais simples. A ideia básica é colocar uma cópia do ficheiro de estado no disco e usar a máquina remota para obter os ficheiros de pacotes mais recentes e decidir quais pacotes descarregar. A estrutura de directórios do disco deverá parecer-se com:

      /disc/
        archives/
           partial/
        lists/
           partial/
        status
        sources.list
        apt.conf

## 2.2. O ficheiro de configuração

O ficheiro de configuração deve dizer ao APT para armazenar os seus ficheiro no disco e usar os ficheiros de configuração do disco também. O sources.list deve conter os sites apropriados que deseja usar a partir da máquina remota, e o ficheiro de estado deve ser uma cópia de /var/lib/dpkg/status a partir do target host. Por favor note, se está a usar um arquivo local você deve usar copy URIs, a sintaxe é idêntica a file URIs.

apt.conf tem de conter a informação necessária para fazer o APT usar o disco:

     APT
     {
       /* Isto não é necessário se as duas máquinas forem da mesma arquitectura, diz
          ao APT remoto que arquitectura tem a máquina de destino */
       Architecture "i386";

       Get::Download-Only "true";
     };

     Dir
     {
       /* Usa o disco para informação de estado e redireciona o ficheiro de estado a partir de
          the /var/lib/dpkg default */
       State "/disc/";
       State::status "status";

       // Caches binárias serão armazenadas localmente
       Cache::archives "/disc/archives/";
       Cache "/tmp/";

       // Localização da lista de fontes.
       Etc "/disc/";
     };

Mais detalhes podem ser vistos ao examinar o manual do apt.conf e o exemplo de ficheiro de configuração em /usr/share/doc/apt/examples/apt.conf.

Na máquina de destino a primeira coisa a fazer é montar o disco e copiar /var/lib/dpkg/status para ele. Você também precisa de criar os directórios delineados na Visão Geral, archives/partial/ e lists/partial/. Depois leve o disco até à máquina remota e configure o sources.list. Na máquina remota execute o seguinte:

     # export APT_CONFIG="/disc/apt.conf"
     # apt-get update
     [ APT obtém os ficheiros de pacotes ]
     # apt-get dist-upgrade
     [ APT obtém todos os pacotes necessários para actualizar a máquina de destino ]

O comando dist-upgrade pode ser substituído por qualquer outro comando APT standard, particularmente dselect-upgrade. Você até pode usar um front-end do APT como o dselect. No entanto isto apresenta um problema ao comunicar as suas selecções de volta ao computador local.

Agora o disco contém todos os ficheiros de índice e os arquivos necessários para actualizar a máquina de destino. Devolva o disco e corra:

      # export APT_CONFIG="/disc/apt.conf"
      # apt-get check
      [ APT gera uma cópia local dos ficheiros de cache ]
      # apt-get --no-d -o dir::state::status=/var/lib/dpkg/status dist-upgrade
      [ Ou qualquer outro comando APT ]

Para uma função apropriada é necessário re-especificar que o ficheiro de estado seja o ficheiro local. Isto é muito importante!

Se está a usar dselect você pode fazer a operação muito arriscada de copiar disc/status para /var/lib/dpkg/status para que quaisquer selecções que faça na máquina remota sejam actualizadas. Eu recomendo altamente que as pessoas apenas façam selecções na máquina local - mas isto pode nem sempre ser possível. NÃO copie o ficheiro de estado se entretanto correu o dpkg ou o APT!!

Anterior |  | Próximo
Capítulo 1. Introdução | Início | Capítulo 3. Usando APT e wget