您的位置:首页 > Web前端

Fedora yum优化配置(以8为例)

2008-11-16 23:35 288 查看
我优化yum的知识,主要来源于以下2篇链接文章:
http://www.linuxsir.org/bbs/showthread.php?t=290570
http://www.linuxsir.org/bbs/show ... 6499&highlight=axel

小提示:
1、axel插件是wq1977大侠开发的,国货哦。
http://www.linuxsir.org/bbs/showthread.php?t=290570&highlight=
2、另有shawn.p.huang大侠开发了一款中文输入法,目前在快速完善升级中,现已率先加入Fedora官方源,详情看这里
http://www.linuxsir.org/bbs/thread319016.html
3、Fedora 9 将通过yum-presto插件实现差量下载,也就是说只下载旧包与新包的差异部分。效率几乎提升10倍。

以Fedora 8 、axel 1.0b 为例,以root权限操作,开始。
==========================
一、安装yum-fastestmirror

yum install yum-fastestmirror

二、安装axel

注:我个人遇到的bug是假如yum(安装axel并启用后)要下载10个文件,第6个就中止了,那么再运行yum命令时,需要10个都重新下载。但这时我会在axelget.conf中把enabled值修改为0临时禁用axel,免得重复下载已完成的包。

1、获得axelget.conf

cd /etc/yum/pluginconf.d/
wget http://wininlinux.googlepages.com/axelget.conf
2、获得axelget.py
cd /usr/lib/yum-plugins/
wget http://wininlinux.googlepages.com/axelget.py
3、获得axel源码和安装。
cd /usr/local/src
wget http://wilmer.gaast.net/downloads/axel-1.0b.tar.gz tar zxvf axel-1.0b.tar.gz
cd axel-1.0b
./configure --i18n=1
make
make install
三、优化fedora.repo与fedora-updates.repo文件
官方的镜像列表http://mirrors.fedoraproject.org/publiclist/Fedora/
优化前请做好备份。

tar jcvf MyReposBak.tar.bz2 /etc/yum.repo.d/
chmod 444 MyReposBak.tar.bz2
亚森罗平兄的fedora.repo文件的头一段:

