ubuntuusers.deWikiapt-mirror

apt-mirror

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

Inhaltsverzeichnis
  1. Installation
  2. Konfiguration

Das Programm apt-mirror {en} lädt zu Beginn die gesamte Paketquelle herunter, egal welches Paket benötigt wird. Apt-mirror eignet sich für Situationen in der eine Paketquelle komplett gespiegelt werden soll. Das ist oft nur in größeren Netzen praktisch, wenn man auf vielen Rechnern Ubuntu installiert wird, ohne genau zu wissen, was alles benötigt wird und evtl. zeitweise keine oder nur wenig Bandbreite zur Verfügung hat.

Man sollte beachten, dass man für die Einrichtung von apt-mirror je nach Größe der Paketquelle entsprechend Platz auf der Festplatte benötigt. Für die offiziellen Ubuntu-Paketquellen benötigt man, wenn man Pakete für alle Plattformen benötigt, über 30 GB. Bei einer Plattform sind es etwa 17 GB.

Ähnliche Programme unter: Lokale Paketquellen

Installation

Folgendes Paket muss installiert [1] werden:

  • apt-mirror (universe [2] )

Wiki/Vorlagen/Installbutton/button.png

Konfiguration

Zur Benutzung von apt-mirror muss jetzt die Datei mirror.list im Ordner /etc/apt/angepasst werden. Falls man apt-mirror schon testweise ausgeführt hat, ist mirror.list bereits angelegt, falls nicht geschieht dies mit dem Editor der Wahl [4].

  • Da das Programm ursprünglich für Debian konfiguriert ist, sind auch Debian-Quellen eingetragen.

Hinweis:

Die Paketquellen der Wahl bezieht man am einfachsten aus der /etc/apt/sources.list der Rechner, die später darauf zugreifen sollen.

Wie in der sources.list werden nun die Paketquellen in die Datei /etc/apt/mirror.list eingetragen [4].

Grundeinstellungen

# apt-mirror configuration file
##
## The default configuration options (uncomment and change to override)
##
#
#set base_path     /var/spool
#set mirror_path     $base_path/mirror
#set skel_path     $base_path/skel
#set var_path        $base_path/var
#
# set defaultarch  <running host architecture>
# set nthreads     20
#

Sollen die Pakete nicht in /var/spool/apt-mirror liegen, kann per Anpassung des base_path auch ein anderes Verzeichnis gewählt werden, allerdings müssen darin die Verzeichnisse mirror, skel und var händisch angelegt und mit Schreibrechten versehen werden.

Paketquellen

##
##Sources
##
#
# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.

deb http://de.archive.ubuntu.com/ubuntu/ gutsy main restricted
deb-src http://de.archive.ubuntu.com/ubuntu/ gutsy main restricted

## Major bug fix updates produced after the final release of the
## distribution.
deb http://de.archive.ubuntu.com/ubuntu/ gutsy-updates main restricted
deb-src http://de.archive.ubuntu.com/ubuntu/ gutsy-updates main restricted

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team, and may not be under a free licence. Please satisfy yourself as to
## your rights to use the software. Also, please note that software in
## universe WILL NOT receive any review or updates from the Ubuntu security
## team.
#deb http://de.archive.ubuntu.com/ubuntu/ gutsy universe
#deb-src http://de.archive.ubuntu.com/ubuntu/ gutsy universe
#deb http://de.archive.ubuntu.com/ubuntu/ gutsy-updates universe
#deb-src http://de.archive.ubuntu.com/ubuntu/ gutsy-updates universe

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team, and may not be under a free licence. Please satisfy yourself as to
## your rights to use the software. Also, please note that software in
## multiverse WILL NOT receive any review or updates from the Ubuntu
## security team.
#deb http://de.archive.ubuntu.com/ubuntu/ gutsy multiverse
#deb-src http://de.archive.ubuntu.com/ubuntu/ gutsy multiverse
#deb http://de.archive.ubuntu.com/ubuntu/ gutsy-updates multiverse
#deb-src http://de.archive.ubuntu.com/ubuntu/ gutsy-updates multiverse

## Uncomment the following two lines to add software from the 'backports'
## repository.
## N.B. software from this repository may not have been tested as
## extensively as that contained in the main release, although it includes
## newer versions of some applications which may provide useful features.
## Also, please note that software in backports WILL NOT receive any review
## or updates from the Ubuntu security team.
# deb http://de.archive.ubuntu.com/ubuntu/ gutsy-backports main restricted universe multiverse
# deb-src http://de.archive.ubuntu.com/ubuntu/ gutsy-backports main restricted universe multiverse

## Uncomment the following two lines to add software from Canonical's
## 'partner' repository. This software is not part of Ubuntu, but is
## offered by Canonical and the respective vendors as a service to Ubuntu
## users.
# deb http://archive.canonical.com/ubuntu gutsy partner
# deb-src http://archive.canonical.com/ubuntu gutsy partner

deb http://security.ubuntu.com/ubuntu gutsy-security main restricted
deb-src http://security.ubuntu.com/ubuntu gutsy-security main restricted
#deb http://security.ubuntu.com/ubuntu gutsy-security universe
#deb-src http://security.ubuntu.com/ubuntu gutsy-security universe
#deb http://security.ubuntu.com/ubuntu gutsy-security multiverse
#deb-src http://security.ubuntu.com/ubuntu gutsy-security multiverse

In dieser Beispieldatei wurden die Paketquellen für Gutsy aus der sources.list eines Gutsy-Rechners eingetragen, folglich wird der Server später nur Gutsy-Pakete bieten.

Architekturen

Will man mehrere Architekturen spiegeln, muss man die Paketquellen in der Datei /etc/apt/mirror.list etwas anpassen: aus

deb http://de.archive.ubuntu.com/ubuntu/ gutsy main restricted

wird, wenn man z.B. amd64 und i386 spiegeln möchte:

deb-i386 http://de.archive.ubuntu.com/ubuntu/ gutsy main restricted
deb-amd64 http://de.archive.ubuntu.com/ubuntu/ gutsy main restricted

Nachbehandlung

##
## Cleaner configuration example
##
#
# set cleanscript $var_path/clean.sh
#
# Cleaning section
clean http://de.archive.ubuntu.com/ubuntu/

#skip-clean

Mit dem Skript clean.sh werden die angegebenen Verzeichnisse (clean) auf doppelte Dateien überprüft und diese gegebenenfalls gelöscht um Festplattenplatz freizugeben. Per skip-clean können Unterverzeichnisse ausgenommen werden. Das Clean-Skript kann entweder automatisch (# in mirror.list entfernen) oder manuell ausgelöst werden.

Achtung!

Durch apt-mirror entsteht beim ersten Start ein enormes Datenvolumen! Die hier gezeigte Konfiguration legt 11GB an.

Zunächst jedoch wird apt-mirror [5] gestartet:

sudo apt-mirror 
Downloading 33 index files using 20 threads...
Begin time: Fri Nov  9 17:46:20 2007
[20]... [19]... [18]... [17]... [16]... [15]... [14]... [13]... [12]... [11]... [10]... [9]... [8]... [7]... [6]... [5]... [4]... [3]... [2]... [1]... [0]...
End time: Fri Nov  9 17:46:51 2007
Proceed indexes: [SSSPPP]
11363196501 bytes will be downloaded into archive.
Downloading 12905 archive files using 20 threads...
Begin time: Fri Nov  9 17:46:57 2007
[20]... [19]... [18]... [17]... [16]... [15]... [14]... [13]... [12]... [11]... [10]... [9]... [8]... [7]... [6]... [5]... [4]... [3]... [2]... [1]... [0]...
End time: Fri Nov  9 23:05:25 2007
764538880 bytes in 412 files and 88 directories can be freed.
Run /var/spool/apt-mirror/var/clean.sh for this purpose.

Bereinigung

Wie von der Ausgabe empfohlen folgt das Löschen überflüssiger Details.

sudo /bin/bash /var/spool/apt-mirror/var/clean.sh 
Removing 412 unnecessary files [764538880 bytes]...
[0%]..........................................done.
Removing 88 unnecessary directories...
[0%]..................................................[56%]......................................done.

Bei Bedarf des regelmäßigen Updates der Pakete kann jetzt noch ein Cron [6] angelegt werden.

Nutzbarmachen

Um den Mirror im Netzwerk verfügbar zu machen, muss dieser angeboten werden, dies erfolgt per Webserver (beispielsweise Apache). Normalerweise liegen dessen Dateien in /var/www/, also nicht dort wo die gespiegelten Pakete liegen, die Verbindung wird per ln -s hergestellt.

ln -s /var/spool/apt-mirror/mirror/de.archive.ubuntu.com/ubuntu /var/www/ubuntu 

Benutzung

Auf den Clientsystemen muss jetzt nur noch der neue Server eingetragen werden [2].

deb http://<IP des Servers>/ubuntu gutsy main restricted

Die Paketquellen jetzt neu einlesen und der Mirror steht zur Verfügung.

Hinweis für die Benutzer eines Proxys

Wenn man einen Proxy (z.B. Squid) benutzt, so ist der Aufruf von apt-mirror folgendermaßen zu ergänzen (gilt auch analog für /etc/cron.d/apt-mirror):

export http_proxy=http://[<Porxy-user>:<Proxy-Passwort>@]<IP-Adresse-Proxy>:<Proxy-Port>/ && apt-mirror

Diese Revision wurde am 25. August 2011 um 11:16 Uhr von UbuntuFlo erstellt.
Dieser Seite wurden folgende Begriffe zugeordnet: Paketverwaltung, Netzwerk

Passwort vergessen?