LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 28762|回复: 74

关于yum太慢了的解决方案

[复制链接]
发表于 2007-1-21 12:25:50 | 显示全部楼层 |阅读模式
如果安装完fc6,想安装别的软件比如mplayer的时候,你可能会意识到,系统本身默认设置下yum的速度太慢了,安装任何哪怕很小的软件都是一个漫长的等待,有一些方法可以让你尽可能减少等待的时间,我总结了一下:

方法一: 更换yum仓库  教育网用户和网通用户有很不错的选择,使用tsinghua的源或者上海交大的源会极大的提高yum的下载速度。  缺点是: 象我这种使用深圳电信ADSL的用户,可能不能访问这些源。

方法二: 使用代理  从代理中国或者使用代理猎手寻找可用的http代理,在yum的配置文件中设置或者直接导出http_proxy环境变量都可以使得yum在下载软件的时候使用这个代理。 缺点是:代理的速度很不稳定,就象代理本身一样。

方法三: 使用fastestmirror插件 这个插件可以自动对所有的境象进行排序,使选择那些速度快的镜像首先尝试下载,这个插件是fc6自带的软件仓库中。 缺点是: 有时候排序不准确,如果所有的镜像都慢,排序也无济于事。

方法四:使用axelget插件,这个插件将首先尝试使用axel加速下载过程,axel可以同时使用多个线程下载http和ftp协议的文件,速度可以达到成倍的提高。 这个插件是本人写的,还不太完善,可以从http://wininlinux.googlepages.com/下载,将文件http://wininlinux.googlepages.com/axelget.conf放入/etc/yum/pluginconf.d/目录,将http://wininlinux.googlepages.com/axelget.py放入/usr/lib/yum-plugins/就可以了,按你的需要修改axelget.conf文件中的值。 缺点是: 只能在下载软件包的时候使用axel,对于Primary.xml.gz则暂时没有办法。

方法五: 从http://wininlinux.googlepages.com/grabber.py下载这个文件替换你本地的/usr/lib/python2.4/site-packages/urlgrabber中的同名文件,并且按照你自己的情况修改其中urlgrab函数使用的命令(默认的是使用wget,你可能想改成axel). 这就是一个更彻底但是更不安全的解决方案了。 缺点是: 如果你的系统中有别的软件使用了urlgrabber这个python库,它们的行为也被改变了。  如果你知道自己在做什么,尝试一下总是没有坏处。 使用wget至少可以尽量避免可恶的checksum失败。

供参考。
发表于 2007-1-21 14:12:19 | 显示全部楼层
方法4值得期待
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-1-21 15:04:05 | 显示全部楼层
网址都给了,不用期待了,直接试用吧。
回复 支持 反对

使用道具 举报

发表于 2007-1-21 15:08:17 | 显示全部楼层
我是教育网的
如何添加清华和上交大的源?
回复 支持 反对

使用道具 举报

发表于 2007-1-21 16:32:51 | 显示全部楼层
其实有一个很简单的方法,就是借鉴livna的做法
把比较快的源以以下的方式放在baseurl的后面
而不要用mirrorlist让yum去搜索源

但是如果yum也可以使用多个线程下载的话就好了
  1. baseurl=
  2.         http://rpm.livna.org/fedora/$releasever/$basearch/
  3.         http://livna.cat.pdx.edu/fedora/$releasever/$basearch/
  4.         http://wftp.tu-chemnitz.de/pub/linux/livna/fedora/$releasever/$basearch/
  5.        http://ftp-stud.fht-esslingen.de/pub/Mirrors/rpm.livna.org/fedora/$releasever/$basearch/
  6.         http://mirror.atrpms.net/livna/fedora/$releasever/$basearch/
  7.         ftp://mirrors.tummy.com/pub/rpm.livna.org/fedora/$releasever/$basearch/
  8. #mirrorlist=http://rpm.livna.org/mirrorlist-6
复制代码
回复 支持 反对

使用道具 举报

发表于 2007-1-21 18:05:06 | 显示全部楼层
Post by wq1977
如果安装完fc6,想安装别的软件比如mplayer的时候,你可能会意识到,系统本身默认设置下yum的速度太慢了,安装任何哪怕很小的软件都是一个漫长的等待,有一些方法可以让你尽可能减少等待的时间,我总结了一下:

方法一: 更换yum仓库  教育网用户和网通用户有很不错的选择,使用tsinghua的源或者上海交大的源会极大的提高yum的下载速度。  缺点是: 象我这种使用深圳电信ADSL的用户,可能不能访问这些源。

方法二: 使用代理  从代理中国或者使用代理猎手寻找可用的http代理,在yum的配置文件中设置或者直接导出http_proxy环境变量都可以使得yum在下载软件的时候使用这个代理。 缺点是:代理的速度很不稳定,就象代理本身一样。

方法三: 使用fastestmirror插件 这个插件可以自动对所有的境象进行排序,使选择那些速度快的镜像首先尝试下载,这个插件是fc6自带的软件仓库中。 缺点是: 有时候排序不准确,如果所有的镜像都慢,排序也无济于事。

方法四:使用axelget插件,这个插件将首先尝试使用axel加速下载过程,axel可以同时使用多个线程下载http和ftp协议的文件,速度可以达到成倍的提高。 这个插件是本人写的,还不太完善,可以从http://wininlinux.googlepages.com/下载,将文件http://wininlinux.googlepages.com/axelget.conf放入/etc/yum/pluginconf.d/目录,将http://wininlinux.googlepages.com/axelget.py放入/usr/lib/yum-plugins/就可以了,按你的需要修改axelget.conf文件中的值。 缺点是: 只能在下载软件包的时候使用axel,对于Primary.xml.gz则暂时没有办法。

供参考。


谢谢,我用你的第四种方法,
出现这样的错误:
sh: axel: command not found
我拷贝了你说的两个文件啊
回复 支持 反对

使用道具 举报

发表于 2007-1-21 19:43:17 | 显示全部楼层
Post by ildg
谢谢,我用你的第四种方法,
出现这样的错误:
sh: axel: command not found
我拷贝了你说的两个文件啊

应该是没装axel。
回复 支持 反对

使用道具 举报

发表于 2007-1-21 19:59:54 | 显示全部楼层
Post by grassofhust
应该是没装axel。

那请问axel要如何装?
3x
回复 支持 反对

使用道具 举报

发表于 2007-1-21 20:04:30 | 显示全部楼层
用yum下载axel???
回复 支持 反对

使用道具 举报

发表于 2007-1-21 20:25:01 | 显示全部楼层
Post by 红烧鸟
用yum下载axel???

我正愁找不到,被你编辑了。
我还是老老实实用yum吧,
它高兴yum多久就yum多久,
我做别的事情不管它。
台湾的光纤是不是还没修好?
咋那么慢呢?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表