[fedora]
name=Fedora $releasever - $basearch
failovermethod=priority
#baseurl=http://download.fedora.redhat.com/pub/fedora/linux/releases/$releasever/Everything/$basearch/os/
baseurl= http://download.fedora.redhat.com/pub/fedora/linux/releases/$releasever/Everything/$basearch/os/ http://mirrors.usc.edu/pub/linux/distributions/fedora/linux/releases/$releasever/Everything/$basearch/os/ http://mirrors.cat.pdx.edu/fedora/linux/releases/$releasever/Everything/$basearch/os/ http://ftp.iij.ad.jp/pub/linux/fedora/releases/$releasever/Everything/$basearch/os/ ftp://ftp.iij.ad.jp/pub/linux/fedora/releases/$releasever/Everything/$basearch/os/ http://mirror.aarnet.edu.au/pub/fedora/linux/releases/$releasever/Everything/$basearch/os/ http://mirror.internode.on.net/pub/fedora/linux/releases/$releasever/Everything/$basearch/os/ http://gulus.usherbrooke.ca/pub/distro/fedora/linux/releases/$releasever/Everything/$basearch/os/ http://mirror.karneval.cz/pub/linux/fedora/linux/releases/$releasever/Everything/$basearch/os/ http://sunsite.mff.cuni.cz/MIRRORS/fedora.redhat.com/linux/releases/$releasever/Everything/$basearch/os/ http://ftp-stud.hs-esslingen.de/pub/fedora/linux/releases/$releasever/Everything/$basearch/os/ http://fedora.tu-chemnitz.de/pub/linux/fedora/linux/releases/$releasever/Everything/$basearch/os/ http://mirror.fraunhofer.de/download.fedora.redhat.com/fedora/linux/releases/$releasever/Everything/$basearch/os/ http://ftp.uni-bayreuth.de/linux/fedora/linux/releases/$releasever/Everything/$basearch/os/ http://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/fedora/linux/releases/$releasever/Everything/$basearch/os/ ftp://ftp.free.fr/mirrors/fedora.redhat.com/fedora/linux/releases/$releasever/Everything/$basearch/os/ http://limestone.uoregon.edu/ftp/fedora/linux/releases/$releasever/Everything/$basearch/os/ http://fedora.mirror.iweb.ca/releases/$releasever/Everything/$basearch/os/ ftp://ftp.cse.buffalo.edu/pub/Linux/fedora/linux/releases/$releasever/Everything/$basearch/os/ http://mirror.cc.vt.edu/pub/fedora/linux/releases/$releasever/Everything/$basearch/os/ http://mirrors.tummy.com/pub/fedora.redhat.com/fedora/linux/releases/$releasever/Everything/$basearch/os/ http://mirrors.kernel.org/fedora/releases/$releasever/Everything/$basearch/os/ http://www.gtlib.gatech.edu/pub/fedora.redhat/linux/releases/$releasever/Everything/$basearch/os/ http://ftp.linux.ncsu.edu/pub/fedora/linux/releases/$releasever/Everything/$basearch/os/ http://ftp.iij.ad.jp/pub/linux/fedora/releases/$releasever/Everything/$basearch/os/ ftp://ftp.iij.ad.jp/pub/linux/fedora/releases/$releasever/Everything/$basearch/os/ http://ftp.yz.yamagata-u.ac.jp/pub/linux/fedora/linux/releases/$releasever/Everything/$basearch/os/ http://ftp.rhnet.is/pub/fedora/linux/releases/$releasever/Everything/$basearch/os/ http://mirror.pacific.net.au/linux/fedora/linux/releases/$releasever/Everything/$basearch/os/
#mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-$releasever&arch=$basearch
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora file:///etc/pki/rpm-gpg/RPM-GPG-KEY

亚森罗平兄的fedora-updates.repo文件的头一段:

[updates]
name=Fedora $releasever - $basearch - Updates
failovermethod=priority
baseurl= http://download.fedora.redhat.com/pub/fedora/linux/updates/$releasever/$basearch/ http://mirrors.usc.edu/pub/linux/distributions/fedora/linux/updates/$releasever/$basearch/ http://mirrors.cat.pdx.edu/fedora/linux/updates/$releasever/$basearch/ http://ftp.iij.ad.jp/pub/linux/fedora/updates/$releasever/$basearch/ ftp://ftp.iij.ad.jp/pub/linux/fedora/updates/$releasever/$basearch/ http://mirror.aarnet.edu.au/pub/fedora/linux/updates/$releasever/$basearch/ http://mirror.internode.on.net/pub/fedora/linux/updates/$releasever/$basearch/ http://gulus.usherbrooke.ca/pub/distro/fedora/linux/updates/$releasever/$basearch/ http://mirror.karneval.cz/pub/linux/fedora/linux/updates/$releasever/$basearch/ http://sunsite.mff.cuni.cz/MIRRORS/fedora.redhat.com/linux/updates/$releasever/$basearch/ http://ftp-stud.hs-esslingen.de/pub/fedora/linux/updates/$releasever/$basearch/ http://fedora.tu-chemnitz.de/pub/linux/fedora/linux/updates/$releasever/$basearch/ http://mirror.fraunhofer.de/download.fedora.redhat.com/fedora/linux/updates/$releasever/$basearch/ http://ftp.uni-bayreuth.de/linux/fedora/linux/updates/$releasever/$basearch/ http://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/fedora/linux/updates/$releasever/$basearch/ ftp://ftp.free.fr/mirrors/fedora.redhat.com/fedora/linux/updates/$releasever/$basearch/ http://limestone.uoregon.edu/ftp/fedora/linux/updates/$releasever/$basearch/ http://fedora.mirror.iweb.ca/updates/$releasever/$basearch/ ftp://ftp.cse.buffalo.edu/pub/Linux/fedora/linux/updates/$releasever/$basearch/ http://mirror.cc.vt.edu/pub/fedora/linux/updates/$releasever/$basearch/ http://mirrors.tummy.com/pub/fedora.redhat.com/fedora/linux/updates/$releasever/$basearch/ http://mirrors.kernel.org/fedora/updates/$releasever/$basearch/ http://www.gtlib.gatech.edu/pub/fedora.redhat/linux/updates/$releasever/$basearch/ http://ftp.linux.ncsu.edu/pub/fedora/linux/updates/$releasever/$basearch/ http://ftp.iij.ad.jp/pub/linux/fedora/updates/$releasever/$basearch/ ftp://ftp.iij.ad.jp/pub/linux/fedora/updates/$releasever/$basearch/ http://ftp.yz.yamagata-u.ac.jp/pub/linux/fedora/linux/updates/$releasever/$basearch/ http://ftp.rhnet.is/pub/fedora/linux/updates/$releasever/$basearch/ http://mirror.pacific.net.au/linux/fedora/linux/updates/$releasever/$basearch/
#mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=updates-released-f$releasever&arch=$basearch
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora


优化的方法:测试列表http://mirrors.fedoraproject.org/publiclist/Fedora/哪个站点最快。
懒方法是一个个域名ping,把最快的镜像放在上面;
最好的方法是下载一个较大文件对比下载速度。
我优化后的(深圳公网ADSL 2M)平时可达50~130KB/s,快的时候可以达峰值180~210KB/s。根据使用经验,一般以下几个源比较快:

mirror.pacific.net.au ——稳定且速度快,但此站点负担了十多个发行版,任务沉重,所以与redhat主站同步较慢。
opensource.nchc.org.tw ——台湾省的,时快时慢。
ftp.iij.ad.jp ——小日本的,以前好快,现在好像降下来了,不知咋整地。
fedora.candishosting.com.cn ——在国内,不知道在北京还是武汉,速度快,但不完整,只用于fedora.repo的[fedora]一段。

如果想临时禁用某个源可以在repo文件中前面加“#”,例如这样:(假如运行yum出现包冲突,可能是与redhat主站同步不完全造成的,等几天再更新,或者禁用到只剩下redhat主站)

[fedora]
name=Fedora $releasever - $basearch
failovermethod=priority
baseurl=
# http://fedora.candishosting.com.cn/pub/fedora/linux/releases/$releasever/Everything/$basearch/os/ # ftp://ftp.iij.ad.jp/pub/linux/fedora/releases/$releasever/Everything/$basearch/os/ # http://mirror.pacific.net.au/linux/fedora/linux/releases/$releasever/Everything/$basearch/os/ # http://opensource.nchc.org.tw/fedora/linux/releases/$releasever/Everything/$basearch/os/ # http://mirrors.kernel.org/fedora/releases/$releasever/Everything/$basearch/os/ http://download.fedora.redhat.com/pub/fedora/linux/releases/$releasever/Everything/$basearch/os/
#mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-$releasever&arch=$basearch
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora file:///etc/pki/rpm-gpg/RPM-GPG-KEY

我的fedora.repo文件

[fedora]
name=Fedora $releasever - $basearch
failovermethod=priority
baseurl= http://ftp.iij.ad.jp/pub/linux/fedora/releases/$releasever/Everything/$basearch/os/ http://mirror.pacific.net.au/linux/fedora/linux/releases/$releasever/Everything/$basearch/os/ http://opensource.nchc.org.tw/fedora/linux/releases/$releasever/Everything/$basearch/os/ http://mirrors.kernel.org/fedora/releases/$releasever/Everything/$basearch/os/ http://download.fedora.redhat.com/pub/fedora/linux/releases/$releasever/Everything/$basearch/os/ #mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-$releasever&arch=$basearch
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora file:///etc/pki/rpm-gpg/RPM-GPG-KEY

