Capitolo 2. Usare APT su entrambe le macchine
Indietro |  | Avanti

# Capitolo 2. Usare APT su entrambe le macchine

## 2.1. Panoramica

La configurazione più semplice si ha se APT è disponibile su entrambe le macchine. L'idea di base è di mettere una copia del file di stato sul disco e usare la macchina remota per scaricare i file dei pacchetti più recenti e per decidere quali pacchetti scaricare. La struttura delle directory sul disco deve essere simile a:

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

## 2.2. Il file di configurazione

Il file di configurazione deve indicare ad APT di memorizzare i suoi file sul disco e di usare i file di configurazione anch'essi sul disco. Il file sources.list deve contenere i siti appropriati che si desiderano usare dalla macchina remota e il file di stato dovrebbe essere una copia di /var/lib/dpkg/status della macchina di destinazione. Notare che, se si sta usando un archivio locale, si devono usare URI «copy» la cui sintassi è identica a quella degli URI «file».

apt.conf deve contenere le informazioni necessarie per far sì che APT usi il disco:

     APT
     {
       /* Questo non è necessario se le due macchine hanno la stessa architettura,
          dice ad APT remoto qual è l'architettura della macchina di destinazione */
       Architecture "i386";

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

     Dir
     {
       /* Usa il disco per le informazioni sullo stato e ridirige il file di stato
          dalla posizione predefinita /var/lib/dpkg */
       State "/disc/";
       State::status "status";

       // Le cache binarie saranno memorizzate in locale
       Cache::archives "/disc/archives/";
       Cache "/tmp/";

       // Posizione dell'elenco di fonti.
       Etc "/disc/";
     };

Si possono vedere informazioni più dettagliate nella pagina di manuale di apt.conf e nel file di configurazione d'esempio in /usr/share/doc/apt/examples/apt.conf.

Nella macchina di destinazione, la prima cosa da fare è montare il disco e copiarvi /var/lib/dpkg/status. Sarà anche necessario creare le directory elencate nella panoramica: archives/partial/ e lists/partial/. Poi portare il disco nella macchina remota e configurare il file sources.list; in tale macchina eseguire:

     # export APT_CONFIG="/disc/apt.conf"
     # apt-get update
     [ APT scarica i file degli elenchi dei pacchetti ]
     # apt-get dist-upgrade
     [ APT scarica tutti i pacchetti necessari per aggiornare la macchina di destinazione ]

Il comando dist-upgrade può essere sostituito con qualsiasi altro comando APT standard, in particolare dselect-upgrade. Si può persino usare un front-end per APT come dselect; questo tuttavia pone alcuni problemi nel comunicare le selezioni fatte al computer locale.

Ora il disco contiene i file indice e gli archivi necessari per aggiornare la macchina di destinazione. Riportare il disco alla macchina locale ed eseguire:

      # export APT_CONFIG="/disc/apt.conf"
      # apt-get check
      [ APT genera una copia locale dei file di cache ]
      # apt-get --no-d -o dir::state::status=/var/lib/dpkg/status dist-upgrade
      [ O qualsiasi altro comando APT ]

Per il corretto funzionamento è necessario rispecificare il fatto che il file di stato è quello locale. Questo è molto importante!

Se si sta usando dselect si può fare l'operazione molto rischiosa di copiare disc/status in /var/lib/dpkg/status, in modo che sia aggiornata qualsiasi selezione fatta nella macchina remota. Si raccomanda di fare le selezioni solamente nella macchina locale, ma ciò non è sempre possibile. NON copiare il file di stato se nel frattempo sono stati eseguiti dpkg o APT!

Indietro |  | Avanti
Capitolo 1. Introduzione | Partenza | Capitolo 3. Usare APT e wget