有关yum命令的详解
yum是一个用于管理rpm包的后台程序,用python写成,可以非常方便的解决rpm的依赖关系。在建立好yum服务器后,yum客户端可以通过 http、ftp方式获得软件包,并使用方便的命令直接管理、更新所有的rpm包,甚至包括kernel的更新。它也可以理解为红旗环境下的apt管理工具。
以前写过一份[原]使用yum更新红旗Linux ,但其中提到的命令不是很完整,现再整理一下。
一、列举包文件
列出资源库中所有可以安装或更新的rpm包
# yum list
列出资源库中特定的可以安装或更新以及已经安装的rpm包
# yum list perl //列出名为perl 的包
# yum list perl* //列出perl 开头的包
列出资源库中所有可以更新的rpm包
# yum list updates
列出已经安装的所有的rpm包
# yum list installed
列出已经安装的但是不包含在资源库中的rpm包
# yum list extras
注:extras是repos.d中定义的资源列表名称
二、列举资源信息
列出资源库中所有可以安装或更新的rpm包的信息
# yum info
列出资源库中特定的可以安装或更新以及已经安装的rpm包的信息
# yum info perl //列出perl 包信息
# yum info perl* //列出perl 开头的所有包的信息
列出资源库中所有可以更新的rpm包的信息
# yum info updates
列出已经安装的所有的rpm包的信息
# yum info installed
列出已经安装的但是不包含在资源库中的rpm包的信息
# yum info extras
三、搜索
搜索匹配特定字符的rpm包
# yum search perl //在包名称、包描述等中搜索
搜索有包含特定文件名的rpm包
# yum provides realplay
四、管理包
安装rpm包
# yum install perl //安装perl 包
# yum install perl* //安装perl 开头的包
删除rpm包,包括与该包有倚赖性的包
# yum remove perl* //会删除perl-* 所有包
五、更新
检查可更新的rpm包
# yum check-update
更新所有的rpm包
# yum update
更新指定的rpm包,如更新kernel和kernel source
# yum update kernel kernel-source
大规模的版本升级,与yum update不同的是,连旧的淘汰的包也升级
# yum upgrade
六、清空缓存
清除暂存中rpm包文件
# yum clean packages
清除暂存中rpm头文件
# yum clearn headers
清除暂存中旧的rpm头文件
# yum clean oldheaders
清除暂存中旧的rpm头文件和包文件
# yum clearn
或
# yum clearn all
七、其他
安装Livna.org rpms GPG key
# rpm --import http://rpm.livna.org/RPM-LIVNA-GPG-KEY
检查GPG Key
# rpm -qa gpg-pubkey*
显示Key信息
# rpm -qi gpg-pubkey-a109b1ec-3f6e28d5
删除Key
# rpm -e gpg-pubkey-a109b1ec-3f6e28d5
yum安装
参考http://www.th7.cn/system/lin/201402/50472.shtml
第一步下载相关安装包
python-iniparse-0.3.1-2.1.el6.noarch
yum-3.2.29-60.el6.centos.noarch
yum-metadata-parser-1.1.2-16.el6.x86_64
yum-plugin-fastestmirror-1.1.30-30.el6.noarch
第二步卸载Redhat自带的yum
#rpm -qa | grep yum | xargs rpm -e --nodeps
第三步安装下载的安装包
#rpm -ivh python-iniparse-0.3.1-2.1.el6.noarch.rpm
#rpm -ivh yum-metadata-parser-1.1.2-16.el6.x86_64.rpm
#rpm -ivh yum-3.2.29-60.el6.centos.noarch.rpm yum-plugin-fastestmirror-1.1.30-30.el6.noarch.rpm
第四步到http://mirrors.163.com的 centos帮助文档 (可直接跳到第五步将文件内容替换掉就可以)
中下载CentOS6-Base-163.repo文件,存放到/etc/yum.repo.d中
#wget http://mirrors.163.com/.help/CentOS6-Base-163.repo
第五步将Centos6-Base-163.repo中的$releasever改为Centos的版本号即可
为了防止错误,也可使用我已修改好的文件http://pan.baidu.com/s/1o6AZ23o
文件修改成如下即可:
# CentOS-Base.repo
#
# The mirror system uses the connecting IP address of the client and the
# update status of each mirror to pick mirrors that are updated to and
# geographically close to the client. You should use this for CentOS updates
# unless you are manually picking other mirrors.
#
# If the mirrorlist= does not work for you, as a fall back you can try the
# remarked out baseurl= line instead.
#
#
[base]
name=CentOS-6 - Base - 163.com
baseurl=http://mirrors.163.com/centos/6/os/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=6&arch=$basearch&repo=os
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6
#released updates
[updates]
name=CentOS-6 - Updates - 163.com
baseurl=http://mirrors.163.com/centos/6/updates/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=6&arch=$basearch&repo=updates
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6
#additional packages that may be useful
[extras]
name=CentOS-6 - Extras - 163.com
baseurl=http://mirrors.163.com/centos/6/extras/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=6&arch=$basearch&repo=extras
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6
#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-6 - Plus - 163.com
baseurl=http://mirrors.163.com/centos/6/centosplus/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=6&arch=$basearch&repo=centosplus
gpgcheck=1
enabled=0
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6
#contrib - packages by Centos Users
[contrib]
name=CentOS-6 - Contrib - 163.com
baseurl=http://mirrors.163.com/centos/6/contrib/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=6&arch=$basearch&repo=contrib
gpgcheck=1
enabled=0
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6
第六步 yum clean all 清除原有缓存
第七步 yum makecache 获取yum列表
等待,大约三分钟后出现下面提示,表示yum更改完成:
Metadata Cache Created
执行
#yum update