[fedora-debuginfo]
name=Fedora $releasever - $basearch - Debug
failovermethod=priority
baseurl= http://ftp.iij.ad.jp/pub/linux/fedora/releases/$releasever/Everything/$basearch/debug/ http://mirror.pacific.net.au/linux/fedora/linux/releases/$releasever/Everything/$basearch/debug/ http://opensource.nchc.org.tw/fedora/linux/releases/$releasever/Everything/$basearch/debug/ http://mirrors.kernel.org/fedora/releases/$releasever/Everything/$basearch/debug/ http://download.fedora.redhat.com/pub/fedora/linux/releases/$releasever/Everything/$basearch/debug/ #mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-debug-$releasever&arch=$basearch
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora file:///etc/pki/rpm-gpg/RPM-GPG-KEY

[fedora-source]
name=Fedora $releasever - Source
failovermethod=priority
baseurl= http://ftp.iij.ad.jp/pub/linux/fedora/releases/$releasever/Everything/source/SRPMS/ http://mirror.pacific.net.au/linux/fedora/linux/releases/$releasever/Everything/source/SRPMS/ http://opensource.nchc.org.tw/fedora/linux/releases/$releasever/Everything/source/SRPMS/ http://mirrors.kernel.org/fedora/releases/$releasever/Everything/source/SRPMS/ http://download.fedora.redhat.com/pub/fedora/linux/releases/$releasever/Everything/source/SRPMS/ #mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-source-$releasever&arch=$basearch
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora file:///etc/pki/rpm-gpg/RPM-GPG-KEY
我的fedora-updates.repo文件

[updates]
name=Fedora $releasever - $basearch - Updates
failovermethod=priority
baseurl= http://ftp.iij.ad.jp/pub/linux/fedora/updates/$releasever/$basearch/ http://mirror.pacific.net.au/linux/fedora/linux/updates/$releasever/$basearch/ http://opensource.nchc.org.tw/fedora/linux/updates/$releasever/$basearch/ http://mirrors.kernel.org/fedora/updates/$releasever/$basearch/ http://download.fedora.redhat.com/pub/fedora/linux/updates/$releasever/$basearch/ #mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=updates-released-f$releasever&arch=$basearch
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora

[updates-debuginfo]
name=Fedora $releasever - $basearch - Updates - Debug
failovermethod=priority
baseurl= http://ftp.iij.ad.jp/pub/linux/fedora/updates/$releasever/$basearch/debug/ http://mirror.pacific.net.au/linux/fedora/linux/updates/$releasever/$basearch/debug/ http://opensource.nchc.org.tw/fedora/linux/updates/$releasever/$basearch/debug/ http://mirrors.kernel.org/fedora/updates/$releasever/$basearch/debug/ http://download.fedora.redhat.com/pub/fedora/linux/updates/$releasever/$basearch/debug/ #mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=updates-released-debug-f$releasever&arch=$basearch
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora

[updates-source]
name=Fedora $releasever - Updates Source
failovermethod=priority
baseurl= http://ftp.iij.ad.jp/pub/linux/fedora/updates/$releasever/SRPMS/ http://mirror.pacific.net.au/linux/fedora/linux/updates/$releasever/SRPMS/ http://opensource.nchc.org.tw/fedora/linux/updates/$releasever/SRPMS/ http://mirrors.kernel.org/fedora/updates/$releasever/SRPMS/ http://download.fedora.redhat.com/pub/fedora/linux/updates/$releasever/SRPMS/ #mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=updates-released-source-f$releasever&arch=$basearch
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora
还想省点力的话,附件里有我的repo文件,Fedora 8的,记得把你原有的备份
当你明白个中方法之后,还可以优化fedora-development.repo、fedora-updates-testing.repo等等。
如果当中有什么错误请指出,如果你悟出有什么更好的东西,请你与大家分享,谢谢。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: