Kapitel 2. APT auf beiden Maschinen benutzen

Inhaltsverzeichnis

2.1. Übersicht
2.2. Die Konfigurationsdatei

Ein verfügbares APT auf beiden Maschinen stellt die einfachste Konfiguration dar. Die Grundidee besteht darin, eine Kopie der Statusdatei auf der Platte abzulegen und die Maschine in der Ferne zu benutzen, um die neusten Paketdateien herunterzuladen und zu entscheiden, welche Pakete heruntergeladen werden. Die Plattenverzeichnisstruktur sollte so aussehen:

  /Platte/
    Archive/
       partial/
    lists/
       partial/
    status
    sources.list
    apt.conf

Die Konfigurationsdatei sollte APT mitteilen, dass es seine Dateien auf der Platte speichert und obendrein die Konfigurationsdateien auf der Platte benutzt. Die »sources.list« sollte genau die Sites enthalten, die Sie auf der fernen Maschine benutzen möchten und die Statusdatei sollte eine Kopie von /var/lib/dpkg/status vom Zielrechner sein. Bitte beachten Sie, falls Sie lokale Archive benutzen, dass Sie »copy«-URIs benutzen müssen. Die Syntax entspricht der von »file«-URIs.

apt.conf muss die nötigen Informationen enthalten, damit APT die Platte benutzt:

 APT
 {
   /* Dies ist nicht nötig, falls die beiden Maschinen die gleiche
      Architektur haben. Es teilt dem fernen APT mit, welche Architektur die
      Zielmaschine hat */
   Architecture "i386";

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

 Dir
 {
   /* Die Platte für Statusinformationen benutzen und die Statusdatei von der
      Vorgabe /var/lib/dpkg umleiten */
   State "/disc/";
   State::status "status";

   // Programmzwischenspeicher werden lokal gespeichert
   Cache::archives "/disc/archives/";
   Cache "/tmp/";

   // Ort der Quellenliste.
   Etc "/disc/";
 };

Weitere Details finden sich in der apt.conf-Handbuchseite und der Musterkonfigurationsdatei in /usr/share/doc/apt/examples/apt.conf.

Das Erste, was auf der Zielmaschine getan werden muss, ist das Einhängen der Platte und das Kopieren von /var/lib/dpkg/status dorthin. Sie werden außerdem die in der Übersicht umrissenen Verzeichnisse archives/partial/ und lists/partial/ erstellen müssen. Dann bringen Sie die Platte zu der fernen Maschine und konfigurieren Sie die »sources.list«. Führen Sie das folgende auf der fernen Maschine aus:

 # export APT_CONFIG="/disc/apt.conf"
 # apt-get update
 [ APT lädt die Paketdateien herunter ]
 # apt-get dist-upgrade
 [ APT lädt all die Pakete herunter, die die Zielmaschine benötigt, um ein
   Upgrade durchzuführen ]

Der Befehl »dist-upgrade« kann durch alle anderen Standard-APT-Befehle ersetzt werden, insbesondere »dselect-upgrade«. Sie können sogar eine APT-Oberfläche, wie dselect, benutzen. Jedoch stellt dies ein Problem dar, Ihre Auswahl zurück an den lokalen Rechner zu kommunizieren.

Nun enthält die Platte alle Indexdateien und Archive, die nötig sind, um ein Upgrade der Zielmaschine durchzuführen. Bringen Sie die Platte zurück und starten Sie:

  # export APT_CONFIG="/Platte/apt.conf"
  # apt-get check
  [ APT erstellt eine lokale Kopie der Zwischenspeicherdateien ]
  # apt-get --no-d -o dir::state::status=/var/lib/dpkg/status dist-upgrade
  [ Oder irgendeinen anderen APT-Befehl ]

Es ist für ordentliches Funktionieren notwendig, die Statusdatei erneut als die lokale anzugeben. Dies ist sehr wichtig!

Wenn Sie Dselect benutzen, können Sie die sehr riskante Aktion durchführen, disc/status auf /var/lib/dpkg/status zu kopieren, so dass die von Ihnen auf der fernen Maschine gemachte Auswahl aktualisiert wird. Es wird in höchstem Maße empfohlen, dass Leute nur auf der lokalen Maschine Auswahlen treffen – aber dies könnte manchmal unmöglich sein. Kopieren Sie die Statusdatei NICHT, falls Dpkg oder APT in der Zwischenzeit benutzt wurden!