YUM是Yellow dog Updater, Modified的缩写,是由Duke University所发起的计划,目的就是为了解决RPM的依赖关系的问题,方便使用者进行软件的安装、升级等等工作。在此在特别说明的是,YUM只是为了解决RPM的依赖关系的问题,而不是一种其它的软件安装模式。
服务器端:在服务器上面存放了所有的RPM软件包,然后以相关的功能去分析每个RPM文件的依赖性关系,将这些数据记录成文件存放在服务器的某特定目录内。
客户端:如果需要安装某个软件时,先下载服务器上面记录的依赖性关系文件(可通过WWW或FTP方式),通过对服务器端下载的纪录数据进行分析,然后取得所有相关的软件,一次全部下载下来进行安装。
本地yum是将原文件放在本地主机上,而网络yum则是将服务器上面的文件通过www或者ftp方式下载到本地,然后进行安装。
三:案例一:网络yum服务器
安装ftp服务器,将原文件存储在ftp上,然后安装网络yum,实现客户机可以从yum服务器上下载软件包
客户机请求过程:
切换到服务器端
1:[root@lyt ~]# mkdir /mnt/cdrom/ #建立挂载点
2:[root@lyt ~]# mount /dev/cdrom /mnt/cdrom/ #挂载光盘
3:[root@lyt ~]# cd /mnt/cdrom/Server/ #切换到该目录下
4:[root@lyt Server]# rpm -ivh vsftpd-2.0.5-16.el5.i386.rpm #安装ftp服务器
5:[root@lyt ~]# cp -r /mnt/cdrom/. /var/ftp/pub/ #将/mnt/cdrom/中的光盘文件全部拷贝到/var/ftp/pub/ 中
6:[root@lyt Server]# service vsftpd restart #重启ftp服务器
7:在Server、VT、Cluster、ClusterStorage目录中都有一个repodata文件
[root@lyt VT]# cd repodata/ #切换到repodata文件中,查看该目录
8:切换到客户端:
[root@localhost ~]# cd /etc/yum.repos.d/ #切换到改目录
[root@localhost yum.repos.d]# cp -p rhel-debuginfo.repo yum.repo #将rhel-debuginfo.repo 文件拷贝成yum.repo文件(注:新生成文件名必须以.repo结尾)
[root@localhost yum.repos.d]# vim yum.repo #编辑该文件,如下图:
[root@localhost yum.repos.d]# yum repolist #将记录每个软件包信息的文件primary.xml.gz下载到本地,如图
测试:服务器端服务器更新了软件,在客户端查看软件包信息是否查看到该更新软件:
9:切换到服务器端
如图所示,通过ftp服务器:将下图的文件导入到/var/ftp/pub/Server目录中,图示已导入: