因为都知道安装linux软件包rpm 很好用;但是不能解决软件包的个别依赖关系;所以安装数据包时出现依赖时、yum到可以解决这类数据包依赖关系;而且还能便于管理大量数据包更新的问题;它的特点 、可以同时配置多个资源库(Repository) ,简洁的配置文件(/etc/yum.conf) ,自动解决增加或删除rpm包时遇到的倚赖性问题,保持与RPM数据库的一致性这也是它的优势。因此解决数据包的依赖关系;也是基于服务器和客户端的一种应用。
首先呢 介绍一下YUM 的简单指令:
yum info // 查询详细
yum install -y // 安装 (-y 数据包提示全部yes)
yum remove -y // 删除
yum check-update //检查可更新的所有软件包
yum update //下载更新系统已安装的所有软件包
yum upgrade //大规模的版本升级,与yum update不同的是,连旧的淘汰的包也升级
yum install
yum update
yum remove
yum groupinstall
yum groupupdate
yum groupremove
yum grouplist //查看系统中已经安装的和可用的软件组
yum list //列出资源库中所有可以安装或更新以及已经安装的rpm包
yum list
yum list available //列出资源库中所有可以安装的rpm包
yum list available
yum list updates //列出资源库中所有可以更新的rpm包
yum list updates
yum list installed //列出资源库中所有已经安装的rpm包
yum list installed
yum list extras //列出已经安装的但是不包含在资源库中的rpm包
yum list extras
yum list recent //列出最近被添加到资源库中的软件包
yum search
yum rovides
yum clean headers //清除缓存中的rpm头文件
yum clean packages //清除缓存中rpm包文件
yum clean all //清除缓存中的rpm头文件和包文件
yum deplist
把yum理解为服务器和客户端这种方式,因为linux5.0版本以上软件包的部署是基于网络的;之前的版本都是基于本地光盘(镜像);所以实现要有yum的客户端和yum的服务器的利用,在网络之中必须要有一台机器(server) 提供一个安装文件(类似资源库);而要安装软件包的机器可以称之为客户端 (client);在网络之中必须要有 一台机器 提供一个安装文件;而要安装软件包的机器 可以称之为客户端 client;所以YUM的实现需要有一个YUMclient和YUM server。就是在软件包的部署上 客户端都去访问这一个服务器即可。但是在这之前要指明服务器怎样建立 、怎样访问、怎样去访问这个安装文件的资源库的文件;我们可以这样:
指明一条网络协议去访问可以指定为ftp协议;
资源库可以包括以下四类:
Server 应用程序
VT 虚拟化的安装目录
Cluster 群集的安装目录
ClusterStorage 存储的安装
因为是在虚拟做的实验,所以提前先克隆一个完整的linux5.4版机子;满足两台机器(server与client);然后在随便一台服务器、添加一个IP;挂载镜像、安装xsftpd,因为我们是ftp协议,安装后测试端口、启动测试:
安装之后 切换到/var/ftp 目录下,然后我们可以把光盘上的所有文件都拷到这个目录下;(是以便客户端访问的时候可以直接匿名的访问)之后再重启动并还测试端口:
看到这已经拷贝完了,就是有点大;这样服务器端就算做好了。
接下来来配置客户端:在这里需要设置指明 yum 服务器在哪 ;以什么样的方式访问;都需要在这里 设置;进入/etc/yum.repos.d/目录下:
因为这样的文件都是来描述yum服务器我们可以更改这个文件;所以可以来直接更改这个文件信息、或者根据这个再来做个 rhel-debuginfo.repo;
我们可以这样设置:
查看数据包有多少个、是不是光盘的所有未安装的软件包都列了出来;显示rhel-server都是为安装的;显示install是已安装的,这里都是未安装的;
接下来再来查看一下vsftp的详细:
所以在此举个例子 :在 服务器端上装这个软件试试:看看会发生怎样的 问题 :用为依赖关系而导致安装时受阻;在换客户端yum安装试试:
在客户端 先查找 看看这个数据包的信息:
在客户端用yum安装看看:
中途的提示一直都是yes ;也可以在之前安装时 后面加个-y 、这样就不会一直提示了;
安装 成功后;加个-y我们再来安装个httpd 服务看看:就没有提示了;
做服务器与客户端连接:可以在服务器端 、放入ftp仓库一个php 软件;之后呢我们在客户端看看是不是能够找到;(因为服务器端 的仓库里都有同样一个目录 repodata)若想在客户端找到;所以先在安装过这个软件:
所以再在客户端 检测;再清除一下缓存,这样在客户端就找到了拉近服务器那个php文件了;
这就是基于yum服务器和yum客户端实验的例子;满足在一个局域网内、多个客户端连接到服务器的资源库上并同时能够享受资源安装软件、而且能够接触数据包之间的依赖关系。