yum
YUM 是 Yellow dog Updater, Modified 的缩写,是由 Duke University 所发
起的计划,目的就是为了解决 RPM 的依赖关系的问题,方便使用者进行软件的
安装、升级等等工作。
其实 YUM 的工作原理并不复杂,每一个 RPM 软件包的头(header)里面
都会纪录该软件的依赖关系,那么如果可以将该头的内容纪录下来并且进行分析,
可以知道每个软件在安装之前需要额外安装哪些基础软件。也就是说,在服务器
上面先以分析工具将所有的 RPM 软件包进行分析,然后将该分析结果记录下来,
只要在进行安装或升级时先查询该记录文件,就可以知道所有依赖的软件。所以
YUM 的基本工作流程如下:
服务器端:在服务器上面存放了所有的 RPM 软件包,然后以相关的功能去
分析每个 RPM 文件的依赖性关系,将这些数据记录成文件存放在服务器的某特
定目录内。
客户端:如果需要安装某个软件时,先下载服务器上面记录的依赖性关系文
件(可通过 WWW 或 FTP 方式),通过对服务器端下载的纪录数据进行分析,然
后取得所有相关的软件,一次全部下载下来进行安装。
如果没有安装 yum,就必须去下载,我们可以选择一个最快的 CentOS 官方
源(对于国内用户来说,一般是网易源,我们这里使用的就是是网易源),用下
载工具进行下载,我们需要下载这些包:
[[email protected] ~]# rpm –qa yum*
yum-plugin-security-1.1.30-14.el6.noarch # yum 安全插件包
yum-plugin-fastestmirror-1.1.30-14.el6.noarch# yum 最快镜像自选动择插件包
yum-metadata-parser-1.1.2-16.el6.x86_64 # yum 的元数据解析器
yum-utils-1.1.30-14.el6.noarch # yum 操作软件仓库和管理扩展包的工具集合
yum-3.2.29-30.el6.centos.noarch # yum 软件包
[[email protected] ~]#
用 wget 命令下载:
[[email protected] ~]# wget
http://mirrors.163.com/centos/6.3/os/x86_64/Packages/yum-3.2.29-
30.el6.centos.noarch.rpm
[[email protected] ~]# wget http://mirrors.163.com/centos/6.3/os/x86_64/Packages/yummetadata-parser-1.1.2-16.el6.x86_64.rpm
[[email protected] ~]# wget http://mirrors.163.com/centos/6.3/os/x86_64/Packages/yumutils-1.1.30-14.el6.noarch.rpm
[[email protected] ~]# wget http://mirrors.163.com/centos/6.3/os/x86_64/Packages/yumplugin-fastestmirror-1.1.30-14.el6.noarch.rpm
在下载完成后,用 rpm 进行安装:
[[email protected] ~]# rpm -ivh python-iniparse-0.3.1-2.1.el6.noarch.rpm
[[email protected] ~]# rpm -ivh yum-metadata-parser-1.1.2-16.el6.x86_64.rpm
[[email protected] ~]# rpm -ivh yum-3.2.29-30.el6.centos.noarch.rpm yum-pluginfastestmirror-1.1.30-14.el6.noarch.rpm
# 这两个软件包必须同时安装,否则会发生互依赖性问题
[[email protected] ~]# rpm -ivh yum-utils-1.1.30-14.el6.noarch.rpm
测试 yum
# yum clean all # 清除 yum 所有软件包缓存信息
# yum makecache #将服务器上的软件包信息缓存到本地,以提高搜索安装软件的速度
# yum install finger #安装一个名为“finger”命令, 测试 yum 是否可用
当第一次使用 yum 或 yum 源有更新时,yum 会自动下载所有所需的 headers
放置于/var/cache/yum 目录下, 所需时间可能较长。
起的计划,目的就是为了解决 RPM 的依赖关系的问题,方便使用者进行软件的
安装、升级等等工作。
其实 YUM 的工作原理并不复杂,每一个 RPM 软件包的头(header)里面
都会纪录该软件的依赖关系,那么如果可以将该头的内容纪录下来并且进行分析,
可以知道每个软件在安装之前需要额外安装哪些基础软件。也就是说,在服务器
上面先以分析工具将所有的 RPM 软件包进行分析,然后将该分析结果记录下来,
只要在进行安装或升级时先查询该记录文件,就可以知道所有依赖的软件。所以
YUM 的基本工作流程如下:
服务器端:在服务器上面存放了所有的 RPM 软件包,然后以相关的功能去
分析每个 RPM 文件的依赖性关系,将这些数据记录成文件存放在服务器的某特
定目录内。
客户端:如果需要安装某个软件时,先下载服务器上面记录的依赖性关系文
件(可通过 WWW 或 FTP 方式),通过对服务器端下载的纪录数据进行分析,然
后取得所有相关的软件,一次全部下载下来进行安装。
如果没有安装 yum,就必须去下载,我们可以选择一个最快的 CentOS 官方
源(对于国内用户来说,一般是网易源,我们这里使用的就是是网易源),用下
载工具进行下载,我们需要下载这些包:
[[email protected] ~]# rpm –qa yum*
yum-plugin-security-1.1.30-14.el6.noarch # yum 安全插件包
yum-plugin-fastestmirror-1.1.30-14.el6.noarch# yum 最快镜像自选动择插件包
yum-metadata-parser-1.1.2-16.el6.x86_64 # yum 的元数据解析器
yum-utils-1.1.30-14.el6.noarch # yum 操作软件仓库和管理扩展包的工具集合
yum-3.2.29-30.el6.centos.noarch # yum 软件包
[[email protected] ~]#
用 wget 命令下载:
[[email protected] ~]# wget
http://mirrors.163.com/centos/6.3/os/x86_64/Packages/yum-3.2.29-
30.el6.centos.noarch.rpm
[[email protected] ~]# wget http://mirrors.163.com/centos/6.3/os/x86_64/Packages/yummetadata-parser-1.1.2-16.el6.x86_64.rpm
[[email protected] ~]# wget http://mirrors.163.com/centos/6.3/os/x86_64/Packages/yumutils-1.1.30-14.el6.noarch.rpm
[[email protected] ~]# wget http://mirrors.163.com/centos/6.3/os/x86_64/Packages/yumplugin-fastestmirror-1.1.30-14.el6.noarch.rpm
在下载完成后,用 rpm 进行安装:
[[email protected] ~]# rpm -ivh python-iniparse-0.3.1-2.1.el6.noarch.rpm
注意 |
yum 只是 为了解决 RPM 的依赖关系的问题,而不是一种其它的软 件封装模式。 RPM 仍然是 RHEL 和 CenOS 中的默认软件管理器。 yum 可以视为 RPM 的一个前台工具。 |
[[email protected] ~]# rpm -ivh yum-metadata-parser-1.1.2-16.el6.x86_64.rpm
[[email protected] ~]# rpm -ivh yum-3.2.29-30.el6.centos.noarch.rpm yum-pluginfastestmirror-1.1.30-14.el6.noarch.rpm
# 这两个软件包必须同时安装,否则会发生互依赖性问题
[[email protected] ~]# rpm -ivh yum-utils-1.1.30-14.el6.noarch.rpm
测试 yum
# yum clean all # 清除 yum 所有软件包缓存信息
# yum makecache #将服务器上的软件包信息缓存到本地,以提高搜索安装软件的速度
# yum install finger #安装一个名为“finger”命令, 测试 yum 是否可用
当第一次使用 yum 或 yum 源有更新时,yum 会自动下载所有所需的 headers
放置于/var/cache/yum 目录下, 所需时间可能较长。
yum 命令(命令组合) | |
yum clean all | 清除缓存中旧的 rpm 头文件和包文件 |
yum makecache | 建立新的缓存 |
yum list | 列出所有升级源上的包 |
yum list available | 列出资源库中所有可以安装或更新的 rpm 包 |
yum list updates | 列出所有升级源上的可以更新包 |
yum list installed | 列出已经安装的包 |
yum search <关键字> | 搜索匹配特定字符的 rpm 包 |
yum info <软件包名> |
列出资源库中特定的可以安装或更新以及已经安 装的 rpm 包的信息 |
yum install <软件包名> | 安装 rpm 包 |
yum update <软件包名> | 更新 rpm 包 |
yum remove <软件包名> | 卸载 rpm 包 |