6.3. 软件管理


RPM 支持 spec-local 文件属性和依赖项生成器

文件属性及其依赖项生成器通常在构建使用这些属性的软件包之前必须安装的独立软件包中提供。但是,您可能需要 file 属性在构建附带此属性的软件包期间生效。您可能还需要只用于构建软件包的 file 属性,而无需提供属性。

在这个版本中,您可以通过执行以下操作注册 spec-local 文件属性和生成器:

  1. 定义 %_local_file_attrs 宏。%_local_file_attrs 接受以冒号分隔的新属性名称列表,以直接在 spec 文件中注册。
  2. 为每个属性定义一个或多个依赖项生成器宏,如 %__NAME_provides%__NAME_path,其中 NAME 是本地文件属性的名称。

RPM 随后在构建 spec 文件时将文件属性用于依赖项生成。因此,您可以创建不一定要安装的构建时文件属性。

例如,以下 spec 文件片段使用与您的软件包源捆绑的 foobar.sh 脚本为每个打包文件生成提供:

Source1: foobar.sh
[...]
%define _local_file_attrs foobar
%define __foobar_provides %{SOURCE1}
%define __foobar_path .*
Copy to Clipboard Toggle word wrap

Jira:RHEL-84057

RPM 在安装过程中记录原始软件包的校验和

在这个版本中,RPM 会在安装过程中记录整个 .rpm 软件包的 SHA256 和 SHA512 摘要。然后,您可以从 RPM 数据库检索这些摘要,以验证安装的软件包是否与特定的 .rpm 文件对应。因此,您可以通过重新验证安装的软件包集是否与位位(位位,一组已知 .rpm 软件包的集合)来改进 RHEL 系统的完整性,如 DNF 存储库中可用的软件包。

要输出安装的软件包摘要,请使用以下命令:

$ rpm -q --qf "[%{packagedigestalgos:hashalgo} %{packagedigests}\n]" <package_name>
Copy to Clipboard Toggle word wrap

您还可以通过配置新的 %_pkgverify_digests 宏来自定义数据库中记录哪些摘要类型,例如:

%_pkgverify_digests 8:10
Copy to Clipboard Toggle word wrap

Jira:RHEL-84062

dnf 事务过程中报告系统时钟偏移

在系统和授权服务器之间显著时钟偏移会使内容存储库不可用,即使在正确注册的系统上也是如此。很难进行故障排除,特别是当负偏移在以后启动权利时。

在这个版本中,当 subscription-manager 检测到时钟偏移大于 2 秒时,在 dnf 事务过程中将以下信息输出到 stdout:

The system clock is skewed. There is a time difference of X.Y seconds with the entitlement server. Please check your clock settings to ensure access to all entitled content.
Copy to Clipboard Toggle word wrap

当 skew 超过 2 秒时,额外的 DEBUG 日志记录被写入 /var/log/rhsm/rhsm.log 文件,如果超过 15 分钟,则改为 WARNING

有关如何使 RHEL 10 系统时钟与 NTP 服务器同步的说明,请参阅 配置时间同步

Jira:RHEL-13374[1]

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat