Apt Mirror
Vorbereitung
Apt Mirror synchronisiert die konfigurierten Paketquellen vollständig. Von daher muss für ausreichend Platz auf dem System gesorgt werden.
Beispiel: Für die offiziellen Paketquellen von Ubuntu 20.04 (Focal Fossa) benötigt man, für die Architekturen i386 und AMD64 und ohne Quellcode-Pakete, etwa 80 GiB.
Von daher ist zu empfehlen, eine separate Partition zu erstellen und entsprechend zu mounten. (Mehr zum Mountpoint unten)
Installation und Konfiguration
apt install apt-mirror
Konfigdatei anpassen /etc/apt/mirror.list
############# config ##################
#
# set base_path /var/spool/apt-mirror
#
# set mirror_path $base_path/mirror
# set skel_path $base_path/skel
# set var_path $base_path/var
# set cleanscript $var_path/clean.sh
# set defaultarch <running host architecture>
# set postmirror_script $var_path/postmirror.sh
# set run_postmirror 0
set nthreads 20
set _tilde 0
#
############# end config ##############
### Bionic Beaver ###
deb http://archive.ubuntu.com/ubuntu bionic main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu bionic-security main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu bionic-updates main restricted universe multiverse
#deb http://archive.ubuntu.com/ubuntu bionic-proposed main restricted universe multiverse
#deb http://archive.ubuntu.com/ubuntu bionic-backports main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu bionic main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu bionic-security main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu bionic-updates main restricted universe multiverse
#deb-src http://archive.ubuntu.com/ubuntu bionic-proposed main restricted universe multiverse
#deb-src http://archive.ubuntu.com/ubuntu bionic-backports main restricted universe multiverse
### Focal Fossa ###
deb http://archive.ubuntu.com/ubuntu focal main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu focal-security main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu focal-updates main restricted universe multiverse
#deb http://archive.ubuntu.com/ubuntu focal-proposed main restricted universe multiverse
#deb http://archive.ubuntu.com/ubuntu focal-backports main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu focal main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu focal-security main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu focal-updates main restricted universe multiverse
#deb-src http://archive.ubuntu.com/ubuntu focal-proposed main restricted universe multiverse
#deb-src http://archive.ubuntu.com/ubuntu focal-backports main restricted universe multiverse
#
clean http://archive.ubuntu.com/ubuntu
Hier können die Paketquellen angegeben werden, welche synchronisiert werden sollen. In diesem Beispiel wurden die Paketquellen für Bionic Beaver und Focal Fossa konfiguriert. Es können aber ebenso Paketquellen für Debian angegeben werden.
Ausserdem kann es sinnvoll sein, den base_path anzupassen. Dies ist der Pfad wo die Paketquellen abgelegt werden. Auf diesen Pfad sollte die oben erwähnte Partition gemountet werden. Achtung: Die von apt-mirror erstellten Verzeichnisse und Dateien müssen nach dem Mounten vorhanden sein.
Synchronisieren
apt-mirror
Für das automatische Synchronisieren kann ein Cronjob verwendet werden: Beispiel: Jeden Sonntag um 1 Uhr.
/etc/cron.d/apt-mirror
0 1 * * sun apt-mirror /usr/bin/apt-mirror > /var/spool/apt-mirror/var/cron.log
Paketquellen verfügbar machen
Um die Paketquellen nun im Netz verfügbar zu machen, brauchen wir einen Webserver. Zum Beispiel Apache.
Siehe auch
Wenn der Webserver verfügbar ist, kann nun ein Link zu den Paketquellen ins DocumentRoot des Webservers erstellt werden:
ln -s /var/spool/apt-mirror/mirror/archive.ubuntu.com/ubuntu /var/www/html/ubuntu
Auf dem Client
Jetzt muss der Mirror Server nur noch auf dem Client konfiguriert werden:
/etc/apt/sources.list
deb http://<IP des Servers>/ubuntu focal main restricted