4.4. 软件管理 (机器翻译版本)
YUM 性能改进和对模块化内容的支持
在Red Hat Enterprise Linux 8上,新版本的软件确保安装软件 YUM 工具,它是基于 DNF 技术。
YUM 基于 DNF 与以前相比具有以下优点 YUM v3 用于RHEL 7:
- 提高性能
- 支持模块化内容
- 精心设计的稳定API,可与工具集成
有关新的差异的详细信息 YUM 工具和以前的版本 YUM v3 来自RHEL 7,请参阅 http://dnf.readthedocs.io/en/latest/cli_vs_yum.html。
YUM 基于 DNF 兼容 YUM v3 从命令行使用时,编辑或创建配置文件。
对于安装软件,您可以使用 yum
命令及其特定选项与RHEL 7相同。可以使用以前的名称安装包 Provides
。包还提供兼容性符号链接,因此可以在通常的位置找到二进制文件,配置文件和目录。
请注意,提供的旧版Python API YUM v3 并且Libdnf C API不稳定,可能会在Red Hat Enterprise Linux 8生命周期中发生变化。建议用户将其插件和脚本迁移到新的DNF Python API,这是稳定且完全支持的。DNF Python API可在以下位置获得 https://dnf.readthedocs.io/en/latest/api.html
某些 YUM v3 功能可能表现不同 YUM 基于 DNF。如果任何此类更改对您的工作流程产生负面影响,请打开Red Hat支持案例,如中所述 How do I open and manage a support case on the Customer Portal?
(BZ#1581198)
RHEL 8中值得注意的RPM功能
Red Hat Enterprise Linux 8随RPM 4.14一起发布。此版本引入了许多针对RPM 4.11的增强功能,可在RHEL 7中使用。最显着的功能包括:
-
该
debuginfo
包可以并行安装 - 支持弱依赖
- 支持rich或boolean依赖项
- 支持打包大小超过4 GB的文件
- 支持文件触发器
此外,最显着的变化包括:
- 更严格的spec-parser
- 简化签名检查非详细模式下的输出
- 宏中的添加和弃用
(BZ#1581990)
RPM 现在在开始安装之前验证整个包的内容
在Red Hat Enterprise Linux 7上 RPM 实用程序在解包时验证了各个文件的有效负载内容。但是,由于多种原因,这是不够的:
- 如果有效负载损坏,则仅在执行不可逆转的脚本操作后才会注意到。
- 如果有效负载损坏,则在更换先前版本的某些文件后,程序包的升级将中止,从而中断正在运行的安装。
- 单个文件的哈希值是在未压缩的数据上执行的 RPM 容易受到解压缩漏洞的影响。
在Red Hat Enterprise Linux 8上,整个软件包在安装之前在单独的步骤中使用最佳可用散列进行验证。
在Red Hat Enterprise Linux 8上构建的软件包使用新的软件包 SHA256
压缩有效负载上的哈希值。在签名包上,有效负载散列还受签名保护,因此在不破坏包头上的签名和其他散列的情况下不能更改。较旧的包使用 MD5
标头和有效负载的散列,除非通过配置禁用,例如FIPS模式。
`%_pkgverify_level`宏可用于在安装之前另外启用强制签名验证或完全禁用有效负载验证。除此之外 %_pkgverify_flags
宏可用于限制允许哪些哈希值和签名。例如,可以禁用弱者的使用 MD5
哈希以与旧软件包的兼容性为代价。
(JIRA:RHELPLAN-1499)
为了尽快向用户提供最新的信息,本文档可能会包括由机器自动从英文原文翻译的内容。如需更多信息,请参阅此说明。