第五十五讲——前端软件包管理工具:yum 本文共有30200个字,关键词: yum是C/S架构的应用,client/server yum有自己的客户端 配置文件:用于指定yum仓库的位置,位置可以使本地的,在ftp服务器上的,web上的。 我们使用yum安装的软件一定是在yum软件仓库中的,当我们安装时,yum客户端将我们需要安装的软件包取回本地(下载),调用rpm命令进行安装,但是在安装之前,yum会根据当前安装包的属性以及所有已安装的rpm包之间的依赖关系,到yum软件仓库自行获取依赖需要的软件包,下载到本地,进行安装。 yum依赖的是rpm的能力。yum仓库中详细的列出了每一个rpm包所提供的文件和能力。 只要我们执行了一次yum命令,yum软件库的数据信息就会被缓存到本地,以后关于yum的分析都在本地,rpm也会在安装前缓存下来,但是会被很快清理。yum软件库的数据因为要重复使用,所以会被保存下来,yum软件仓库其实就是rpm包存放的位置,但是还有yum处理的依赖关系信息。 yum仓库的信息文件: 使用creatrepo 创建yum仓库的元数据信息,存放于yum源的repodate目录下,是xml格式的文件:primary.xml.gz:包含了整个软件仓库中的软件列表、依赖关系、每个rpm包安装生成的文件列表。 filelists.xml.gz: 当前仓库所有rpm包的所有文件列表。 other.xml.gz: 额外的信息,rpm包的修改日志。 repomd.xml 记录以上三个文件的时间戳和校验和。 comps.xml: rpm包的分组信息。 yum相关命令: install:安装 update:升级 update-to:升级到某个版本 check-update:检查升级 remove:删除(卸载) list{rpm -qa} yum源列表 info{rpm -qi}: 查询指定包的相关信息。 provides{rpm -qf}: 查询指定文件由哪些rpm包构成 clean:清理缓存(yum缓存) makeache:创建缓存 groupinstall:安装组 groupupdate:升级组 grouplist:组列表 groupremove:卸载组 groupinfo:组信息 search:通过字符串查找某个软件包 localinstall:安装本地rpm包 localupdate:本地升级 reinstall:重新安装 downgrade:降级 repolist列出所有可用仓库 想要使用yum,前提是要安装yum包,一般来说在安装操作系统的时候就已经安装到位了,我们只是需要配置yum软件仓库。 /etc/yum.repos.d/目录下以repo结尾的文件为软件仓库的配置。 为了只让我们配置的yum源生效,需要将处Medeia的其他文件改名,*.bak,或者删除、移动。 我们查看*-Medeia.repo文件: cat /etc/yum.repos.d/*-Medeia.repo [Repo_id] repo的唯一标识符 name=描述信息description baseurl=ftp:// ftp仓库地址 http:// 网络仓库地址 file:// 本地仓库地址 enable={0,1} 当前仓库是否允许使用 gpgcheck={0,1} 是否使用gpg机制验证软件包的合法性及完整性 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6 如果gepcheck=1,gepkey一定要有,可以在本地,也可以在ftp以及web上。 我们也可以在一个文件中定义多个yum仓库 yum list列表中的各列含义 包名,平台(附加方便识别) 版本号,平台号 属于哪个软件仓库 yum clean: 清理缓存 packages 清理rpm包缓存 headers 头部信息 metadate 元数据文件 dbache rpm包的数据缓存 all 所有 yum repolist[ all | enable |disabled ]:显示repo列表,默认为enable all:显示所有repo enabled:显示允许使用的 disabled:显示禁用的 yum list: 列表(支持glob,通配符) all:显示所有,默认 available:所有可用的(仓库中有,但是没有安装的) installed:已经安装的 updates:可用的升级 yum install 包名 -y 自动回答yes --nogpgcheck 解决网上下载包报错的情况 yum remove 卸载(慎用!!)卸载会卸载所有相关的依赖都会被卸载 yum provides/whatprovides 查看指定文件或特性是由哪个包安装生成的。 createrepo /mnt/yum(/mnt/yum下只有安装包时)为rpm创建依赖关系,使用这种方式创建的yum源没有组的定义。 creatrepo -g /root/comps.xml /mnt/yum comps.xml为组定义,从光盘中拷贝到/root中,可以为自己的软件包建立组,这是redhat公司定义的组。 「一键投喂 软糖/蛋糕/布丁/牛奶/冰阔乐!」 赞赏 × 几人行 (๑>ڡ<)☆谢谢老板~ 2元 5元 10元 50元 100元 任意金额 2元 使用微信扫描二维码完成支付 版权声明:本文为作者原创,如需转载须联系作者本人同意,未经作者本人同意不得擅自转载。 给自己讲linux 2017-01-24 评论 1699 次浏览