查看文章 |
bin/rsync.debian
2008-01-03 21:18
#! /bin/bash #dists="--exclude=*README* --exclude=doc --exclude=indices --exclude=project --exclude=tools --exclude=*experimental* --exclude=*proposed-updates*" #distribute="--exclude=*Debian* --exclude=*oldstable* --exclude=stable-* --exclude=*testing* --exclude=*unstable* --exclude=sid --exclude=*sarge* --exclude=etch-* --exclude=*lenny*" #exclude arch alpha="--exclude=*-alpha.diff --exclude=*-alpha --exclude=*alpha.gz --exclude=*_alpha.deb --exclude=*_alpha.udeb" arm="--exclude=*-arm.diff --exclude=*-arm --exclude=*arm.gz --exclude=*_arm.deb --exclude=*_arm.udeb" amd64="--exclude=*-amd64.diff --exclude=*-amd64 --exclude=*amd64.gz --exclude=*_amd64.deb --exclude=*_amd64.udeb" hppa="--exclude=*-hppa.diff --exclude=*-hppa --exclude=*hppa.gz --exclude=*_hppa.deb --exclude=*_hppa.udeb" i386="--exclude=*-i386.diff --exclude=*-i386 --exclude=*i386.gz --exclude=*_i386.deb --exclude=*_i386.udeb" ia64="--exclude=*-ia64.diff --exclude=*-ia64 --exclude=*ia64.gz --exclude=*_ia64.deb --exclude=*_ia64.udeb" m68k="--exclude=*-m68k.diff --exclude=*-m68k --exclude=*m68k.gz --exclude=*_m68k.deb --exclude=*_m68k.udeb" mips="--exclude=*-mips.diff --exclude=*-mips --exclude=*mips.gz --exclude=*_mips.deb --exclude=*_mips.udeb" mipsel="--exclude=*-mipsel.diff --exclude=*-mipsel --exclude=*mipsel.gz --exclude=*_mipsel.deb --exclude=*_mipsel.udeb" powerpc="--exclude=*-powerpc.diff --exclude=*-powerpc --exclude=*powerpc.gz --exclude=*_powerpc.deb --exclude=*_powerpc.udeb" s390="--exclude=*-s390.diff --exclude=*-s390 --exclude=*s390.gz --exclude=*_s390.deb --exclude=*_s390.udeb" sparc="--exclude=*-sparc.diff --exclude=*-sparc --exclude=*sparc.gz --exclude=*_sparc.deb --exclude=*_sparc.udeb" source="--exclude=source --exclude=*.diff.gz --exclude=*.orig.tar.gz --exclude=*.dsc --exclude=*tar.gz --exclude=*tar.bz2" #arch ALPHA=`echo $arm $amd64 $hppa $i386 $ia64 $m68k $mips $mipsel $powerpc $s390 $sparc $source` ARM=`echo $alpha $amd64 $hppa $i386 $ia64 $m68k $mips $mipsel $powerpc $s390 $sparc $source` AMD64=`echo $alpha $arm $hppa $i386 $ia64 $m68k $mips $mipsel $powerpc $s390 $sparc $source` HPPA=`echo $alpha $arm $amd64 $i386 $ia64 $m68k $mips $mipsel $powerpc $s390 $sparc $source` I386=`echo $alpha $arm $amd64 $hppa $ia64 $m68k $mips $mipsel $powerpc $s390 $sparc $source` IA64=`echo $alpha $arm $amd64 $hppa $i386 $m68k $mips $mipsel $powerpc $s390 $sparc $source` M68K=`echo $alpha $arm $amd64 $hppa $i386 $ia64 $mips $mipsel $powerpc $s390 $sparc $source` MIPS=`echo $alpha $arm $amd64 $hppa $i386 $ia64 $m68k $mipsel $powerpc $s390 $sparc $source` MIPSEL=`echo $alpha $arm $amd64 $hppa $i386 $ia64 $m68k $mips $powerpc $s390 $sparc $source` POWERPC=`echo $alpha $arm $amd64 $hppa $i386 $ia64 $m68k $mips $mipsel $s390 $sparc $source` S390=`echo $alpha $arm $amd64 $hppa $i386 $ia64 $m68k $mips $mipsel $powerpc $sparc $source` SPARC=`echo $alpha $arm $amd64 $hppa $i386 $ia64 $m68k $mips $mipsel $powerpc $s390 $source` SOURCE=`echo $alpha $arm $amd64 $hppa $i386 $ia64 $m68k $mips $mipsel $powerpc $s390 $sparc` src="rsync://ftp.tw.debian.org/debian/" #src="rsync://mirrors.kernel.org/debian/" security_src="rsync://security.debian.org/debian-security/" multimedia_src="rsync://mirror.home-dn.net/debian-multimedia/" volatile_src="rsync://ftp.tw.debian.org/debian-volatile/" dest="/home/ftp/sources/debian/" security_dest="/home/ftp/sources/debian-security/" multimedia_dest="/home/ftp/sources/debian-multimedia/" volatile_dest="/home/ftp/sources/debian-volatile/" #distributename="stable" #debian default for distributename in {stable,unstable} do( needfile_path=$dest/dists/$distributename rsync -avzrP --delete $I386 $src/dists/$distributename/ $dest/dists/$distributename/ for packagesclass in {main,contrib,non-free} do( lastdest=$dest/dists/$distributename/$packagesclass/binary-i386 gunzip -cd $lastdest/Packages.gz > $lastdest/Packages cat $lastdest/Packages | grep Filename: | sed '/^Filename/s/Filename: //g' > $lastdest/$packagesclass cat $lastdest/$packagesclass >> $needfile_path/needfiles ); done; rsync -avzP --delete --files-from=$needfile_path/needfiles $src/ $dest/ ); done; #debian security update for distributename in stable do( needfile_path=$security_dest/dists/$distributename/updates rsync -avzrP --delete $I386 $security_src/dists/$distributename/ $security_dest/dists/$distributename/ for packagesclass in {main,contrib,non-free} do( lastdest=$security_dest/dists/$distributename/updates/$packagesclass/binary-i386 gunzip -cd $lastdest/Packages.gz > $lastdest/Packages cat $lastdest/Packages | grep Filename: | sed '/^Filename/s/Filename: //g' > $lastdest/$packagesclass cat $lastdest/$packagesclass >> $needfile_path/needfiles ); done; rsync -avzP --delete --files-from=$needfile_path/needfiles $security_src/ $security_dest/ ); done; #debian multimedia for distributename in {stable,unstable} do( needfile_path=$multimedia_dest/dists/$distributename rsync -avzrP --delete $I386 $multimedia_src/dists/$distributename/ $multimedia_dest/dists/$distributename/ for packagesclass in main do( lastdest=$multimedia_dest/dists/$distributename/$packagesclass/binary-i386 gunzip -cd $lastdest/Packages.gz > $lastdest/Packages cat $lastdest/Packages | grep Filename: | sed '/^Filename/s/Filename: //g' > $lastdest/$packagesclass cat $lastdest/$packagesclass >> $needfile_path/needfiles ); done; rsync -avzP --delete --files-from=$needfile_path/needfiles $multimedia_src/ $multimedia_dest/ ); done; #debian volatile for distributename in stable do( needfile_path=$volatile_dest/dists/$distributename/volatile rsync -avzrP --delete $I386 $volatile_src/dists/$distributename/ $volatile_dest/dists/$distributename/ for packagesclass in {main,contrib,non-free} do( lastdest=$volatile_dest/dists/$distributename/volatile/$packagesclass/binary-i386 gunzip -cd $lastdest/Packages.gz > $lastdest/Packages cat $lastdest/Packages | grep Filename: | sed '/^Filename/s/Filename: //g' > $lastdest/$packagesclass cat $lastdest/$packagesclass >> $needfile_path/needfiles ); done; rsync -avzP --delete --files-from=$needfile_path/needfiles $volatile_src/ $volatile_dest/ ); done; #debian default main #dist="/dists/$distributename/main/binary-i386/" #gunzip -cd $dest/$dist/Packages.gz > $dest/$dist/Packages #cat $dest/$dist/Packages | grep Filename: | sed '/^Filename/s/Filename: //g' > $dest/$dist/needfiles #rsync -avzP --delete --files-from=$dest/$dist/needfiles $src/ $dest/ #debian default contrib #dist="/dists/$distributename/contrib/binary-i386/" #gunzip -cd $dest/$dist/Packages.gz > $dest/$dist/Packages #cat $dest/$dist/Packages | grep Filename: | sed '/^Filename/s/Filename: //g' > $dest/$dist/needfiles #rsync -avzP --delete --files-from=$dest/$dist/needfiles $src/ $dest/ #debian default non-free #dist="/dists/$distributename/non-free/binary-i386/" #gunzip -cd $dest/$dist/Packages.gz > $dest/$dist/Packages #cat $dest/$dist/Packages | grep Filename: | sed '/^Filename/s/Filename: //g' > $dest/$dist/needfiles #rsync -avzP --delete --files-from=$dest/$dist/needfiles $src/ $dest/ #debian security update main #dist="/dists/$distributename/updates/main/binary-i386/" #gunzip -cd $security_dest/$dist/Packages.gz > $security_dest/$dist/Packages #cat $security_dest/$dist/Packages | grep Filename: | sed '/^Filename/s/Filename: //g' > $security_dest/$dist/needfiles #rsync -avzP --delete --files-from=$security_dest/$dist/needfiles $security_src/ $security_dest/ #debian security updates contrib #dist="/dists/$distributename/updates/contrib/binary-i386/" #gunzip -cd $security_dest/$dist/Packages.gz > $security_dest/$dist/Packages #cat $security_dest/$dist/Packages | grep Filename: | sed '/^Filename/s/Filename: //g' > $security_dest/$dist/needfiles #rsync -avzP --delete --files-from=$security_dest/$dist/needfiles $security_src/ $security_dest/ #debian security updates non-free #dist="/dists/$distributename/updates/non-free/binary-i386/" #gunzip -cd $security_dest/$dist/Packages.gz > $security_dest/$dist/Packages #cat $security_dest/$dist/Packages | grep Filename: | sed '/^Filename/s/Filename: //g' > $security_dest/$dist/needfiles #rsync -avzP --delete --files-from=$security_dest/$dist/needfiles $security_src/ $security_dest/ #debian multimedia main #dist="/dists/$distributename/main/binary-i386/" #gunzip -cd $multimedia_dest/$dist/Packages.gz > $multimedia_dest/$dist/Packages #cat $multimedia_dest/$dist/Packages | grep Filename: | sed '/^Filename/s/Filename: //g' > $multimedia_dest/$dist/needfiles #rsync -avzP --delete --files-from=$multimedia_dest/$dist/needfiles $multimedia_src/ $multimedia_dest/ #debian volatile main #dist="/dists/$distributename/volatile/main/binary-i386/" #gunzip -cd $volatile_dest/$dist/Packages.gz > $volatile_dest/$dist/Packages #cat $volatile_dest/$dist/Packages | grep Filename: | sed '/^Filename/s/Filename: //g' > $volatile_dest/$dist/needfiles #rsync -avzP --delete --files-from=$volatile_dest/$dist/needfiles $volatile_src/ $volatile_dest/ #debian volatile contrib #dist="/dists/$distributename/volatile/contrib/binary-i386/" #gunzip -cd $volatile_dest/$dist/Packages.gz > $volatile_dest/$dist/Packages #cat $volatile_dest/$dist/Packages | grep Filename: | sed '/^Filename/s/Filename: //g' > $volatile_dest/$dist/needfiles #rsync -avzP --delete --files-from=$volatile_dest/$dist/needfiles $volatile_src/ $volatile_dest/ #debian volatile non-free #dist="/dists/$distributename/volatile/non-free/binary-i386/" #gunzip -cd $volatile_dest/$dist/Packages.gz > $volatile_dest/$dist/Packages #cat $volatile_dest/$dist/Packages | grep Filename: | sed '/^Filename/s/Filename: //g' > $volatile_dest/$dist/needfiles #rsync -avzP --delete --files-from=$volatile_dest/$dist/needfiles $volatile_src/ $volatile_dest/ #源的移动 #cat dists/lenny/main/binary-i386/needfiles | xargs mv -vt main/ #源的恢复 #for name in `cat dists/lenny/contrib/binary-i386/needfiles` ;do echo $name > name ; mkdir -p `cat name | xargs dirname`; mv -v contrib/`cat name | xargs basename` `cat name | xargs dirname` ;done #cat Packages | grep Filename: | sed '/^Filename/s/Filename: //g ; /^/s/\/*[a-z]*\///g ' > mainfilename #rsync -avz --files-from=share/debian/mainfilename rsync://mirrors.kernel.org/debian/ share/debian/main/ #rsync -avzPS --delete $dist $distribute $alpha $arm $amd64 $hppa $ia64 $m68k $mips $mipsel $powerpc $s390 $sparc $source rsync://ftp.tw.debian.org/debian/ /media/sdb1/sources/debian/ #打了#的都是不用了的,以前的,没用的。 |
最近读者: