知识结构: 1.认识YUM 2.介绍实验环境 3. 如何配置YUM本地更新源 4.如何配置YUM客户端 5.如何使用YUM来维护软件包 6.小结 7.实验题 --------------------------------------------------------------------------- 1.认识YUM Yellow dog Updater, Modified.它是一个基于RPM的工具包管理工具,它相对完美的实现了RPM软件依赖性关系,让系统管理员更加轻松地管理RHEL中的软件包。 这个工具,自从RHEL5之后就被整合到系统当中来,我们可以使用它来进行软件包的安装,移除,升级,维护,查询等功能。当然,再次需要声明的 是,它会自动的分析软件的依赖性关系,比 rpm * --aid来得更加方便和可靠。 yum工具支持的安装方式,列出如下常用的3 种: ftp ----->使用ftp方式连接更新源,安装软件 http ----->使用http方式连接更新源,安装软件 file ----->使用file,即本地文件的形式,这种方式的不足是不能实现共享源,仅供本机使用 --------------------------------------------------------------------------- 2.实验环境介绍 * VMware 6.5+RHEL5 * 主机A: server.benet.edu将会部署为YUM更新源 * 主机C: client02.benet.edu将会被用作YUM客户端来测试 * 网卡连接方式 ,使用host-only, 以使它们处于同一网络中,便于测试 注意:此处需要说明的是,主机A同时是DHCP服务器,主机C通过DHCP来获取IP,保证连通性 3.如何配置YUM本地更新源 本例中,我们使用ftp的方式来实现安装源的更新,也就是说,我们要将yum的软件库放置在 ftp的目录中,这样子的话,我们就需要2个工具来完成这件事,这2个工具都可以从光盘中很方便的获得: *vsftpd-2.0.5-12.el5.i386.rpm ------>ftp软件包 *createrepo-0.4.11-3.el5.noarch.rpm ------>用于生成本地源 a.安装vsftpd,创建最基本的ftp服务器(因本例中使用ftp工具,如使用其他方 式,可选装其他工具包) #rpm -ivh /misc/cd/Server/vsftpd-2.0.5-12.el5.i386.rpm 安装完毕后,只需要启用服务,就可以正常 使用,这里只需我们了解使用ftp目录来存放数据的就可以了,其他ftp控制暂不考虑。 #service vsftpd start ------->启动vsftpd服务 #chkconfig vsftpd on ------->使服务在下次启动时依然生效 b.安装createrepo工具,以便于稍后使用它来创建更新源 (这一步骤,在rhel5.1之后的版本(不含5.1),可以省略,但不推荐省略!) #rpm -ivh /misc/cd/Server/createrepo-0.4.11-3.el5.noarch.rpm c.复制光盘内容到ftp目 录下: #cp -R /mnt/* /var/ftp/pub 这里主要担心SELinux以及文件夹自身的权限问题 对文件夹及ftp服务器的访问控制,所以使用-R递归的来将权限改成对应的 d.使用工具创建更新源 #createrepo -g /mnt/Server/repodata/comps-rhel5-server-core.xml /var/ftp/pub/Server #createrepo -g /mnt/VT/repodata/comps-rhel5-vt.xml /var/ftp/pub/VT #createrepo -g /mnt/Cluster/repodata/comps-rhel5-cluster.xml /var/ftp/pub/Cluster #createrepo -g /mnt/ClusterStorage/repodata/comps-rhel5-cluster-st.xml /var/ftp/pub/ClusterStorage 这4步,执行下来,会花掉你一定的时间,长短的大部分取决于你机器的性能,如 果没有什么高级应用的话,建议只做第一个就OK,其余的涉及到虚拟化,群集,及存储的软件可以暂不考虑,但这几个步骤只是操作上有些区别,原理一样,都是 依赖于下面的说明........ 说明: -g参数指定的是,依照RHEL提供的组依赖性文件(comps*.xml),重组软件包在复制后位置上的依赖性问题,前面已经提到过,在RHEL5.1 版本中,是必不可少的一个步骤,至于其后的RHEL系统版本,不进行如上d步骤操作也OK。 到这时,vsftpd服务启动后,YUM就 算是完成了服务器的配置! ----------------------------------------------------------------------------- 4.配置YUM客户端文件 -----> /etc/yum.repos.d/*.repo 在RHEL5 中,所有处于/etc/yum.repos.d/这个目录下的,以.repo结尾的文件,都叫yum更新配置文件(注意这里,为什么我们没有说成是扩展名 为repo) 注意一下,我们可以将rhel-debuginfo.repo当成是模板文件,复制一个server.repo进行具体设 置即可 以下源定义,根据光盘目录的架构,此4个源为光盘中4个软件包目录。 本例中我们以ftp方式作为介绍对象,其他方式作相应改变: [Server] ----------------------------------------->更新源的名字 name=Red Hat Enterprise Linux 5 Server ----------------->相当于是注释,comment baseurl=ftp://192.168.5.254/pub/Server ----------------->此关键字指明具体的源位置 enabled=1 ----------------->0|1 是否启用源 0,禁用 1,启用 gpgcheck=1 ----------------->是否做gpg检查 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release --->gpg检查时所参照的gpg-key 如果你在创建安装源的时候,只做了1个关于Server目录的操作的话, 那么下面几个你就不用再加装进了,具体情况,具体对待 [VT] name=Red Hat Enterprise Linux 5 VT baseurl=ftp://192.168.5.254/pub/VT enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release [Cluster] name=Red Hat Enterprise Linux 5 Cluster baseurl=ftp://192.168.5.254/pub/Cluster enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release [ClusterStorage] name=Red Hat Enterprise Linux 5 ClusterStorage baseurl=ftp://192.168.5.254/pub/ClusterStorage enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release --------------------------------------------------------------------------------- 5.YUM 使用介绍 a.安装 #yum install 包名 ------>安装软件包,举例,安装dovecot b.移除 #yum remove 包名 ------->移除指定的包 c.更新 #yum update [包名] -------->更新指定软件包,不指定软件包时,会更新系统中所有已安装的软件 这里指定的软件包,必须是已安装,否则也不会安装,不同于rpm中的更新工具(-U) d.查询 #yum list 包名 --------->列出指定的包,分为已安装或是未安装等 #yum whatprovides 文件名 -------->查询给定的文件是由哪一个软件包提供的,类似于rpm -qf ..... e.其他 其 他还有很多的参数和使用方法,可以参照 man yum所带来的帮助使用,大家一定要养成经常看man的习惯! ---------------------------------------------------------------------------------- 6.本模块小结 a.理解yum的作用及特点 b.学会配置YUM本地更新源 c.学会配置 YUM客户端 d.学会使用YUM工具来安装和维护软件 ---------------------------------------------------------------------------------- 7.实验题 在本地服务器创建YUM更新源,在客户端使用http方式来更新和维护软件 ============== 本章节内容完毕!=============== |
转载于:https://blog.51cto.com/lijunzong/349272