百度首页 | 百度空间
 
查看文章
 
bin/rsync.debian
2008-01-02 21:04
#! /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*"
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"

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/"
multimedia_src="rsync://ftp.tw.debian.org/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/"

rsync -avzP --delete $alpha $arm $amd64 $hppa $ia64 $m68k $mips $mipsel $powerpc $s390 $sparc $source $src/dists/stable/ $dest/dists/stable/
rsync -avzP --delete $alpha $arm $amd64 $hppa $ia64 $m68k $mips $mipsel $powerpc $s390 $sparc $source $security_src/dists/stable/ $security_dest/dists/stable/
rsync -avzP --delete $alpha $arm $amd64 $hppa $ia64 $m68k $mips $mipsel $powerpc $s390 $sparc $source $multimedia_src/dists/stable/ $multimedia_dest/dists/stable/
rsync -avzP --delete $alpha $arm $amd64 $hppa $ia64 $m68k $mips $mipsel $powerpc $s390 $sparc $source $volatile_src/dists/stable/ $volatile_dest/dists/stable/

distributename="stable"

#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/

类别:原创 | 添加到搜藏 | 浏览() | 评论 (1)
 
最近读者:
 
网友评论:
1
2008-01-03 11:28
虽然看不懂,可是还是沙发!
 
发表评论:
姓 名:
网址或邮箱: (选填)
内 容:
验证码:
 

     

©2008 Baidu