Der eigene Debian Mirror

Ein eigener Debian Mirror, also eine lokale Kopie aller benötigten Dateien vom Debian-FTP Server kann für verschiedene Zwecke sinnvoll sein. Zunächst einmal hat man sofortigen Zugriff auf alle Dateien und kann diese installieren ohne auf den Download der Dateien warten zu müssen. Natürlich ist auch die Aktualität der Software um einiges besser als bei der Installation von CD-ROMs. Für die Installation von mehreren Rechnern ist eine solche lokale Kopie ebenfalls die erste Wahl. Wenn, wie im nächsten Abschnitt beschrieben, eigene Debian CDs erstellt werden sollen, ist ein Mirror ebenfalls zu empfehlen.

Für eine lokale Kopie der Daten wird neben dem eigentlichen Programm mirror vor allem viel Festplattenplatz benötigt.

Die Konfigurationsdateien für das Programm mirror finden sich nach der Installation im Verzeichnis /etc/mirror/packages/. Hier kann für jeden gewünschten Mirror eine Datei angelegt werden. Das Program selber wird dann mit der Konfigurationsdatei als Parameter aufgerufen. Zusätzlich kann die Option -d (auch mehrfach) angegeben werden um mehr Informationen über den Vorgang zu bekommen.

Hier eine Konfigurationsdatei die die Architekturen i386 und powerpc vom Debian FTP Server kopiert.

package=Debian
        #
        comment=Mirror of parts of ftp.debian.org/pub/debian
        #       
        # specify remote host, directory and ls-lR file
        site=ftp.de.debian.org
        remote_dir=/debian
        store_remote_listing=/tmp/DEBIANREMOTE
        ls_lR_file=ls-lR.gz
        #
        # specify the local directory 
        local_dir=/home/ftp/debian
        #
        # inform this user about results
        mail_to=fr
        #
        # Compress these files.
        #compress_patt=\.*(C|c)ontents(-i386)?
        #compress_patt+|Packages(-Master)?|ls-lR|md5sums
        #compress_patt+|Maintainers|msdos-names
        #
        # Exclude these files or directories 
        exclude_patt=private/|project/|ls-lR|ls-lR.gz|ls-lR.patch.gz|dsync.list
        exclude_patt+|debian-(bugs|lists)/
        exclude_patt+|\.*(hurd-i386|hppa|mipsel|mips|ia64|s390|arm|m68k|alpha|hurd|mips|sparc).deb?
        exclude_patt+|\.*(hurd-i386|hppa|mipsel|mips|ia64|s390|arm|m68k|alpha|hurd|mips|sparc).udeb?
        exclude_patt+|\.*(hurd-i386|hppa|mipsel|mips|ia64|s390|arm|m68k|alpha|hurd|mips|sparc).gz?
        exclude_patt+|\.*(hurd-i386|hppa|mipsel|mips|ia64|s390|arm|m68k|alpha|hurd|mips|sparc).diff.gz?
        exclude_patt+|\.*(hurd-i386|hppa|mipsel|mips|ia64|s390|arm|m68k|alpha|hurd|mips|sparc).dsc?
        exclude_patt+|\.*(hurd-i386|hppa|mipsel|mips|ia64|s390|arm|m68k|alpha|hurd|mips|sparc).tar.gz?
        exclude_patt+|\.tar.gz?
        exclude_patt+|\.dsc?
        exclude_patt+|\.changes?
        exclude_patt+|\.diff.gz?
        exclude_patt+|bo/
        exclude_patt+|rex/
        exclude_patt+|slink/
        exclude_patt+|binary-arm/
        exclude_patt+|binary-m68k/
        exclude_patt+|binary-ia64/
        exclude_patt+|binary-hppa/
        exclude_patt+|binary-sparc/
        exclude_patt+|binary-mipsel/
        exclude_patt+|binary-mips/
        exclude_patt+|binary-alpha/
        exclude_patt+|disks-alpha/
        exclude_patt+|disks-m68k/
        exclude_patt+|disks-sparc/
        exclude_patt+|upgrade-alpha/
        exclude_patt+|upgrade-m68k/
        exclude_patt+|upgrade-sparc/
        exclude_patt+|binary-s390/
        exclude_patt+|binary-hurd-i386/
        exclude_patt+|md5sums
        exclude_patt+|md5sums.gz
        exclude_patt+|/potato/main/disks-arm/
        exclude_patt+|/potato/main/binary-arm/
        exclude_patt+|/potato/contrib/binary-arm/
        exclude_patt+|/potato/non-free/binary-arm/
        exclude_patt+|/potato/main/binary-sparc/
        exclude_patt+|/potato/contrib/binary-sparc/
        exclude_patt+|/potato/non-free/binary-sparc/
        exclude_patt+|woody/non-free/binary-sparc/
        exclude_patt+|woody/non-free/binary-alpha/
        exclude_patt+|woody/main/binary-sparc/
        exclude_patt+|woody/main/binary-alpha/
        exclude_patt+|woody/contrib/binary-sparc/
        exclude_patt+|woody/contrib/binary-alpha/
        exclude_patt+|woody/main/binary-hurd/
        exclude_patt+|woody/main/binary-hurd-i386/
        exclude_patt+|woody/main/binary-arm/
        exclude_patt+|woody/main/binary-mips/
        exclude_patt+|woody/main/binary-mipsel/
        exclude_patt+|binary-hppa/
        exclude_patt+|binary-sh/
        exclude_patt+|woody/main/binary-sparc/
        exclude_patt+|woody/main/disks-sparc/
        exclude_patt+|woody/main/binary-alpha/
        exclude_patt+|woody/Contents-arm.gz
        exclude_patt+|woody/Contents-hurd-i386.gz
        exclude_patt+|woody/Contents-alpha.gz
        exclude_patt+|woody/Contents-sparc.gz
        exclude_patt+|woody/Contents-hppa.gz
        exclude_patt+|woody/Contents-sh.gz
        exclude_patt+|woody/Contents-mips.gz
        exclude_patt+|woody/Contents-mipsel.gz
        #
        exclude_patt+|\.notar
        #
        # Don't delete what is mirrored by the other mirror package below
        #
        # delete_excl=(local|debian-non-US|non-US|project)(/|$)
        # Do not delete if more than 20% of all files would vanish
        max_delete_files=20%