Kubuntu Update Pakete cachen

Kubuntu bzw. Ubuntu hat einen wunderschönen Paketmanager, Software kann einfach per Mausklick installiert und bei Nicht-Gefallen Restlos entfernt werden. Da können Benutzer anderer Betriebssysteme nur von träumen. Das Ganze funktioniert unter (K)Ubuntu viel problemloser von mir zuvor genutzten Linux-Distributionen. Ein Nachteil hat das .deb-System von Ubuntu dennoch: Die Datenmengen sind recht groß.

In der heutigen Zeit zwar kein Riesenproblem, jedoch ist die Wartezeit nervig wenn man wie ich des öfteren System für Freunde oder Verwandtschaft aufsetzt. Wie wäre es damit Pakete im lokalen Netz vorzuhalten? Es ist erstaunlich einfach.

Es scheinen mehrere Lösungen zu existieren, ich habe mich für Apt-Cacher NG entschieden. Eine ideale Lösung für ein Heimnetz, es lädt nur die Pakete herunter, die von den Clients angefordert werden. Hier ist die Schritt-für-Schritt Anleitung, quasi eine Kurzfassung von Apt-Cacher NG.

  1. Ein zentraler Computer „Server“ fungiert als Paketcache oder -proxy. Auf diesem muss das Apt-Cacher NG  installiert werden:
    sudo apt-get apt-cacher-ng
    eine Konfiguration ist meiner Meinung nach nicht nötig.
  2. Um diese Installation zu testen, bitte einmal die Webseite „http://192.168.12.34:3142/“ aufrufen. Statt 192.168.12.34 entsprechend die ip-Adresse Eures zentralen Computers nutzen (Kommandozeile: ip addr). Die Seite sieht ein wenig wirr aus „The requested page is not accessible.“, enthält jedoch die weiteren Schritte.
  3. Nun müssen die Clients auf den Proxy konfiguriert werden, unter anderem auch der zentrale Computer. Apt-Cacher NG ist ein Serverdienst, der unabhängig von der lokalen Paketverwaltung läuft. Dazu am besten für die Paketverwaltung einen Proxy konfigurieren:  Mit Root-Rechten eine Datei /etc/apt/apt.conf.d/01proxy folgenden Inhalts anlegen:
    Acquire::http { Proxy „http://192.168.12.34:3142“; };
    zum Beispiel via
    kdesudo kate /etc/apt/apt.conf.d/01proxy
    bitte
    die 192.168.12.34 durch die IP Eures zentralen Computers ersetzen.
  4. Die bereits vor Apt-Cacher NG heruntergeladenen .deb-Pakete können wiederverwendet werden. Dazu muss ein beliebiger Client ein Update der Paketliste angefragt haben.
    sudo apt-get update
  5. Die .deb-Dateien in ein _import-Verzeichnis umkopieren
    sudo mkdir -p /var/cache/apt-cacher-ng/_import
    sudo chown apt-cacher-ng /var/cache/apt-cacher-ng/_import
    sudo cp -al /var/cache/apt/archives/* /var/cache/apt-cacher-ng/_import/
  6. Und als letzten Schritt über die Webseite „http://192.168.12.34:3142/acng-report.html“ ganz unten die „Start Import“-Schaltfläche klicken.

Jeder neue Client im Heimnetz, muss nur eine /etc/apt/apt.conf.d/01proxy kopiert bekommen und schon laufen auch die längsten Updatedownloads aus dem schnellen Heimnetz.

Update 1: Es kann schon mal passieren, dass einzelne Paketlisten auf den Clients wegen Fehlern nicht geladen werden. Dies erledigt sich von Alleine, wenn apt-cacher-ng  den nächsten Säuberungslauf fährt. Möchte man per Web Interface selbst eingreifen, so wird das konkrete Löschen einzelner Indexdateien verwehrt: „Not Authorized. To start this action, an administrator password must be set and you must be logged in.“ Dazu muss ein Admin-Password gesetzt werden.

sudo vim /etc/apt-cacher-ng/security.conf

Eine Zeile einfügen:
AdminAuth: admin:<your password here>

sudo service apt-cacher-ng restart

Update 2: Das Paket ttf-mscorefonts-installer zur installation der MS Schriftarten Arial, Times New Roman und Co. zickte rum: „FEHLER 403: Forbidden file type or location“. Das Problem ist, dass Apt-Cacher-NG keine .EXE-Dateien mag. Dazu muss die Konfiguration geändert werden:

kdesudo kate /etc/apt-cacher-ng/acng.conf

Die mit „#PfilePattern…“ beginnende Zeile suchen, das „.exe|“ ergänzen und das „#“ entfernen.

PfilePattern = .*(.deb|.rpm|.exe|.dsc|.tar.gz.gpg|.tar.gz|.diff.gz|.diff.bz2|.jigdo|.template|changelog|copyright|.udeb|.diff/.*.gz|vmlinuz|initrd.gz|(Devel)?ReleaseAnnouncement(\?.*)?)$

Nun den Service Neustarten und fehlerfrei installieren.

sudo service apt-cacher-ng restart
sudo apt-get install ttf-mscorefonts-installer

Update 3: Leider sorgt das VirtualBox Repository des Öfteren für „invalid signatures“, BADSIG oder Checksum Fehler. Keine Ahnung was die eleganteste Lösung ist, hier der Holzhammer. Auf den Clients ggf. die erste Zeile weglassen, bis dato reichte es bei mir aus den Server (und somit einen Client) zu säubern.

sudo rm -rf /var/cache/apt-cacher-ng/download.virtualbox.org/
sudo apt-get clean
sudo rm /var/lib/apt/lists/*
sudo rm /var/lib/apt/lists/partial/*
sudo apt-get update

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Dein Kommentar wird manuell freigeschaltet. Ich bitte um Geduld, das kann manchmal etwas dauern.