Hallo, ich möchte mir einen eigenen Mirror von debian auf meinem Server einrichten. Hierfür, und um meine Downloadzeit in Grenzen zu halten, möchte ich nur die benötigten binary-i386-Pakete herunterladen (vorerst-bei flatrate dann alles:-). Dazu habe ich ein scirpt angepasst und etliches in den exclude-String eingefügt. Nun weiß ich aber nicht, ob das so richtig ist, oder ob mir dann wichtiges fehlt. Z.B. habe ich die Pakete mit den Endungen .dsc und .diff.gz mit hinein- geschrieben, doch ich weiß nicht, wie wichtig sie sind. Ich hänge das script mal an, denn so ganz schlau bin ich daraus nicht geworden. Vieleicht habe ich es aber doch verstanden und habe es richtig angepasst.
Herzlichen Dank! -- MfG, Karsten Greetings from Appeldorn with Appelkorn Written with mutt 1.2.5i on a quite fabulous Debian/GNU Linux 2.2r2
#! /bin/sh set -e # Set the variables below to fit your site. You can then use cron to have this # script run daily to automatically update your copy of the archive # # TO is the destination for the base of the debian directory (the dir that # holds dists/ and ls-lR) # # RSYNC_HOST is the site you have chosen from the mirrors file # # RSYNC_DIR is the directory given in the Archive-rsync: line of the # mirrors file for the site you have chosen to mirror. # # chmod 744 anonftpsync # # You MUST have rsync 2.0.16-1 or newer which is available in slink # With a blank EXCLUDE you will mirror the entire archive. # This exclude list is what ftp1.us.debian.org uses EXCLUDE="--exclude bo/ --exclude source/ --exclude /Debian-1.3* \ --exclude binary-alpha/ --exclude binary-m68k/ \ --exclude binary-powerpc/ --exclude Incoming/ --exclude \ local/ --exclude bo-unstable/ --exclude bo-updates/ \ --exclude indices/ --exclude project/ \ --exclude *.tar.gz --exclude binary-all/ \ --exclude binary-arm/ --exclude /binary-hppa/ --exclude \ binary-hurd*/ --exclude binary-m68k/ --exclude binary-mips*/ \ --exclude binary-powerpc/ --exclude binary-sh/ --exclude \ binary-sparc/ --exclude disks-alpha/ --exclude disks-m68k/ \ --exclude disks-sparc/ --exclude disks-powerpc/ --exclude \ disks-arm --exclude *alpha.deb --exclude *m68k.deb --exclude \ *powerpc.deb --exclude Contents-alpha.gz --exclude Contents-arm.gz \ --exclude Contents-hurd-i386.gz --exclude Contents-m68k.gz \ --exclude Contents-mips.gz --exclude Contents-mipsel.gz \ --exclude Contents-powerpc.gz --exclude Contents-sh.gz \ --exclude Contents-sparc.gz --exclude *sparc.deb --exclude *arm.deb \ --exclude *armsl.deb --exclude *arm.changes --exclude *sparc.changes \ --exclude *powerpc.changes --exclude *alpha.changes --exclude *hurd-i386.changes \ --exclude *m68k.changes --exclude upgrade-sparc/ --exclude upgrade-m68k/ \ --exclude upgrade-alpha/ --exclude upgrade-powerpc/ \ --exclude upgrade-arm/ --exclude upgrade-hurd-i386/ --exclude upgrade-armsl/ \ --exclude *m68k.tar.gz --exclude Contents-hppa.gz --exclude *ia64.deb \ --exclude *mips.deb --exclude *all.deb --exclude /binary-ia64/ --exclude \ /binary-s390/ --exclude *.dsc --exclude .diff.gz" TO=/pub/debian/mirror/debian RSYNC_HOST=ftp.rfc822.org RSYNC_DIR=debian/ LOCK="${TO}/Archive-Update-in-Progress-`hostname -f`" # Get in the right directory and set the umask to be group writable # cd $HOME umask 002 # Check to see if another sync is in progress if lockfile -! -l 43200 -r 0 "$LOCK"; then echo `hostname` is unable to start rsync, lock file exists exit 1 fi trap "rm -f $LOCK > /dev/null 2>&1" exit set +e rsync -rltvz --delete \ --exclude "Archive-Update-in-Progress-`hostname -f`" \ $EXCLUDE \ $RSYNC_HOST::$RSYNC_DIR $TO #> rsync.log 2>&1 #date -u > "${TO}" savelog rsync.log > /dev/null 2>&1