yum管理包流程_学习笔记

简介: 时间:2017.12.03作者:李强参考:man,info,magedu讲义,万能的internet声明:以下英文纯属个人翻译,英文B级,欢迎纠正,以下内容纯属个人理解,并没有对错,只是参考,盗版不纠,才能有限,希望不误人子弟为好。

时间:2017.12.03
作者:李强
参考:man,info,magedu讲义,万能的internet
声明:以下英文纯属个人翻译,英文B级,欢迎纠正,以下内容纯属个人理解,并没有对错,只是参考,盗版不纠,才能有限,希望不误人子弟为好。

1、yum生成的一些文件
首先我们需要安装yum,生成以下文件
通过rpm -ql yum查看:
二进制
/usr/bin/yum
库文件
/var/lib/yum:(yum的库)
/usr/lib/yum-plugins :插件的库(可执行二进制文件)
/usr/lib/python2.7/site-packages/yum
配置文件
/etc/logrotate.d/yum
/etc/yum:yum配置存放的目录
/etc/yum.conf :yum全局配置
/etc/yum.repos.d:仓库本地配置
/etc/yum/fssnap.d:快照配置
/etc/yum/pluginconf.d:插件配置
/etc/yum/protected.d:保护包的配合
/etc/yum/vars:yum可以使用的变量设置
/etc/yum/version-groups.conf:
帮助文件目录
/usr/share/locate
/usr/share/doc
/usr/share/man
缓存文件
/var/cache/yum :yum程序使用中的一些缓存文件,
2、下面我们使用如下:
yum管理包流程_学习笔记

这里面的1,2,3,4都是分别干了什么。

  • plugins是什么东西?
  • hostfile是什么东西?

然后就是我们在/etc/yum.reops.d/下配置了若干个.repo的仓库配置,每个仓库配置文件里,配置了若干个repo.id,repo.id 下又配置了多个baseurl=url1,url2...,baseurl好理解,默认是轮询,还可以设置顺序查找,
repo.id 也好理解用cost值来按照值来查找,默认为1000,越小优先级越高
然后就是.repo配置文件的事情,它是按什么顺序查找,cost值是不是全局有效呢。几个.repo里的比较cost值。

yun 命令使用注意事项

yum clean 清理的是当前有效的一些仓库的信息,无效的需要加选项
--enablerepo='*'
而要清理cache下缓存的一些目录需要用rm -rf /var/cache/yum/

我们要查看一些帮助文件来助我们找到答案
1、man 5 yum.conf 分析,
yum配置分为main和repository两个部分,main放在yum.conf中,repository放在yum.repos.d/.repo中
main为global config有些选项如下。
cachedir:缓存应用的cache和db文件,默认/var/cache/yum
persistdir:缓存应用的信息,当有多个版本存在的情况,默认/var/lib/yum
keepache:确定是否保留包和头文件的缓存。默认为0不保留
reposdir:默认为/etc/yum.repos.d/
conf
debuglevel,errorlevel,rpmverbosity,
protected_packages:保护一些包不被卸载,配置在/etc/yum/protected.d/conf中,默认有systemd.conf 内容为systemd
systemd包受到保护,不允许yum remove操作。
protected_multilib:默认为1,确定是否检查包的本台是否是同一版本的,一个软件同时只能被安装一个版本。kernel允许多版本同时存在。
config_file_path:配置文件路径,默认/etc/yum.conf
logfile:日志文件,默认为/var/yum/log
ip_resolve:解析域名为ipv4还是ipv6,默认是4
plugins:是否启用yum plugins,默认是1,具体看man 8 yum
plugins是扩展yum的功能,插件是python ,以.py结尾的文件,文件存放pluginpath和pluginconfpath的路径下,要想生效需要/etc/yum.conf 中plugins=1,还要/etc/yum/pluginconf.d/
.conf 中enable=1
pluginpath:plugins路径默认/usr/share/yum-plugins 和/usr/lib/yum-plugins
pluginconfpath:plugins配置默认在/etc/yum/pluginconf.d/.conf
fssnap_devices:默认配置在/etc/yum/fssnap.d/
.conf,lvm 设备的snapshots(快照)
repository中的一些选项是会覆盖main中的配置对当前repo.id有效,

