6.2. 重要的 RPM 特性和变化
Red Hat Enterprise Linux (RHEL) 8 使用 RPM 4.14。这个版本比 RPM 4.11 提供了很多改进,具体信息包括在 RHEL 7 中。
主要特性包括:
- debuginfo 软件包可并行安装
- 支持弱依赖项
- 支持富或布尔值依赖项
- 支持大小超过 4 GB 的打包文件
- 支持文件触发器
-
新的
--nopretrans
和--noposttrans
开关来分别禁用%pretrans
和%posttrans
脚本的执行。 -
新的
--noplugins
选项用来禁用载入和执行所有 RPM 插件。 -
新的
syslog
插件,用于通过系统日志记录协议(syslog)记录任何 RPM 活动。 rpmbuild
命令现在可以直接从源代码软件包中执行所有构建步骤。可以将
rpmbuild
与任何-r[abpcils]
选项一起使用。支持重新安装模式。
新的
--reinstall
选项可保证这一点。要重新安装之前安装的软件包,请使用以下语法:rpm {--reinstall} [install-options] PACKAGE_FILE
这个选项可确保正确安装新软件包并删除旧软件包。
支持 SSD conservation 模式。
这是通过新的
%_minimize_writes
宏保证的,该宏位于/usr/lib/rpm/macros
文件中。宏默认设置为 0。要最小化对 SSD 磁盘的写入操作,将%_minimize_writes
设置为 1。-
新的
rpm2archive
工具用于将 rpm 有效负载转换为 tar 归档
请参阅 RHEL 8 中的新 RPM 功能。
主要变更包括:
- 更严格的 spec-parser
- 简化对非详细模式输出的签名检查
改进了对可重复生成的构建的支持(创建相同软件包的构建):
- 设置构建时间
- 设置文件 mtime(文件修改时间)
- 设置构建主机
-
使用
-p
选项查询未安装的 PACKAGE_FILE 现在是可选的。对于这个用例,rpm
命令现在与是否带有-p
选项返回相同的结果。当需要-p
选项的唯一用例是验证文件名与rpmdb
数据库中的所有Provides
不匹配。 在宏中添加和弃用
-
%makeinstall
宏已被弃用。要安装程序,使用%make_install
宏。
-
rpmbuild --sign
命令已弃用。请注意,在
rpmbuild
命令中使用--sign
选项已经被弃用。要在已经存在的软件包中添加签名,使用rpm --addsign
。