由于 redhat 的 yum 在线更新是收费的, 如果没有注册的话不能使用, 如果要使用, 需将 redhat 的 yum 卸载后, 重启安装, 再配置其他源, 以下为详细过程:
1. 删除 redhat 原有的 yum
rpm -aq|grep yum|xargs rpm -e --nodeps
2. 下载 yum 安装文件
- wget http://mirrors.163.com/centos/6/os/x86_64/Packages/yum-3.2.27-14.el6.centos.noarch.rpm
- wget http://mirrors.163.com/centos/6/os/x86_64/Packages/yum-metadata-parser-1.1.2-14.1.el6.x86_64.rpm
- wget http://mirrors.163.com/centos/6/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.26-11.el6.noarch.rpm
- wget http://mirrors.163.com/centos/6/os/x86_64/Packages/python-iniparse-0.3.1-2.1.el6.noarch.rpm
3. 进行安装 yum
- rpm -ivh python-iniparse-0.3.1-2.1.el6.noarch.rpm
- rpm -ivh yum-metadata-parser-1.1.2-14.1.el6.x86_64.rpm
- rpm -ivh yum-3.2.27-14.el6.centos.noarch.rpm um-plugin-fastestmirror-1.1.26-11.el6.noarch.rpm
注意最后两个包必需同时安装, 否则会相互依赖
4. 更新 repo 文件
- mv /etc/yum.repos.d/rhel-debuginfo.repo /etc/yum.repos.d/rhel-debuginfo.repo.repo.bak
- vi /etc/yum.repos.d/rhel-debuginfo.repo
内容为:
- [base]
- name=CentOS-$releasever - Base
- baseurl=http://mirrors.163.com/centos/6.0/os/$basearch/
- gpgcheck=1
- gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-6
- #released updates
- [updates]
- name=CentOS-$releasever - Updates
- baseurl=http://mirrors.163.com/centos/6.0/updates/$basearch/
- gpgcheck=1
- gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-6
- #packages used/produced in the build but not released
- #[addons]
- #name=CentOS-$releasever - Addons
- #baseurl=http://mirrors.163.com/centos/$releasever/addons/$basearch/
- #gpgcheck=1
- #gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-6
- #additional packages that may be useful
- [extras]
- name=CentOS-$releasever - Extras
- baseurl=http://mirrors.163.com/centos/6.0/extras/$basearch/
- gpgcheck=1
- gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-6
- #additional packages that extend functionality of existing packages
- [centosplus]
- name=CentOS-$releasever - Plus
- baseurl=http://mirrors.163.com/centos/6.0/centosplus/$basearch/
- gpgcheck=1
- enabled=0
- 5yum clean all
- 6yum install vim #测试一下可不可以用
设置本地镜像作为 yum 源
- mkdir /mnt/cdrom
- mount /dev/cdrom /mnt/cdrom #挂着镜像, 光盘
- mkdir /home/redhat-iso
- cp -Rf /mnt/cdrom{$100
}RPM-GPG-KEY 官方软件升级用的上
六扩展你的 rpm 包
1rpmforge
Centos/RHEL 默认的 yum 软件仓库非常有限, 仅仅限于发行版本那几张盘里面的常规包和一些软件包的更新, 利用 RpmForge, 可以增加非常多的第三方 rpm 软件包
获取
http://dag.wieers.com/rpm/packages/rpmforge-release/
找到与系统平台架构匹配的 rpmforge 包安装之即可安装完后. 默认会在系统的 / etc/yum.repos.d / 下新增两个文件, mirrors-rpmforge 和 rpmforge.repo
安装
- # rpm -ivh rpmforge-release-0.3.6-1.el4.rf.i386.rpm
- # rpm --import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt
2 加速 yum 更新速度
安装 yum 的 fast mirror 插件, 可以加快 CentOS/RHEL yum 的速度和提高稳定性, 效果显著
- centos5
- #yum -y install yum-fastestmirror
- centos4
- yum -y install yum-plugin-fastestmirror
七 yum 使用
注: 当第一次使用 yum 或 yum 资源库有更新时, yum 会自动下载所有所需的 headers 放置于 / var/cache/yum 目录下, 所需时间可能较长.
系统更新(更新所有可以升级的 rpm 包, 包括 kernel)
#yum -y update
每天定期执行系统更新
- #chkconfig yum on
- #service yum start
*rpm 包的更新, 检查可更新的 rpm 包
#yum check-update
更新所有的 rpm 包
#yum update
更新指定的 rpm 包, 如更新 kernel 和 kernel source
#yum update kernel kernel-source
大规模的版本升级, 与 yum update 不同的是, 连旧的淘汰的包也升级
#yum upgrade
*rpm 包的安装和删除
安装 rpm 包, 如 xmms-mp3
#yum install xmms-mp3
删除 rpm 包, 包括与该包有倚赖性的包
#yum remove licq
注: 同时会提示删除 licq-gnome,licq-qt,licq-text
*yum 暂存 (/var/cache/yum/) 的相关参数
清除暂存中 rpm 包文件
#yum clean packages
清除暂存中 rpm 头文件
#yum clean headers
清除暂存中旧的 rpm 头文件
#yum clean oldheaders
清除暂存中旧的 rpm 头文件和包文件
#yum clean 或 #yum clean all
注: 相当于 yum clean packages + yum clean oldheaders
*rpm 包列表
列出资源库中所有可以安装或更新的 rpm 包
#yum list
列出资源库中特定的可以安装或更新以及已经安装的 rpm 包
- #yum list mozilla
- #yum list mozilla*
注: 可以在 rpm 包名中使用匹配符, 如列出所有以 mozilla 开头的 rpm 包
列出资源库中所有可以更新的 rpm 包
#yum list updates
列出已经安装的所有的 rpm 包
#yum list installed
列出已经安装的但是不包含在资源库中的 rpm 包
#yum list extras
注: 通过其它网站下载安装的 rpm 包
*rpm 包信息显示(info 参数同 list)
列出资源库中所有可以安装或更新的 rpm 包的信息
#yum info
列出资源库中特定的可以安装或更新以及已经安装的 rpm 包的信息
- #yum info mozilla
- #yum info mozilla*
注: 可以在 rpm 包名中使用匹配符, 如列出所有以 mozilla 开头的 rpm 包的信息
列出资源库中所有可以更新的 rpm 包的信息
#yum info updates
列出已经安装的所有的 rpm 包的信息
#yum info installed
列出已经安装的但是不包含在资源库中的 rpm 包的信息
#yum info extras
注: 通过其它网站下载安装的 rpm 包的信息
* 搜索 rpm 包
搜索匹配特定字符的 rpm 包
#yum search mozilla
注: 在 rpm 包名, 包描述等中搜索
搜索有包含特定文件名的 rpm 包
#yum provides realplay
八 yum 常用问题解决
1 如果网速慢的话可以通过增加 yum 的超时时间, 这样就不会总是因为超时而退出
- #vi /etc/yum.conf
- # 加上这么一句
- timeout=120
2yum Existing lock 错误的解决办法
如果系统启动的时候, yum 出现 Existing lock /var/run/yum.pid: another copy is running as pid 3380. Aborting. 可以用下面的办法解决:
方法一
etc/init.d/yum-updatesd stop
方法二
#rm -f /var/run/yum.pid
主要原因就是 yum 在自动更新, 只要关掉它就可以了
先安装 fastestmirror, 让系统 yum 的时候自动选择最快的镜像:
#yum install yum-fastestmirror -y
接下来说说 RPMForge
RPMForge 是一个安全稳定并且更新及时的软件仓库, 通过安装 RPMForge 可以是 CentOS 在进行 yum update 的时候多一个选择, 有时候甚至是唯一的选择, 比如想要升级 rsync 到 3.0.x 版本, 如果懒得自己编译安装, 就得依靠 RPMForge 了
1 先安装 priority 这个 yum 的插件, 这个插件用来设定安装软件时候软件仓库的优先级, 一般是默认先从官方 base 或者镜像安装, 然后从社区用户 contribute 的软件中安装, 再从第三方软件仓库中安装
#yum install yum-priorities
2 手动编辑 /etc/yum.repos.d/ 目录中后缀为. repos 的文件来设置软件仓库的优先级
priority=N(N 是整数, 范围从 1-99, 数字越小代表优先级越高)
官方推荐配置是
[base], [addons], [updates], [extras] 这几部分 priority=1
[centosplus],[contrib] 这几部分 priority=2
Third Party Repos such as rpmforge priority=N (where N is> 10 and based on your preference)
3 现在开始安装 rpmforge 的软件仓库
先下载 rpmforge 的安装包
- i386 wget http://apt.sw.be/redhat/el5/en/i386/RPMS.dag/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
- x86_64 wget http://apt.sw.be/redhat/el5/en/x86_64/RPMS.dag/rpmforge-release-0.3.6-1.el5.rf.x86_64.rpm
安装
rpm -i rpmforge-release-0.3.6-1.el5.rf.*.rpm
更改 /etc/yum.repos.d/rpmforge.repo 配置文件, 添加
priority=1(或者 2.3.4.)
现在就可以使用 rpmforge 这个软件仓库了比如 yum update rsync, 嘿嘿, 成功升级到 3.0.5 了
来源: http://www.bubuko.com/infodetail-2546634.html