baseurl=
如果有多个最后一个生效,而且会有警告。
$releasever $arch $basearch $uuid 等变量可以用在name,baseurl,command上简化配置和扩展性。
变量:/etc/yum/vars 在这里建议个infra的文件,然后添加内容为stock就是一个可以被yum识别的变量名infra,对应变量值的是stock
python -c 'import yum, pprint; yb = yum.YumBase();pprint.pprint(yb.conf.yumvar, width=1)' //查看yum变量。

yum管理包流程_学习笔记
FILES:
yum管理包流程_学习笔记

1、到这里我们知道了yum repolist 开始的第一部门的loaded plugins从哪里来了。/etc/yum/pluginconf.d/conf,到/usr/lib/yum-plugins/.py去调用这些插件的功能。
yum管理包流程_学习笔记

2、然后就是去读取repo配置,去下载缓存到/var/cache/,只有当执行操作的时候才回去创建/var/cache/yum这个目录然后把缓存到的信息放到这里。
yum管理包流程_学习笔记
3、这里看到我们获取repo.id就按照字母或者什么的顺序来加载,当没有配置cost值。
yum管理包流程_学习笔记
4、我们怎么知道tree已经安装过了的信息呢,

有兴趣的去研究这个吧
https://www.centos.org/docs/5/html/yum/

相关文章
|
12月前
|
存储 关系型数据库 MySQL
MySQL介绍和MySQL包安装 -- RHEL系列(Yum资源库安装MySQL)
MySQL是一款开源关系型数据库,高性能、易用、跨平台,支持多种存储引擎,广泛应用于Web开发、企业级应用等领域。本教程介绍其特点、架构及在主流Linux系统中的安装配置方法。
1595 0
MySQL介绍和MySQL包安装 -- RHEL系列(Yum资源库安装MySQL)
yum 可以安装rpm包
【6月更文挑战第18天】yum 可以安装rpm包
1675 0
|
存储 缓存 Linux
48. 【Linux教程】yum 软件包管理
48. 【Linux教程】yum 软件包管理
400 0
48. 【Linux教程】yum 软件包管理
|
缓存 Linux 应用服务中间件
linux yum下载离线包缓存 安装到服务器 实测!!!
linux yum下载离线包缓存 安装到服务器 实测!!!
539 0
|
JavaScript 前端开发 Linux
【看表情包学Linux】软件包管理器 yum | Vim 编辑器介绍 | Vim 文本批量化操作 | 配置 Vim(二)
本章首先介绍 Linux 软件包管理器 yum,学习如何在 Linux 上安装和卸载软件。最后我们讲解一下 vim 编辑器,我采会用实际操作去讲解 vim 的文本操作。对于 vim 的这些操作按键,不需要死记,用的多了自然就会熟。默认的 vim 配置简陋不堪,没有代码提示、没有缩进甚至没有行号,但至少还是有语法高亮的。在这一章我们主要去学习 vim 的基础操作,对于 vim 的配置我打算放到下一章去讲。
653 1
【看表情包学Linux】软件包管理器 yum | Vim 编辑器介绍 | Vim 文本批量化操作 | 配置 Vim(二)
|
Linux 程序员 Shell
【看表情包学Linux】软件包管理器 yum | Vim 编辑器介绍 | Vim 文本批量化操作 | 配置 Vim(一)
💭 写在前面 本章首先介绍 Linux 软件包管理器 yum,学习如何在 Linux 上安装和卸载软件。最后我们讲解一下 vim 编辑器,我采会用实际操作去讲解 vim 的文本操作。对于 vim 的这些操作按键,不需要死记,用的多了自然就会熟。默认的 vim 配置简陋不堪,没有代码提示、没有缩进甚至没有行号,但至少还是有语法高亮的。在这一章我们主要去学习 vim 的基础操作,对于 vim 的配置我打算放到下一章去讲。
615 1
【看表情包学Linux】软件包管理器 yum | Vim 编辑器介绍 | Vim 文本批量化操作 | 配置 Vim(一)
|
Linux
Linux 学习笔记七:YUM安装软件
Linux 学习笔记七:YUM安装软件
562 0
|
测试技术 Linux
收集yum install安装的软件的全量依赖 rpm 包
收集yum install安装的软件的全量依赖 rpm 包
|
Cloud Native Ubuntu Linux
Linux软件包管理:yum和apt比较
Linux软件包管理:yum和apt比较
699 0
|
缓存 运维 Ubuntu
Linux--软件包管理yum
Linux--软件包管理yum