Hoofdstuk 2. Op beide computers APT gebruiken

Inhoudsopgave

2.1. Overzicht
2.2. Het configuratiebestand

Indien APT op beide computers aanwezig is, is de configuratie het makkelijkst. Het basisconcept bestaat erin om een kopie van het statusbestand op de schijf te plaatsen en 'externe-computer' te gebruiken om de meest recente pakketbestanden op te halen en uit te laten maken welke bestanden gedownload moeten worden. De mappenstructuur op de schijf moet er zo uitzien:

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

Het configuratiebestand moet APT opdragen om zijn bestanden op de schijf op te slaan en om ook de configuratiebestanden op de schijf te gebruiken. In het bestand sources.list moeten de eigenlijke sites vermeld staan die u vanaf 'externe-computer' wenst te gebruiken en het statusbestand moet een kopie zijn van /var/lib/dpkg/status op 'computer-in-kwestie'. Noteer dat indien u van een lokaal archief gebruik maakt, u URI's van het type copy moet gebruiken, waarvan de syntaxis identiek is aan die van URI's van het type file.

apt.conf moet de informatie bevatten die nodig is om APT de schijf te doen gebruiken:

 APT
 {
   /* Dit is niet noodzakelijk als de twee computers dezelfde architectuur
      hebben. Het vertelt APT van 'externe-computer' welke architectuur
      'computer-in-kwestie' heeft */
   Architecture "i386";

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

 Dir
 {
   /* Gebruik maken van de schijf voor statusinformatie en het statusbestand
      omleiden van /var/lib/dpkg wat de standaardlocatie ervan is */
   State "/disc/";
   State::status "status";

   // Binaire caches zullen lokaal opgeslagen worden
   Cache::archives "/disc/archives/";
   Cache "/tmp/";

   // Locatie van de lijst met pakketbronnen.
   Etc "/disc/";
 };

U krijgt meer details als u de man-pagina apt.conf raadpleegt en het voorbeeldconfiguratiebestand in /usr/share/doc/apt/examples/apt.conf.

Het eerste wat moet gebeuren is op 'computer-in-kwestie' de schijf aankoppelen en /var/lib/dpkg/status er naartoe kopiëren. U zult ook de mappen moeten aanmaken die in het overzicht beschreven werden, archives/partial/ en lists/partial/. Neem vervolgens de schijf mee naar 'externe-computer' en configureer het bestand sources.list. Voer op 'externe-computer' de volgende opdracht uit:

 # export APT_CONFIG="/disc/apt.conf"
 # apt-get update
 [ APT haalt de bestanden Packages op ]
 # apt-get dist-upgrade
 [ APT haalt alle pakketbestanden op die nodig zijn om 'computer-in-kwestie' op te waarderen ]

Het commando dist-upgrade kan door om het even welk ander standaard commando van APT vervangen worden, in het bijzonder dselect-upgrade. U kunt zelfs een front-end voor APT gebruiken, zoals dselect. Dit stelt wel een probleem bij het opnieuw communiceren van de selecties naar 'computer-in-kwestie'.

Nu bevat de schijf alle indexbestanden en archieven die nodig zijn om 'computer-in-kwestie' op te waarderen. Neem de schijf terug mee en voer het volgende uit:

  # export APT_CONFIG="/disc/apt.conf"
  # apt-get check
  [ APT maakt een lokale kopie van de cachebestanden aan ]
  # apt-get --no-d -o dir::state::status=/var/lib/dpkg/status dist-upgrade
  [ Of elk ander APT commando ]

Met het oog op een goede werking is het nodig om opnieuw op te geven dat het statusbestand terug het lokale moet zijn. Dit is zeer belangrijk!

Indien u dselect gebruikt, kunt u de zeer riskante operatie uitvoeren om disc/status naar /var/lib/dpkg/status te kopiëren, waardoor alle selecties die u op 'externe-computer' uitvoerde, bijgewerkt worden. Ik raad mensen ten stelligste aan enkel selecties uit te voeren op de lokale computer - maar het kan zijn dat dit niet altijd mogelijk is. Kopieer het statusbestand NIET indien APT of dpkg ondertussen uitgevoerd werden!!