rpm包管理器_学习笔记

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

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

1、rpm软件包生成の文件有:
二进制文件
/bin/rpm
/usr/bin/rpm2cpio
/usr/bin/rpmdb
/usr/bin/rpmkeys
/usr/bin/rpmquery
/usr/bin/rpmverify
库文件
/usr/lib/rpm
/var/lib/rpm

配置文件
/etc/rpm:存放rpm配置文件目录
帮助文件
/usr/share/doc
/usr/share/locale
/usr/share/man

诸多文件具体自行查看:
rpm -qfl which rpm

2、rpm包管理器的基本原理

首先它有自己的数据库,可以使用rpmdb或rpm --initdb和--rebuilddb
rpm会调用自己的库文件的工具去查询安装过的软件包的头文件的信息,这里就体现rpm格式的重要性,会到指定的目录下去查询指定的信息,生成数据库。
rpm --initdb 会去生成一个新的数据库,如果有存在的并不会覆盖。
会发现在/var/lib/rpm/下的_db.001/002/003文件的时间戳都被覆盖了,相当于重建了。
rpm包管理器_学习笔记

rpm --rebuliddb的结果
rpm包管理器_学习笔记

rmndb的结果
rpm包管理器_学习笔记

rpm包管理器_学习笔记

rpm包管理器_学习笔记

我们能够发现使用rebuilddb之后db.001的文件都不见了。
这个时候我们只要使用rpm执行什么查询什么的操作,db数据有自动生成了。
rpm包管理器_学习笔记
而使用--initdb只是新建了db.001的文件。

由此可以看出来db.00几的文件是很重要的啊
我们能看到在/var/lib/rpm下的都是数据库文件,而且rpmdb所操作影响的文件也是这些,所以rpm工具的数据库文件就是这些了。
rpm包管理器_学习笔记

rpm的配置文件,我们看到都是以macros为前缀的,宏命令的意思,不打开了都是一些命令也看不懂就算了:
rpm包管理器_学习笔记
rpm包管理器_学习笔记
3、rpm包管理器的基本功能
打包:
查询:
-q:
-p: 安装前查看,p对应package
-f:安装之后看,文件由那个包提供,
校验:
-K :安装前检查包的完整性和合法性
-V:安装后检查包生成的文件是否有改动
安装:
-i:
更新:
-U:有老版本更新,没老版本安装新版本
-F:有老版本才更新,没有不操作
注意的是不要对内核升级。
卸载:
-e:
具体使用方法如下:
rpm包管理器_学习笔记
rpm包管理器_学习笔记

相关文章
|
缓存 运维 负载均衡
Nginx专题(2):Nginx的负载均衡策略及其配置
本文介绍了Nginx的负载均衡策略,一致性hash分配原理,及常用的故障节点的摘除与恢复配置。
|
10月前
|
机器学习/深度学习 人工智能 自然语言处理
当前AI大模型在软件开发中的创新应用与挑战
【10月更文挑战第31天】2024年,AI大模型在软件开发领域的应用取得了显著进展,从自动化代码生成、智能代码审查到智能化测试,极大地提升了开发效率和代码质量。然而,技术挑战、伦理与安全问题以及模型可解释性仍是亟待解决的关键问题。开发者需不断学习和适应,以充分利用AI的优势。
|
存储 SQL 分布式计算
从零到一建设数据中台 - 关键技术汇总
从零到一建设数据中台 - 关键技术汇总
307 0
|
存储 关系型数据库 MySQL
MySQL数据库——InnoDB引擎-逻辑存储结构(表空间、段、区、页、行)
MySQL数据库——InnoDB引擎-逻辑存储结构(表空间、段、区、页、行)
409 7
|
存储 数据采集 监控
InfluxDB:开启你的高性能读写数据之旅!
InfluxDB:开启你的高性能读写数据之旅!
668 0
|
编解码 UED
音视频同步的方法:深入探索基于FFmpeg的音视频同步策略(一)
音视频同步的方法:深入探索基于FFmpeg的音视频同步策略
1684 1
|
Java 数据库连接 mybatis
Mybatis入门案例【超详细】
【2月更文挑战第10天】
|
存储 人工智能 C++
【C/C++】数据在内存中的存储(完整篇非常详细)
【C/C++】数据在内存中的存储(完整篇非常详细)
913 0
|
存储 JSON 运维
Facebook 工程经验 --PCIe 故障监控和修复
Facebook 工程经验 --PCIe 故障监控和修复
588 1
Facebook 工程经验 --PCIe 故障监控和修复
|
存储 开发框架 关系型数据库
【毕业设计之python系列】基Django的超市管理系统的设计与实现
【毕业设计之python系列】基Django的超市管理系统的设计与实现
645 0