#!/bin/sh # $Id: mkdebmirror 4018 2006-09-25 12:13:17Z lange $ # Thomas Lange, lange@informatik.uni-koeln.de, (c) 2001-2005 # create partitial debian mirror using command debmirror(1) and rsync # - - - - - - - - - - - - - - - - - - - - - - - - - - - - rsync_disks() { # get the boot disks rsync --delete -av $2::debian/dists/$1/main/disks-$arch $destdir/debian/dists/$1/main/ } # - - - - - - - - - - - - - - - - - - - - - - - - - - - - update_from() { # update local mirror from a host host=$1 defopt="$allopt --host=$host --dist=$dist" echo "------------------ create mirror for debian ------------------" debmirror --getcontents $destdir/debian $defopt } # - - - - - - - - - - - - - - - - - - - - - - - - - - - - # main program # here you have to adjust the hostnames of the mirror and the names of the distributions debug="$@" arch=i386 dist=etch # dist=etch,etch-proposed-updates destdir=/var/www/debian_mirror allopt="$debug --ignore-missing-release --ignore-release-gpg --passive --nosource --arch=$arch --ignore=disks-$arch/" # first sync from a mirror near to you! # please ask the mirror admin(s) for permission before downloading # several GB of data! update_from http.debian.net # since this mirror is not always up to date, sync the rest from an official mirror # update_from http.debian.net # even one should not mirror the security site, but I will do it. echo "------------------ create mirror for debian-security ------------------" debmirror $destdir/debian-security $allopt --host=security.debian.org -r debian-security --section main,contrib,non-free -d etch/updates # get installation disk images via rsync #rsync_disks etch ftp2.de.debian.org