{{tag> apt-cacher}} ====== Apt-Cacher ====== vgl. auch [[http://wiki.ubuntuusers.de/Lokale_Paketquellen/Apt-Cacher-ng]] ===== Server-Installation ===== Das Paketverwaltungstool apt kann anstatt auf Server im Internet auf einen lokalen Server zugreifen.\\ Hierzu habe ich * eine neue VM erstellt, * sie an den virtuellen Switch des grünen Netzes angeschlossen * darin ein Ubuntu 12.04 server installiert, * ihm eine IP gegeben (z.B. 10.16.1.2) und dann mit * apt-get install apt-cacher-ng den apt-cacher installiert. * dann in der /etc/apt-cacher-ng/acng.conf die Zeilen CacheDir: /var/cache/apt-cacher-ng LogDir: /var/log/apt-cacher-ng Port:3142 angepasst. Die Portnummer wurde glaube ich vorgeschlagen, wenn man sie ändert, muss man sie natürlich überall ändern. * in der /etc/apt-cacher-ng/security.conf ein Admin-Passwort gesetzt: AdminAuth: admin: * Jetzt kann man unter http://10.16.1.2:3142 ein kleines Web-Frontend erreichen (alte gecachte Pakete purgen etc). ===== Anpassungen auf dem Client ===== * in /etc/apt/sources.list bzw. in denen im Unterverzeichnis sources.d müssen die Zeilen nun angepasst werden: deb http://10.16.1.2:3142/security.ubuntu.com/ubuntu roaring-security main restricted usw. * Alternativ kann man für alle sourcen gleichzeitig ein Proxy festlegen, indem man folgende Datei erstellt: Acquire::http { Proxy "http://172.16.17.2:3142"; }; Acquire::https { Proxy "https://"; }; * Wer Probleme mit z.B. oracle zum Download der jeweiligen Dateien während des Installationsprozesses bekommt, der kann Ausnahmen vom Proxy festlegen: Acquire::http::Proxy { "http://172.16.17.2:3142"; "http://download.oracle.com" DIRECT; }; Acquire::https::Proxy { "https://"; }; * ein sudo apt-get update zum Test ist sinnvoll (hat man alle geändert etc.) * Nun müssen die Benutzer installieren dürfen. Entweder mit apt-get oder mit ubuntu-software-center. Dazu müssen die sudo-Kommandos erlaubt sein, also mit sudo visudo eine Zeile einfügen: * wenn die Benutzer ALLES dürfen sollen (mache ich so, dafür synce ich immer): ALL ALL=(ALL) ALL * oder nur für das software-center: ALL ALL=(ALL) NOPASSWD:/usr/bin/software-center oder entsprechend apt-get reineditieren. * will man das ubuntu-software-center nutzen (die Kommandozeile schreckt evtl. ab), dann muss man noch in /usr/share/applications/ die Datei ubuntu-software-center.desktop ändern bzw. erstellen mit dem Inhalt [Desktop Entry] Name=Ubuntu Software Center GenericName=Software Center Comment=Lets you choose from thousands of applications available for Ubuntu Exec=sudo /usr/bin/software-center %u Icon=softwarecenter Terminal=false Type=Application Categories=PackageManager;GTK;System;Settings; MimeType=application/x-deb;application/x-debian-package;x-scheme-handler/apt; StartupNotify=true X-Ubuntu-Gettext-Domain=software-center Keywords=Sources;PPA;Install;Uninstall;Remove;Purchase;Catalogue;Store; * alternativ könnte man auch synaptics nutzen, das ist dann eben ein Zwischending von apt und dem bunti-bunti-Softwarecenter. * Man muss sich nun überlegen, ob man automatisch die neuen Listen (apt-get update) einlesen lässt, damit nicht veraltete Pakete gesucht werden, weil der Client nicht aktuell ist. Alternativ kann man seinen Leuten beibringen, vorher sudo apt-get update zu machen. * Probleme mit nicht zertifizierten Paketen etc. hatte ich bisher nicht, vll. kommen da noch Posts bzw. Hinweise.