查看 /etc/yum.conf 文件,有 cachedir=/var/cache/yum 项,这是 yum 的缓存,我想是不是缓存的原因呢,于是删掉 /var/cache/yum 下的所有文件,重新使用 yum install 安装,成功了。  

之后想想,终于明白原因了,之前我由于误操作,将 yum 源配置成了 CentOS 5.4 的源,并且做了相同的安装,这样会有缓存,下次即使配置了新 yum 源,yum 查找软件包依赖时首先还是从缓存中查找的,查不到的才到 源中搜索,这样就导致下载的是 5.4 下的版本 kernel-xen-2.6.18-164.el5.x86_64.rpm 了。

----------------------------------------------------------------------------

清除Yum缓存,Yum命令会把下载的软件包和header存储在cache中,而不会自动删除。如果我们觉得它们占用了磁盘空间,可以使用yum clean指令进行清除,更精确的用法是yum clean headers清除header,yum clean packages清除下载的rpm包,yum clean all 清除所有
1.清除缓存目录(/var/cache/yum)下的软件包
命令:yum clean packages
2.清除缓存目录(/var/cache/yum)下的 headers
命令:yum clean headers
3.清除缓存目录(/var/cache/yum)下旧的 headers
命令:yum clean oldheaders
4.清除缓存目录(/var/cache/yum)下的软件包及旧的headers
命令:yum clean, yum clean all (= yum clean packages; yum clean oldheaders)
以上所有命令参数的使用都可以用man来查看
5.启用/禁用一个软件仓库
yum –enablerepo=repo_name (repo_name 代表仓库名,下同)
yum –disablerepo=repo_name
6.导入 Fedora GPG 秘匙
Fedora 有两个基本的软件仓库,名为 “fedora” 和 “updates” 。要使用它们并且在安装那些未签名的软件包时避免发生错误,你必须导入它们的 GPG 密匙,打开一个终端并且输入如下命令:
rpm –import /etc/pki/rpm-gpg/*

----------------------------------------------------------------------------

http://blog.csdn.net/zklth/article/details/6339662

http://www.cnmaizi.com/tech/elebuild/fedora-yum-command-install-remove-package-operations-guide/