8.6 发行注记

Red Hat Enterprise Linux 8.6

Red Hat Enterprise Linux 8.6 发行注记

Red Hat Customer Content Services

摘要

本发行注记提供了在 Red Hat Enterprise Linux 8.6 中实现的改进和附加组件的高级信息,并记录了本版本中已知的问题,以及重要的 bug 修复、技术预览、已弃用的功能和其他详情。
有关安装 Red Hat Enterprise Linux 的详情,请参考 第 3.1 节 “安装”

使开源包含更多

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。我们从这四个术语开始:master、slave、黑名单和白名单。由于此项工作十分艰巨,这些更改将在即将推出的几个发行版本中逐步实施。详情请查看 CTO Chris Wright 的信息

对红帽文档提供反馈

我们感谢您对我们文档的反馈。让我们了解如何改进它。

通过 Jira 提交反馈(需要帐户)

  1. 登录到 Jira 网站。
  2. 在顶部导航栏中点 Create
  3. Summary 字段中输入描述性标题。
  4. Description 字段中输入您对改进的建议。包括文档相关部分的链接。
  5. 点对话框底部的 Create

第 1 章 概述

1.1. RHEL 8.6 中的主要变化

安全性

在 RHEL 8.6、SELinux、fapolicyd 框架和用于自动解锁 LUKS 加密驱动器的基于策略的解密(PBD)支持 SAP HANA 数据库管理系统。如需更多信息,请参阅 用于 SAP HANA 2.0 的 Red Hat Enterprise Linux 安全强化指南

fapolicyd 的软件包已升级至上游版本 1.1。在其他改进中,您现在可以使用新的 rules.d/trust.d/ 目录、fagenrules 脚本和 fapolicyd-cli 命令的新选项。

OpenSSH 服务器现在支持插入式配置文件。

pcsc-lite 软件包已更新到上游版本 1.9.5,它提供多个功能增强和程序错误修复。

现在,您可以使用 semodule 命令中新添加的 --checksum 选项来验证已安装 SELinux 策略模块的版本。

SCAP 安全指南(SSG)软件包已更新到上游版本 0.1.60,OpenSCAP 软件包已更新到上游版本 1.3.6。

如需更多信息,请参阅 新特性 - 安全

动态编程语言、网页和数据库服务器

以下组件的更新版本现在作为新的模块流提供:

  • PHP 8.0
  • Perl 5.32

如需更多信息,请参阅 新特性 - 动态编程语言、Web 和数据库服务器

编译器和开发工具

更新了编译器工具集

以下编译器工具集已更新:

  • GCC Toolset 11
  • LLVM Toolset 13.0.1
  • Rust Toolset 1.58.1
  • Go Toolset 1.17.7

如需更多信息,请参阅 新功能 - 编译器和开发工具

RHEL 8 中的 Java 实现

RHEL 8 AppStream 软件仓库包括:

  • java-17-openjdk 软件包,提供 OpenJDK 17 Java 运行时环境和 OpenJDK 17 Java 软件开发组件。
  • java-11-openjdk 软件包,提供 OpenJDK 11 Java 运行时环境和 OpenJDK 11 Java 软件开发组件。
  • java-1.8.0-openjdk 软件包,提供 OpenJDK 8 Java 运行时环境和开源 JDK 8 Java 软件开发组件。

如需更多信息,请参阅 OpenJDK 文档

Java 工具

RHEL 8.6 引入了一个新的 log4j:2 模块,其中包含 Apache Log4j 2,它是一个 Java 日志记录工具和一个可让您将日志语句输出到各种输出目标的库。

如需更多信息,请参阅 新功能 - 编译器和开发工具

身份管理

ansible-freeipa 角色和模块现在在 Ansible Automation Hub 中可用,它提供了 ansible-freeipa 内容的快速更新。

1.2. 原位升级和操作系统转换

RHEL 7 原位升级到 RHEL 8

目前支持的原位升级路径包括:

  • 从 64 位 Intel、IBM POWER 8(little endian)和 IBM Z 架构上的 RHEL 7.9 升级到 RHEL 8.4 和 RHEL 8.6
  • 在需要内核版本 4.14 的架构上,从 RHEL 7.6 到 RHEL 8.4:IBM POWER 9(little endian)和 IBM Z(Structure A)。这是这些架构的最终原位升级路径。
  • 从 64 位 Intel 架构上带有 SAP HANA 的系统上的 RHEL 7.9 升级到 RHEL 8.2 和 RHEL 8.6。升级到 RHEL 8.2 后,确保您的带有 SAP HANA 的系统仍然被支持,启用 RHEL 8.2 Update Services for SAP Solutions(E4S)软件仓库。

如需更多信息,请参阅支持的 Red Hat Enterprise Linux 原位升级路径。有关执行原位升级的步骤,请参阅 从 RHEL 7 升级到 RHEL 8。有关在带有 SAP 环境的系统上进行原位升级的说明,请参阅 如何将 SAP 环境从 RHEL 7 原位升级到 RHEL 8

主要改进包括:

  • 随着 RHEL 8.6 的发布,现在提供从 RHEL 7 原位升级到 RHEL 8 的多个升级路径。这可让您决定要升级系统的哪个 RHEL 8 次版本,而不是默认升级到最新的 RHEL 8 次版本。请注意,提供的升级路径在 RHEL 系统和带有 SAP HANA 的 RHEL 系统之间有所不同。
  • 现在,Leapp 工具在预升级和原位升级的初始阶段运行得很快。
  • 用于以下云镜像类型的 SAP 托管系统的原位升级也支持:

    • 在任何公有云平台上自带订阅(BYOS)系统,其使用 Red Hat Subscription Manager(RHSM) 进行 RHEL 订阅。
    • Amazon Web Services(AWS)上和带有 Red Hat Update Infrastructure(RHUI)的 Microsoft Azure 上的现收现付(PAYG)实例。

从 RHEL 6 原位升级到 RHEL 8

要从 RHEL 6.10 升级到 RHEL 8,请遵循 从 RHEL 6 升级到 RHEL 8 中的说明。

从 RHEL 8 原位升级到 RHEL 9

文档 从 RHEL 8 升级到 RHEL 9 中提供了有关如何使用 Leapp 工具执行从 RHEL 8 原位升级到 RHEL 9 的说明。RHEL 8 和 RHEL 9 的主要区别记录在 采用 RHEL 9 时的注意事项 中。

从不同的 Linux 发行版转换到 RHEL

如果您使用 CentOS Linux 8 或 Oracle Linux 8,您可以使用红帽支持的 Convert2RHEL 程序将操作系统转换为 RHEL 8。如需更多信息,请参阅从基于 RPM 的 Linux 发行版转换到 RHEL

如果您使用早期版本的 CentOS Linux 或 Oracle Linux(称为版本 6 或 7),可以将操作系统转换为 RHEL,然后执行 RHEL 8 的原位升级。请注意,CentOS Linux 6 和 Oracle Linux 6 的转换使用不被支持的 Convert2RHEL 工具。有关不受支持的转换的更多信息,请参阅 如何执行从派生的 Linux 发行版本到 RHEL 的不受支持的转换

有关红帽如何支持从其他 Linux 发行本转换到 RHEL 的详情,请参考 Convert2RHEL 支持政策文档

1.3. 红帽客户门户网站 Labs

红帽客户门户网站 Labs 是客户门户网站的一个部分中的一组工具,地址为 https://access.redhat.com/labs/。红帽客户门户网站 Labs 中的应用程序可帮助您提高性能、快速解决问题、发现安全问题以及快速部署和配置复杂应用程序。一些最常用的应用程序有:

1.4. 其它资源

第 2 章 构架

Red Hat Enterprise Linux 8.6 与内核版本 4.18.0-372 一起发布,它提供对以下构架的支持:

  • AMD 和 Intel 64 位构架
  • 64 位 ARM 架构
  • IBM Power Systems, Little Endian
  • 64-bit IBM Z

请确定为每个构架购买正确的订阅。如需更多信息,请参阅 Red Hat Enterprise Linux 入门 - 附加构架。有关可用订阅列表,请查看客户门户网站中的 订阅使用

第 3 章 RHEL 8 中的内容发布

3.1. 安装

Red Hat Enterprise Linux 8 使用 ISO 镜像安装。AMD64、Intel 64 位、64 位 ARM、IBM Power Systems 和 IBM Z 架构有两种类型的 ISO 镜像:

  • 二进制 DVD ISO:包含 BaseOS 和 AppStream 软件仓库的完整安装镜像,并允许您在没有附加软件仓库的情况下完成安装。

    注意

    二进制 DVD ISO 镜像大于 4.7 GB,因此它可能不适用于单层 DVD。当使用二进制 DVD ISO 镜像创建可引导安装介质时,建议使用双层 DVD 或者 USB 设备。您还可以使用 Image Builder 工具创建自定义的 RHEL 镜像。有关镜像构建器的更多信息,请参阅 编写自定义的 RHEL 系统镜像文档。

  • 引导 ISO:用来引导到安装程序的最小引导 ISO 镜像。这个选项需要访问 BaseOS 和 AppStream 软件仓库来安装软件包。软件仓库是二进制 DVD ISO 镜像的一部分。

有关下载 ISO 镜像、创建安装介质和完成 RHEL 安装的说明,请参阅 执行标准的 RHEL 8 安装 文档。有关自动 Kickstart 安装和其他高级主题,请参阅 执行高级的 RHEL 8 安装 文档 。

3.2. 软件仓库

Red Hat Enterprise Linux 8 由两个主要软件仓库发布:

  • BaseOS
  • AppStream

两个软件仓库都需要一个基本的 RHEL 安装,所有 RHEL 订阅都包括它们。

BaseOS 仓库的内容旨在提供底层操作系统功能的核心组件,为所有安装提供基础操作系统的基础。这部分内容采用 RPM 格式,它的支持条款与之前的 RHEL 版本相似。有关通过 BaseOS 发布的软件包列表,请查看 软件包清单

Application Stream 仓库的内容包括额外的用户空间应用程序、运行时语言和数据库来支持各种工作负载和使用案例。Application Streams(应用程序流)以熟悉的 RPM 格式,作为RPM 格式的扩展,名为 模块(modules),或作为 Software Collections(软件集合)。有关 AppStream 中提供的软件包列表,请查看 软件包清单

另外,所有 RHEL 订阅都可以使用 CodeReady Linux Builder 软件仓库。它为开发人员提供了额外的软件包。不支持包括在 CodeReady Linux Builder 存储库中的软件包。

有关 RHEL 8 软件仓库的详情,请查看 软件包清单

3.3. 应用程序流

Red Hat Enterprise Linux 8 引进了应用程序流(Application Streams)的概念。现在,用户空间组件的多个版本的发布和更新频率会比核心操作系统的发布和更新频率快。这为自定义 Red Hat Enterprise Linux 提供了更大的灵活性,不会影响平台或特定部署的基本稳定性。

作为 Application Streams 提供的组件可打包为模块(module)或 RPM 软件包,并通过 RHEL 8 中的 AppStream 软件仓库提供。每个 Application Stream 组件都有其特定的生命周期,可能和 RHEL 8 的生命周期相同或更短。详情请查看 Red Hat Enterprise Linux 生命周期

模块是代表逻辑单元的软件包集合: 应用程序、语言堆栈、数据库或一组工具。这些软件包被一同构建、测试并发布。

模块流代表 Application Stream 组件的版本。例如,PostgreSQL 数据库服务器的几个流(版本)在带有默认的 postgresql:10 流的 postgresql 模块中提供。在系统中只能安装 一 个模块流。不同的容器可以使用不同的版本。

详细的模块命令,请参考 安装、管理和删除用户空间组件文档。有关 AppStream 中可用模块的列表,请查看 软件包清单

3.4. 使用 YUM/DNF 的软件包管理

在 Red Hat Enterprise Linux 8 上,安装软件是由 YUM 工具来保证的,该工具基于 DNF 技术。我们有意坚持使用 yum 术语,以便与以前的 RHEL 主版本保持一致。但是,如果您输入 dnf 而不是 yum,则命令可以按预期工作,因为 yumdnf 的别名,以便兼容。

如需了解更多详细信息,请参阅以下文档:

第 4 章 新功能

这部分论述了 Red Hat Enterprise Linux 8.6 中引进的新功能及主要改进。

4.1. 安装程序和镜像创建

镜像构建器支持 LVM 上的自定义文件系统分区

有了这个改进,如果有多个分区,您可以在 LVM 上创建带有自定义文件系统分区的镜像,并在运行时调整这些分区的大小。为此,您可以在蓝图中指定自定义的文件系统配置,然后使用所需的磁盘布局创建镜像。默认文件系统布局保持不变 - 如果您使用没有文件系统自定义的普通镜像,则 cloud-init 会调整 root 分区。

(JIRA:RHELPLAN-102505)

4.2. RHEL for Edge

RHEL for Edge 现在默认支持 Greenboot 内置健康检查

有了这个更新,RHEL for Edge Greenboot 现在包括带有 watchdog 功能的内置健康检查,来确保在重启时硬件不会挂起或冻结。使用这个,您可以从以下功能中获益:

  • 它使 watchdogs 硬件用户可以轻松地采用内置健康检查
  • 一组为内置操作系统组件提供值的默认健康检查。
  • watchdog 现在作为默认预设出现,这使得可以轻松地启用或禁用此功能
  • 能够根据已提供的健康检查,创建自定义健康检查。

(BZ#2083036)

RHEL 8 rebase 到 rpm-ostree v2022.2

RHEL 8 与 rpm-ostree 版本 v2022.2 一起发布,其提供了多个 bug 修复和增强。主要变更包括:

  • 现在,可以使用新的 --append-if-missing--delete-if-present kargs 标志以幂等方式更新内核参数。
  • 现在,在所有仓库查询中都默认禁用 YUM 的 Count Me 功能,只能通过相应的 rpm-ostree-countme.timerrpm-ostree-countme.service 单元触发。请参阅 countme
  • 后处理逻辑现在可以处理 user.ima IMA 扩展属性。找到 xattr 扩展属性时,系统会自动将它转换为最终 OSTree 软件包内容的 security.ima
  • treefile 文件中有一个新的 repo-packages 字段。您可以使用它来将一组软件包固定到特定的软件仓库。
  • 能够在 compose 和客户端上使用模块化功能。
  • 容器镜像现在作为 compose 目标以及升级源使用。

(BZ#2032594)

4.3. 订阅管理

subscription-manager syspurpose 下合并的系统目的命令

在以前的版本中,有多个 subscription-manager 模块(插件角色服务级别用法)来设置与系统目的相关的属性。这些模块已移至新的 subscription-manager syspurpose 模块下。

原始的 subscription-manager 模块(插件角色服务级别用法)现已弃用。另外,提供 syspurpose 命令行工具的软件包(python3-syspurpose)已在 RHEL 8.6 中弃用。这个软件包的所有功能都由新的 subscription-manager syspurpose 模块涵盖。

在这个版本中,可以使用 subscription-manager的单一命令来查看、设置和更新所有系统目的属性。这会将所有现有系统目的命令替换为其同等版本可用的新子命令。例如,subscription-manager role --set SystemRole 变成 subscription-manager syspurpose role --set SystemRole 等等。

有关新命令、选项和其他属性的完整信息,请参阅 subscription-manager man page 中的 SYSPURPOSE OPTIONS 部分。

(BZ#2000883)

4.4. 软件管理

modulesync 命令现在在 RHEL 8 中可替换特定的工作流

在 Red Hat Enterprise Linux 8 中,在没有模块元数据的情况下无法安装模块软件包。在以前的版本中,您可以使用 yum 命令来下载软件包,然后使用 createrepo_c 命令来重新分发这些软件包。

此增强引入了 modulesync 命令,以确保模块元数据的存在,从而确保软件包的可安装性。此命令从模块下载 rpm 软件包,并在工作目录中创建带有模块元数据的存储库。

(BZ#1868047)

在 RPM 中添加了新的 --path CLI 选项

有了这个更新,您可以使用新的 --path CLI 选项,通过目前还没有安装的文件查询软件包。这个选项和现有的 --file 选项类似,但只根据提供的路径匹配软件包。请注意,在该路径上的文件不需要在磁盘上存在。

当用户在安装时通过使用 yum--nodocs 选项排除所有文档文件时, --path CLI 选项很有用。在这种情况下,通过使用 --path 选项,您可以显示此排除文件所拥有的软件包,而 --file 选项则不会显示软件包,因为请求的文件不存在。

(BZ#1940895)

4.5. Shell 和命令行工具

lsvpd 软件包 rebase 到版本 1.7.13

lsvpd 软件包已 rebase 到版本 1.7.13。重要的程序错误修复和增强包括:

  • 添加了对 SCSI 位置代码的支持。
  • 修复了 sysfstreecollector 中绝对路径 getDevTreePath 的长度。

(BZ#1993557)

net-snmp-cert gencert 工具现在使用 SHA512 加密算法,而不是 SHA1

为提高安全性,net-snmp-cert gencert 工具已更新到默认使用 SHA512 加密算法生成证书。

(BZ#1908331)

dnntext 模块在 opencv 软件包中提供

现在,opencv 软件包提供了包含用于图像分类推理的深度神经网络的 dnn 模块和用于场景的文本检测和识别的 text 模块。

(BZ#2007780)

powerpc-utils 软件包 rebase 到版本 1.3.9

powerpc-utils 软件包已升级到版本 1.3.9。重要的程序错误修复和增强包括:

  • drmgr 中的日志大小增加到 1MB。
  • 修复了在引导时检查 HCNID 数组大小。
  • hcnmgr 的 HNV 连接中实施了 autoconnect-slaves
  • 改进了 hcnmgr 中的 HNV 绑定列表连接。
  • 使用来自 util-linuxhexdump ,而不是来自 hcnmgrvimxxd
  • hcn-init.service 与 NetworkManager 一起启动。
  • 修复了在 pathname 中针对多路径的逻辑 FC 查找问题。
  • 修复了使用 pathname 中的分区进行逻辑查找的问题。
  • 修复了带有 5 个路径的多路径设备的引导列表。
  • 引入了 lparnumascore 命令,来检测正在运行的 LPAR 的 NUMA 关联性分数。
  • lpartstat 中添加了 -x 选项以增强安全性。
  • hcnmgr 中修复了与 udev 重命名的 ofpathname 竞争。
  • 修复了 HNV 中的 qrydev,并删除 lsdevinfo

(BZ#2028690)

powerpc-utils 软件包现在支持 vNIC 作为备份设备

powerpc-utils 软件包现在支持虚拟网络接口卡(vNIC)作为混合网络虚拟化(HNV)的备份 vdevice

(BZ#2022225)

opencryptoki 软件包 rebase 到版本 3.17.0

opencryptoki 软件包已 rebase 到版本 3.17.0。重要的程序错误修复和增强包括:

  • p11sak 工具提供了列出密钥的新功能。
  • 添加了对 OpenSSL 3.0 的支持。
  • 添加了对事件通知的支持。
  • 在 ICA 令牌中添加了 SW 回退。
  • 在启用了硬件加密适配器时,WebSphere Application Server 不再无法启动。
  • opencryptoki.module 已被删除,p11-kit list-modules 命令不再会导致错误消息。

(BZ#1984993)

创建救援镜像时,可以排除某些网络接口和 IP 地址

您可以使用 EXCLUDE_IP_ADDRESSES 变量来忽略某些 IP 地址,使用 EXCLUDE_NETWORK_INTERFACES 变量来在创建救援镜像时忽略特定的网络接口。

在具有浮动地址的服务器上,在原始服务器恢复之前,您需要阻止 ReaR 救援环境配置移至故障切换服务器的浮动地址。否则,会发生与故障切换服务器的冲突,并导致运行在故障切换服务器上的服务中断。要防止冲突,您可以在 ReaR 配置文件 /etc/rear/local.conf 中执行以下操作:

  • 通过将 EXCLUDE_IP_ADDRESSES 变量作为 bash 地址数组提供,从而排除 ReaR 中的 IP 地址。例如: EXCLUDE_IP_ADDRESSES=(192.0.2.27 192.0.2.10),
  • 通过提供 EXCLUDE_NETWORK_INTERFACES 变量作为 bash 接口数组,从而排除 ReaR 中的网络接口。例如: EXCLUDE_NETWORK_INTERFACES=(eno1d1)

(BZ#2035939)

4.6. 基础架构服务

引入了新的 bind9.16 软件包版本 9.16.23

引进了一个新的 bind9.16 软件包版本 9.16.23,来作为 bind 组件版本 9.11.36 的替代品。主要改进包括:

  • 在 DNSSEC 中引入了新的密钥和签名策略功能。
  • 引进了 QNAME 最小化以改善隐私。
  • 在 Permanent 中引入了 validate-except 特性。
  • Negative Trust Anchors 用来临时禁用 DNSSEC 验证。
  • 重构响应策略区域(RPZ)。
  • 为区域类型引入了新的命名惯例:primarysecondary 区域类型用作主 masterslave 的同义词。
  • 引入了 digmdigdelv 命令的补充 YAML 输出模式。
  • filter-aaaa 功能被移到单独的 filter-afilter-aaaa 插件中。
  • 引入了一个新的区类型镜像支持(RFC 8806)。

删除的功能:

  • dnssec-enabled 选项已被删除,DNSSEC 默认是启用的,并且不再接受 dnssec-enabled 关键字。
  • lwresd 轻量级解析器守护进程和 liblwres 轻量级解析器库已被删除。

(BZ#1873486)

CUPS 作为容器镜像提供

通用 Unix 打印系统(CUPS)现在作为容器镜像提供,您可以从 Red Hat Container Catalog 部署它。

(BZ#1913715)

bind 组件 rebase 到版本 9.11.36

bind 组件已 rebase 到版本 9.11.36。重要的程序错误修复和增强包括:

  • 改进了的 lame-ttl 选项更加安全。
  • 影响 RBTDB 实例的多个线程 bug 不再会导致 free_rbtdb() 中的断言失败。
  • 更新了 ZONEMD RR 类型的实现以匹配 RFC 8976。
  • 最大支持的 NSEC3 迭代值已缩减到 150。多次迭代的记录被视为不安全的。
  • LOC 记录中的无效的 direction 字段不会再导致失败。

(BZ#2013993)

CUPS Web UI 中提供了 CUPS 无驱动程序打印

CUPS 无驱动程序打印基于 IPP Everywhere 模型,可在 CUPS Web UI 中提供。除了 CLI 中使用的 lpadmin 命令外,您还可以在 CUPS Web UI 中创建一个 IPP Everywhere 队列,无需特殊的软件即可打印到网络打印机。

(BZ#2032965)

4.7. 安全性

pcsc-lite 软件包 rebase 到 1.9.5

pcsc-lite 软件包已 rebase 到上游版本 1.9.5。这个更新提供了新的功能增强和程序错误修复,最重要的是:

  • 在手动启动时,pcscd 守护进程不再会在不活跃后自动退出。
  • pcsc-spy 工具现在支持 Python 3 和新的 --thread 选项。
  • SCardEndTransaction() 函数的性能已经得到提升。
  • poll() 函数替换了 select() 函数,它允许文件描述符编号高于 FD_SETSIZE
  • 修复了很多内存泄漏和并发问题。

(BZ#2014641)

加密策略支持 diffie-hellman-group14-sha256

现在,您可以在 RHEL 系统范围的加密策略中对 libssh 库使用 diffie-hellman-group14-sha256 密钥交换(KEX)算法。这个更新还提供了 OpenSSH 奇偶校验,它也支持这个 KEX 算法。有了这个更新,libssh 默认启用 diffie-hellman-group14-sha256,但您可以使用自定义加密策略禁用它。

(BZ#2023744)

OpenSSH 服务器现在支持插入式配置文件

sshd_config 文件支持 Include 指令,这意味着您可以在另一个目录中包含配置文件。这样便可以使用 Ansible Engine 等自动化工具在 OpenSSH 服务器上轻松应用特定于系统的配置。它也与 ssh_config 文件的功能一致。此外,插入式配置文件也更加便于为不同的用途组织不同的配置文件,如过滤进入连接等。

(BZ#1926103)

sshd_config:ClientAliveCountMax=0 禁用连接终止

将 SSHD 配置选项 ClientAliveCountMax 设为 0 现在会禁用连接终止。这会将此选项的行为与上游保持一致。因此,当 OpenSSH 达到由 ClientAliveInterval 选项配置的超时时,OpenSSH 不再断开空闲的 SSH 用户。

(BZ#2015828)

libssh rebase 到版本 0.9.6

libssh 软件包已 rebase 到上游版本 0.9.6。此版本提供程序错误修正和增强,最重要的是:

  • 支持多个身份文件。按照 ~/.ssh/config 文件中列出的顺序,文件从底部往上进行处理。
  • SFTP 中的子秒时间解析已被修复。
  • 现在,ssh_channel_poll_timeout() 函数的回归意外返回 SSH_AGAIN 已被修复。
  • 修复了密钥重新交换后可能出现的堆缓冲区溢出问题。
  • 当 AEAD 密码匹配但没有 HMAC 重叠时的握手 bug 已被修复。
  • 错误路径上的几个内存泄漏已被修复。

(BZ#1896651)

libreswan rebase 到 4.5

libreswan 已 rebase 到上游版本 4.5。这个版本提供很多程序错误的修正和增强,最重要的是:

  • 支持用于标记 IPsec 的互联网密钥交换版本 2(IKEv2)。
  • 支持互联网密钥交换(IKE)安全联盟(SA)的无子启动。

(BZ#2017352)

验证 SELinux 模块校验和的新选项

semodule 命令中使用新添加的 --checksum 选项,您可以验证已安装的 SELinux 策略模块的版本。

因为 Common Intermediate Language(CIL)不会在模块本身中存储模块名称和模块版本,因此之前没有简单的方法来验证已安装的模块是否与应该安装的模块的版本相同。

使用新命令 semodule -l --checksum,您会收到指定模块的 SHA256 哈希,可将其与原始文件的校验和进行比较,这比重新安装模块要快。

使用示例:

# semodule -l --checksum | grep localmodule
localmodule sha256:db002f64ddfa3983257b42b54da7b182c9b2e476f47880ae3494f9099e1a42bd

# /usr/libexec/selinux/hll/pp localmodule.pp | sha256sum
db002f64ddfa3983257b42b54da7b182c9b2e476f47880ae3494f9099e1a42bd  -

(BZ#1731501)

OpenSCAP 可以读取本地文件

OpenSCAP 现在可以使用本地文件而不是远程 SCAP 源数据流组件。在以前的版本中,您无法对没有互联网访问的系统上包含远程组件的 SCAP 源数据流进行完整的评估。在这些系统上,OpenSCAP 无法评估这些数据流中的一些规则,因为远程组件需要从互联网下载。有了这个更新,您可以在执行 OpenSCAP 扫描前将远程 SCAP 源数据流组件下载并复制到目标系统,并通过使用 oscap 命令的 --local-files 选项将它们提供给 OpenSCAP。

(BZ#1970529)

SSG 现在扫描并修复主目录和互动用户的规则

用于检查和修复互动用户所使用的与主目录相关的所有现有规则的 OVAL 内容已添加到 SCAP 安全指南(SSG)套件中。许多基准测试需要验证属性和内容,它们通常位于交互用户的主目录中。由于系统中交互用户的存在和数量可能有所不同,因此之前没有强大的解决方法来使用 OVAL 语言填补这一空缺。这个更新添加了 OVAL 检查和补救,用于检测系统中的本地互动用户及其各自的主目录。因此,SSG 可以安全地检查并修复所有相关基准要求。

(BZ#1884687)

SCAP 规则现在有一个警告信息来为大型系统配置审计日志缓冲

SCAP 规则 xccdf_org.ssgproject.content_rule_audit_basic_configuration 现在会显示一个性能警告,这提示大型系统的用户由该规则配置的审计日志缓冲可能太小,并可能会覆盖自定义的值。该警告还描述了配置更大的审计日志缓冲的流程。有了这个增强,大型系统的用户可以保持合规,并正确设置审计日志缓冲。

(BZ#1993826)

SSG 现在支持 /etc/security/faillock.conf 文件

此增强添加了对 SCAP 安全指南(SSG)中 /etc/security/faillock.conf 文件的支持。有了这个更新,SSG 可以评估和修复 /etc/security/faillock.conf 文件,以定义 pam_faillock 设置。authselect 工具也用来启用 pam_faillock 模块,同时确保 pam 文件的完整性。因此,pam_faillock 模块的评估和修复与最新版本和最佳实践一致。

(BZ#1956972)

SCAP 安全指南 rebase 到 0.1.60

SCAP 安全指南(SSG)软件包已 rebase 到上游版本 0.1.60。此版本提供各种改进和程序错误修复,最重要的是:

  • 强化 PAM 堆栈的规则现在使用 authselect 作为配置工具。
  • 现在支持定义表示 DISA STIG 自动化 SCAP 内容和 SCAP 自动化内容(增量裁剪)之间区别的裁剪文件。
  • 规则 xccdf_org.ssgproject.content_enable_fips_mode 现在仅检查 FIPS 模式是否已被正确启用。它不能保证系统组件已通过 FIPS 认证。

(BZ#2014485)

DISA STIG 配置文件支持 Red Hat Virtualization 4.4

Red Hat Enterprise Linux 8 的 DISA STIG 配置文件版本 V1R5 已被增强,可支持 Red Hat Virtualization 4.4。该配置文件与 Defense Information Systems Agency(DISA)提供的 RHEL 8 安全技术实施指南(STIG)手动基准一致。但是,一些配置不适用于安装了 Red Hat Virtualization(RHV)的主机,因为它们阻止 Red Hat Virtualization 安装和正常工作。

当在 Red Hat Virtualization Host(RHVH)上应用 STIG 配置文件时,在自托管安装(RHELH)或安装了 RHV Manager 的主机上,以下规则会导致"不适用":

  • package_gss_proxy_removed
  • package_krb5-workstation_removed
  • package_tuned_removed
  • sshd_disable_root_login
  • sudo_remove_nopasswd
  • sysctl_net_ipv4_ip_forward
  • xwindows_remove_packages
警告

自动补救可能会导致系统无法正常工作。先在测试环境中运行补救。

(BZ#2021802)

OpenSCAP rebase 到 1.3.6

OpenSCAP 软件包已 rebase 到上游版本 1.3.6。此版本提供各种程序错误修复和增强,最重要的是:

  • 您可以使用 --local-files 选项提供远程 SCAP 源数据流组件的本地副本。
  • OpenSCAP 接受多个 --rule 参数,以便在命令行上选择多个规则。
  • OpenSCAP 允许使用 --skip-rule 选项跳过某些规则的评估。
  • 您可以使用 OSCAP_PROBE_MEMORY_USAGE_RATIO 环境变量来限制 OpenSCAP 探测所使用的内存。
  • OpenSCAP 现在支持 OSBuild Blueprint 作为补救类型。

(BZ#2041781)

clevis-systemd 不再依赖于 nc

有了这个增强,clevis-systemd 软件包不再依赖于 nc 软件包。当与 Extra Packages for Enterprise Linux(EPEL)一起使用时,依赖项无法正常工作。

(BZ#1949289)

audit rebase 到 3.0.7

audit 软件包已升级到 3.0.7 版本,它引入了很多改进和 bug 修复。最值得注意的是:

  • 向审计基本规则添加了 sudoers
  • --eoe-timeout 选项添加到 ausearch 命令,并将类似的 eoe_timeout 选项添加到 auditd.conf 文件中,该文件指定事件超时结束的值,这会影响 ausearch 解析共存事件的方式。
  • 为"audisp-remote"插件引入了一个修复,该插件在远程位置不可用时会使用 100% 的 CPU 容量。

(BZ#1939406)

审计现在提供指定事件超时结束的选项

有了这个版本,ausearch 工具支持 --eoe-timeout 选项,auditd.conf 文件包含 end_of_event_timeout 选项。您可以使用这些选项来指定事件超时的结束,以避免解析同位事件时出现的问题。事件超时结束的默认值设为 2 秒。

(BZ#1921658)

在审计基本规则中添加 sudoers

有了这个增强,/etc/sudoersetc/sudoers.d/ 目录被添加到审计基本规则中,如支付卡行业数据安全标准(PCI DSS)和操作系统保护配置文件(OSPP)。这通过监控特权区域中的配置变化来提高安全性,如sudoers

(BZ#1927884)

rsyslog 包含用于高性能操作和 CEF 的 mmfields 模块

rsyslog 现在包含 rsyslog-mmfields 子软件包,它提供 mmfields 模块。这是使用 property replacer 字段提取的替代方式,但与 property replacer 不同,所有字段都会一次性提取,并存储在结构化数据部分中。因此,对于处理基于字段的日志格式,您可以专门使用 mmfields ,如通用事件格式(CEF),并且如果您需要大量字段或重复使用特定字段,也可以使用 mmfields。在这些情况下,mmfields 的性能优于现有的 Rsyslog 功能。

(BZ#1947907)

libcap rebase 到版本 2.48

libcap 软件包已升级到上游版本 2.48,它提供很多对之前版本的程序错误修复和增强,最重要的是:

  • 用于 POSIX 语义系统调用的帮助程序库(libpsx)
  • 支持覆盖系统调用功能
  • 能力集的 IAB 抽象
  • 其他 capsh 测试功能

(BZ#2032813)

fapolicyd rebase 到 1.1

fapolicyd 软件包已升级至上游版本 1.1,其包括很多改进和程序错误修复。最显著的变化包括:

  • 包含允许和拒绝执行规则的文件的 /etc/fapolicyd/rules.d/ 目录替代了 /etc/fapolicyd/fapolicyd.rules 文件。fagenrules 脚本现在将此目录中的所有组件规则文件合并到 /etc/fapolicyd/compiled.rules 文件。详情请查看新的 fagenrules(8) 手册页。
  • 除了用于将 RPM 数据库之外的文件标记为可信的 /etc/fapolicyd/fapolicyd.trust 文件外,您现在可以使用新的 /etc/fapolicyd/trust.d 目录,它支持将可信文件列表分成多个文件。您还可以通过使用 fapolicyd-cli -f 子命令及 --trust-file 指令,为这些文件添加一个文件项。如需更多信息,请参阅 fapolicyd-cli(1)fapolicyd.trust(13) 手册页。
  • fapolicyd 信任数据库现在支持文件名中的空格。
  • 现在,当将文件添加到信任数据库时,fapolicyd 会保存可执行文件的正确路径。

(BZ#1939379)

libseccomp rebase 到 2.5.2

libseccomp 软件包已 rebase 到上游版本 2.5.2。此版本提供程序错误修正和增强,最重要的是:

  • 将 Linux 的 syscall 表更新到版本 v5.14-rc7
  • get_notify_fd() 函数添加到 Python 绑定,来获取通知文件描述符。
  • 将所有架构的多路系统调用处理整合到一个位置。
  • 向 PowerPC(PPC)和 MIPS 架构添加了多路系统调用支持。
  • 更改了内核中 SECCOMP_IOCTL_NOTIF_ID_VALID 操作的含义。
  • 更改了 libseccomp 文件描述符通知逻辑,以支持内核之前和现在对 SECCOMP_IOCTL_NOTIF_ID_VALID 的新使用。

(BZ#2019893)

4.8. 网络

CleanUpModulesOnExit firewalld 全局配置选项现在可用

在以前的版本中,当重启或关闭 firewalld 时,firewalld 会递归卸载内核模块。因此,尝试使用这些模块或依赖模块的其他软件包会失败。有了这个升级,用户可以将 CleanUpModulesOnExit 选项设为 no 来阻止 firewalld 卸载这些内核模块。

(BZ#1980206)

恢复大型 nftables 集需要较少的内存

有了这个更新,当您恢复大型集合时,nftables 框架需要较少的内存。准备 netlink 消息的算法已被改进,因此恢复一个集合可以使用最多 40% 的内存。

(BZ#2047821)

nmstate API 现在支持 OVS-DPDK

此增强将 Open vSwitch(OVS)数据平面开发套件(DPDK)的模式添加到 nmstate API 中。因此,您可以使用 nmstate 来配置带有 DPDK 端口的 OVS 设备。

(BZ#2003976)

nmstate API 现在支持 SR-IOV 虚拟功能中的 VLAN 和 QoS ID

这个更新增强了 nmstate API,支持本地局域网(VLAN)和单独 root I/O 虚拟化(SR-IOV)虚拟功能中的服务质量(QoS)。因此,您可以使用 nmstate 来配置这些功能。

(BZ#2004006)

NetworkManager rebase 到版本 1.36.0

NetworkManager 软件包已升级到上游版本 1.36.0,它提供很多对之前版本的改进和程序错误修复:

  • 对第 3 层配置的处理进行了重做,以提高稳定性、性能和内存使用率。
  • NetworkManager 现在支持 IBM Z 平台上的 rd.znet_ifnames 内核命令行选项。
  • 添加了 blackholeunreachableprohibit 路由类型。
  • NetworkManager 现在会忽略由路由服务管理的路由。
  • 在生成等号(SAE)密码元素的同时认证时,通过启用 hash-to-element(H2E)方法,改进了 Wi-Fi Protected Access 版本 3(WPA3)网络安全。
  • 该服务现在可以正确处理发送重复地址或掩码选项的 DHCP 服务器的回复。
  • 现在,您可以关闭网桥上的 MAC 过期。
  • NetworkManager 不再侦听针对流量控制对象的 netlink 事件,如 qdiscsfilters
  • 网络绑定现在支持为绑定端口设置队列 ID。

如需了解更多与显著变化相关的信息,请参阅上游发行注记:

(BZ#1996617)

hostapd 软件包已添加到 RHEL 8.6 中

在这个版本中,RHEL 提供了 hostapd 软件包。但是,红帽支持 hostapd 只用来在以太网网络中将 RHEL 主机设置为 802.1X 验证器。对 Wi-Fi 网络中的 Wi-Fi 接入点或验证器等其他场景不支持。

有关将 RHEL 配置为带有 FreeRADIUS 后端的 802.1X 身份验证程序的详情,请参阅 使用带有 FreeRADIUS 后端的 hostapd 为 LAN 客户端设置 802.1x 网络身份验证服务

(BZ#2016946)

NetworkManager 现在支持在 OVS-DPDK 接口上设置接收队列的数量(rx_queue)

借助此增强,您可以使用 NetworkManager 来配置 Open vSwitch(OVS)数据平面开发套件(DPDK)接口的 n_rxq 设置。使用 NetworkManager 中的 ovs-dpdk.n-rxq 属性来设置 OVS-DPDK 接口上接收队列的数量。

例如,要在名为 ovs-iface0 的 OVS 接口中配置 2 个接收队列,请输入:

# nmcli connection modify ovs-iface0 ovs-dpdk.nrxq 2

(BZ#2001563)

nftables 框架现在支持带有附加计数器的 nft 设置元素

在以前的版本中,在 netfilter 框架中不支持 nftables 设置计数器。nftables 框架可通过 nft 工具配置。内核允许此工具使用语句 add @myset {ip saddr counter} 计算来自给定源地址的网络数据包。有了这个更新,您可以使用带有附加计数器的动态集合和元素来计算与特定条件匹配的数据包。

(BZ#1983635)

nispor 软件包现在被完全支持

以前作为技术预览提供的 nispor 软件包现在被完全支持。此增强添加了对 NetStateFilter 的支持,以便在网络路由和接口上使用内核过滤器。

有了此版本,nispor 软件包单根输入和输出虚拟化(SR-IOV)接口可以查询每个(VF)的 SR-IOV 虚拟功能(SR-IOV VF)信息,支持新的绑定选项:lacp_activearp_missed_maxns_ip6_target

(BZ#1848817)

4.9. 内核

RHEL 8.6 中的内核版本

Red Hat Enterprise Linux 8.6 与内核版本 4.18.0-372 一起发布。

另请参阅 外部内核参数的重要变化 以及 设备驱动程序

BZ#1839151

RHEL 8.6 的扩展 Berkeley Packet 过滤器

Extended Berkeley Packet Filter(eBPF) 是一个内核中的虚拟机,允许在可访问有限功能的受限沙箱环境中在内核空间中执行代码。虚拟机执行类特殊的装配代码。

eBPF 字节码首先加载到内核,然后进行验证,通过即时编译到原生机器代码转换,然后虚拟机执行代码。

红帽提供大量使用 eBPF 虚拟机的组件。每个组件处于不同的开发阶段,因此目前并不完全支持所有组件。在 RHEL 8.6 中,支持以下 eBPF 组件:

  • The BPF Compiler Collection (BCC)工具软件包,提供用于使用 eBPF 的 I/O 分析、联网和监控 Linux 操作系统的工具。
  • BCC 库,它允许开发与 BCC 工具软件包中相似的工具。
  • eBPF for Traffic Control(tc) 功能,可在内核网络数据路径中启用可编程数据包处理。
  • bpftrace 追踪语言
  • eXpress Data Path(XDP)功能在内核网络堆栈处理它们前提供对接收的数据包的访问,在特定情况下被支持。如需更多信息,请参阅 XDP 被有条件支持 以及 RHEL 中网络 eBPF 功能概述
  • libbpf 软件包对于 bpf 相关应用程序(如 bpftracebpf/xdp 开发)至关重要。
  • xdp-tools 软件包包含 XDP 特性的用户空间支持工具,现在在 AMD 和 Intel 64 位构架中被支持。这包括 libxdp 库、加载 XDP 程序的 xdp-loader 实用程序、用户数据包过滤的 xdp-filter 示例程序、用于从启用了 XDP 的网络接口捕获数据包的 xdpdump 工具程序。

请注意,所有其他 eBPF 组件都作为技术预览提供,除非有特定的组件被显示为受支持。

以下显著的 eBPF 组件当前作为技术预览提供:

  • 用于连接eXpress Data Path (XDP) 路径到用户空间的AF_XDP 套接字

如需有关技术预览组件的更多信息,请参阅 eBPF 作为技术预览

(BZ#1780124)

默认情况下,Red Hat 在所有 RHEL 版本中为特权用户启用 eBPF

扩展的 Berkeley 数据包过滤器(eBPF)是一个复杂的技术,其允许用户在 Linux 内核中执行自定义代码。由于其性质,eBPF 代码需要通过验证器和其他安全机制。存在常见的漏洞和暴露(CVE)实例,其中代码中的 bug 可能会被误用于未经授权的操作。为了减少这种风险,红帽默认在所有 RHEL 版本中只为特权用户启用 eBPF。可以使用 kernel.command-line 参数 unprivileged_bpf_disabled=0 为非特权用户启用 eBPF

但请注意:

  • 应用 unprivileged_bpf_disabled=0 使您的内核不被红帽支持,并使您的系统面临安全风险。
  • 红帽鼓励您使用 CAP_BPF 功能对待进程,就如同该功能等于 CAP_SYS_ADMIN 一样。
  • 设置 unprivileged_bpf_disabled=0 不足以由非特权用户执行许多 BPF 程序,因为大多数 BPF 程序类型的加载需要额外的功能(通常为 CAP_SYS_ADMINCAP_PERFMON)。

有关如何应用内核命令行参数的详情,请参考 配置内核命令行参数

(BZ#2089409)

在 RHEL 8 中添加了 osnoisetimerlat 追踪器

osnoise 追踪器测量操作系统噪声。也就是说,由操作系统和硬件中断而引起的应用程序中断。它还提供一组追踪点来帮助查找操作系统噪声的来源。timerlat 追踪器可测量偏离延迟,并帮助识别此类实时(RT)线程延迟的原因。在 RT 计算中,延迟绝对是至关重要的,即使是最小的延迟也可能是有害的。osnoisetimerlat 追踪器允许您调查和发现 OS 干扰应用程序和 RT 线程唤醒延迟的原因。

(BZ#1979382)

strace 工具现在可以显示实际 SELinux 上下文与从 SELinux 上下文数据库提取的定义之间的不匹配

strace 的现有 --secontext 选项已使用 mismatch 参数进行了扩展 。这个参数可让您只打印预期的上下文以及实际不匹配的上下文。输出用双感叹号(!!)分隔,第一个是实际上下文,然后是预期上下文。在下面的示例中,full,mismatch 参数打印预期的完整上下文以及实际的上下文,因为上下文的用户部分不匹配。但是,在使用单独的 mismatch 时,它只检查上下文的类型部分。预期的上下文不会打印,因为上下文的类型部分匹配。

[...]
$ strace --secontext=full,mismatch -e statx stat /home/user/file
statx(AT_FDCWD, "/home/user/file" [system_u:object_r:user_home_t:s0!!unconfined_u:object_r:user_home_t:s0], ...

$ strace --secontext=mismatch -e statx stat /home/user/file
statx(AT_FDCWD, "/home/user/file" [user_home_t:s0], ...

SELinux 上下文不匹配通常会导致与 SELinux 相关的访问控制问题。系统调用 traces 中打印的不匹配可显著加快 SELinux 上下文正确性的检查。系统调用 traces 也可以解释有关访问控制检查的特定内核行为。

(BZ#2038992,BZ#2038810)

--cyclictest-threshold 选项已添加到 rteval 工具

有了这个增强,--cyclictest-threshold=USEC 选项已添加到 rteval 测试套件中。您可以使用这个选项指定阈值。如果任何延迟测量超过这个阈值,则 rteval 测试会立即结束。当不满足延迟预期时,则运行会以失败状态中止。

(BZ#2012285)

4.10. 文件系统和存储

RHEL 8.6 与 RHEL 9 XFS 镜像兼容

有了这个更新,RHEL 8.6 现在可以使用 RHEL 9 XFS 镜像。RHEL 9 XFS 客户机镜像必须在磁盘上具有 bigtime 和 inode btree 计数器(inobtcount)功能,才能挂载 RHEL 8.6 的客户机镜像。请注意,使用 bigtimeinobtcount 功能创建的文件系统与 RHEL 8.6 之前的版本不兼容。

(BZ#2022903, BZ#2024201)

Samba 工具中的选项已被重命名和删除,以获得一致的用户体验

Samba 工具已被改进,来提供一致的命令行界面。这些改进包括重命名和删除的选项。因此,为了避免更新后出现问题,请查看使用 Samba 工具的脚本,并在需要时更新它们。

Samba 4.15 在 Samba 工具中引进了以下更改:

  • 在以前的版本中,Samba 命令行工具会悄悄忽略未知选项。为防止意外行为,工具现在一致拒绝未知选项。
  • 现在,几个命令行选项有一个对应的 smb.conf 变量来控制它们的默认值。请参阅工具的手册页来识别命令行选项是否有 smb.conf 变量名。
  • 默认情况下,Samba 工具现在记录到标准错误(stderr)。使用 --debug-stdout 选项来更改此行为。
  • --client-protection=off|sign|encrypt 选项已添加到通用解析程序中。
  • 以下选项已在所有工具中进行了重命名:

    • --Kerberos 变为 --use-kerberos=required|desired|off
    • --krb5-ccache 变为 --use-krb5-ccache=CCACHE
    • --scope 变为 --netbios-scope=SCOPE
    • --use-ccache 变为 --use-winbind-ccache
  • 以下选项已从所有工具中删除:

    • -e--encrypt
    • --use-winbind-ccache 中删除了 -c
    • --netbios-scope 中删除了 -i
    • -S--signing
  • 要避免重复选项,某些选项已从以下工具中删除或重命名了:

    • ndrdump:-l 对于 --load-dso 不再可用
    • net:-l 对于 --long 不再可用
    • sharesec:-V 对于 --viewsddl 不再可用
    • smbcquotas:--user 已重命名为 --quota-user
    • nmbd:--log-stdout 已重命名为 --debug-stdout
    • smbd:--log-stdout 已重命名为 --debug-stdout
    • winbindd:--log-stdout 已重命名为 --debug-stdout

(BZ#2062117)

编译器屏障更改为静态内联函数 compiler_barrier ,以避免名称与函数指针冲突

此增强为潜在的数据崩溃 bug 提供了额外的功能和补丁。编译器屏障现在设为静态内联函数 compiler_barrier。在使用函数指针过程中,当为非临时的 memcpy 变体实现硬件隔离时,没有名称与硬件存储屏障冲突。因此,RHEL 8.6 现在包含 pmdk 版本 1.11.1。

(BZ#2009889)

4.11. 高可用性和集群

pcmk_delay_base 参数现在可以为不同的节点使用不同的值

在配置隔离设备时,您现在可以使用 pcmk_delay_base 参数 为不同的节点指定不同的值。这允许在双节点集群中使用单个隔离设备,每个节点有不同的延迟。这有助于防止每个节点同时尝试隔离其他节点的情况。要为不同的节点指定不同的值,您可以使用与 pcmk_host_map 类似的语法将主机名映射为该节点的延迟值。例如,在隔离 node1 时,node1:0;node2:10s 将不会使用延迟,在隔离 node2 时,会有 10 秒的延迟 。

(BZ#1082146)

指定在资源移动后自动移除位置约束

当您执行 pcs resource move 命令时,这会为资源添加一个约束,以防止其在当前运行的节点上运行。现在完全支持以前作为技术预览提供的 pcs resource move 命令的新 --autodelete 选项。当您指定这个选项时,命令创建的位置约束会在资源移动后自动删除。

(BZ#1990784)

内部错误的详细 Pacemaker 状态显示

如果由于某种原因,Pacemaker 无法执行资源或隔离代理,例如没有安装代理,或者有一个内部超时,Pacemaker 状态现在会显示内部错误的详细退出原因。

(BZ#1470834)

支持 pcmk_host_map 值中的特殊字符

pcmk_host_map 属性现在在值前面使用反斜杠(\)来支持 pcmk_host_map 值中的特殊字符。例如,您可以指定 pcmk_host_map="node3:plug\ 1",来在主机别名中包含一个空格。

(BZ#1376538)

pcs 支持 OCF Resource Agent API 1.1 标准

pcs 命令行界面现在支持 OCF 1.1 资源和 STONITH 代理。OCF 1.1 代理的元数据必须符合 OCF 1.1 模式。如果 OCF 1.1 代理的元数据不符合 OCF 1.1 模式,pcs 会认为代理无效,将不会创建或更新代理的资源,除非指定了 --force 选项。用于列出代理的 pcsd Web UI 和 pcs 命令会从列表中忽略带有无效元数据的 OCF 1.1 代理。

声明实现除 1.1 以外的任何 OCF 版本或根本就不声明版本的 OCF 代理,会根据 OCF 1.0 模式进行验证。验证问题会以警告的形式报告,但对于那些代理而言,不需要在创建或更新代理资源时指定 --force 选项。

(BZ#1936833)

OpenShift 的新隔离代理

fence_kubevirt 隔离代理现在可用于 Red Hat OpenShift Virtualization 上的 RHEL 高可用性。有关 fence_kubevirt 代理的详情,请查看 fence_kubevirt(8)手册页。

(BZ#1977588)

4.12. 动态编程语言、网页和数据库服务器

新模块流:php:8.0

RHEL 8.6 添加了 PHP 8.0,相对于以前版本 7.4 ,它提供了很多程序错误修复和增强。

主要改进包括:

  • 新的命名参数是独立于顺序且自我记录的参数,并可让您只指定所需的参数。
  • 新的属性允许您将结构化元数据与 PHP 的原生语法搭配使用。
  • 新的 union 类型可让您使用在运行时验证的原生 union 类型声明,而不是运行时验证的 PHPDoc 注解。
  • 现在,如果参数验证失败,内部功能会更加一致地引发 Error 异常而不是警告。
  • Just-In-Time 编译提高了性能。
  • PHP 的 Xdebug 调试和生产力扩展已更新至版本 3。与 Xdebug 2 相比,这个版本对功能和配置进行了重大更改。

要安装 php:8.0 模块流,请使用:

# yum module install php:8.0

如果要从 php:7.4 流升级,请参阅 切换到后续流

有关 RHEL 8 上 PHP 用法的详情,请参阅 使用 PHP 脚本语言

(BZ#1978356, BZ#2027285)

新模块流:perl:5.32

RHEL 8.6 引入了 Perl 5.32,相对于 RHEL 8.3 中的 Perl 5.30 ,它提供了很多程序错误修复和增强。

主要改进包括:

  • Perl 现在支持 unicode 版本 13.0。
  • qr qoute 型运算符已被改进。
  • POSIX::mblen(), mbtowc, 和 wctomb 功能现在可以在转换状态区域上工作,在 C99 上执行 thread-safe on C99,在具有 locale thread-safety 的平台上执行,长度参数现在是可选的。
  • 新的实验性 isa infix 操作符用于测试一个给定的对象是一个给定类的实例,还是从其中衍生出来的类。
  • alpha assertions 不再是实验性。
  • 脚本运行不再是实验性的。
  • 功能检查现在可以更快。
  • 现在,Perl 可以在优化前转储编译的模式。

要从以前的 perl 模块流升级,请参阅 切换到更新的流

(BZ#2021471)

新软件包:nginx-mod-devel

新的 nginx-mod-devel 软件包已添加到 nginx:1.20 模块流中。软件包提供所有必要的文件,包括 RPM 宏和 nginx 源代码,用于构建 nginx 的外部动态模块。

(BZ#1991787)

MariaDB Galera 现在包含 garbd systemd 服务的一个上游版本和一个 wrapper 脚本

RHEL 8 中的 MariaDB 10.3 和 MariaDB 10.5 分别包括/usr/lib/systemd/system/garbd.service/usr/sbin/garbd-wrapper 文件中 garbd systemd 服务的红帽版本以及 galera 软件包的 wrapper 脚本。

除了这些文件的红帽版本外,RHEL 8 现在还提供一个上游版本。上游文件位于 /usr/share/doc/galera/garb-systemd/usr/share/doc/galera/garbd.service

RHEL 9 只提供这些文件的上游版本,位于 /usr/lib/systemd/system/garbd.service/usr/sbin/garb-systemd

(BZ#2042306, BZ#2042298, BZ#2050543, BZ#2050546)

4.13. 编译器和开发工具

用于捕获 glibc 优化数据的新命令

新的 ld.so --list-diagnostics 命令可以捕获影响 glibc 优化决策的数据,如在一个机器可读的文件中的 IFUNC 选择和 glibc-hwcaps 配置。

(BZ#2023420)

glibc 字符串功能现在针对 Fujitsu A64FX 进行了优化

有了这个更新,glibc 字符串功能在 A64FX CPU 上展现了增加了吞吐量并减少了延迟。

(BZ#1929928)

新的具有 12 小时时钟的 UTF-8 区域设置 en_US@ampm

有了这个更新,您现在可以使用一个新的具有 12 小时时钟的 UTF-8 区域设置 en_US@ampm。这种新的区域设置可使用 LC_TIME 环境变量与其他区域设置相结合。

(BZ#2000374)

libffi 的自修改代码的新位置

有了这个更新,libffi 的自修改代码利用 RHEL 8 内核中的功能来创建独立于任何文件系统的适合的文件。因此,libffi 的自修改代码不再依赖于使部分文件系统不安全。

(BZ#1875340)

更新了 GCC Toolset 11

GCC Toolset 11 是一个编译器工具集,提供开发工具的最新版本。它在 AppStream 存储库中以软件集合的形式作为应用程序流提供。

RHEL 8.6 中引入的显著变化包括:

  • GCC 编译器已更新至版本 11.2.1 。
  • annobin 已更新至版本 10.23。

GCC 工具集 10 提供以下工具和版本:

工具版本

GCC

11.2.1

GDB

10.2

Valgrind

3.17.0

SystemTap

4.5

Dyninst

11.0.0

binutils

2.36.1

elfutils

0.185

dwz

0.14

make

4.3

strace

5.13

ltrace

0.7.91

annobin

10.23

要安装 GCC Toolset 11,请以 root 用户身份运行以下命令:

# yum install gcc-toolset-11

要从 GCC Toolset 11 运行工具:

$ scl enable gcc-toolset-11 tool

要运行一个 shell 会话,其中 GCC Toolset 11 的工具版本会覆盖这些工具的系统版本:

$ scl enable gcc-toolset-11 bash

有关用法的更多信息,请参阅使用 GCC Toolset

GCC Toolset 11 组件在两个容器镜像中提供:

  • rhel8/gcc-toolset-11-toolchain,其中包括 GCC 编译器、GDB 调试器和 make 自动化工具。
  • rhel8/gcc-toolset-11-perftools,其中包括性能监控工具,如 SystemTap 和 Valgrind。

要拉取容器镜像,以 root 身份运行以下命令:

# podman pull registry.redhat.io/<image_name>

请注意,现在只支持 GCC Toolset 11 容器镜像。之前 GCC Toolset 版本的容器镜像已弃用。

有关容器镜像的详情,请参阅 使用 GCC Toolset 容器镜像

(BZ#1996862)

GDB 反汇编器现在支持新的 arch14 指令

有了这个更新,GDB 能够反汇编新的 arch14 指令。

(BZ#2012818)

LLVM 工具集 rebase 到版本 13.0.1

LLVM 工具集 已升级到版本 13.0.1。主要变更包括:

  • clang 现在 C++ 中支持带有语句属性 [[clang::musttail]] 的保证尾部调用和 C 中带有__attribute__(musttail) 的保证尾部调用。
  • clang 现在支持 -Wreserved-identifier 警告,它会在代码中使用保留标识符时警告开发人员。
  • clang 的 -Wshadow 标志现在还检查影子结构的绑定。
  • clang 的 -Wextra 现在也暗指 Wnull-pointer-subtraction

(BZ#2001133)

Rust Toolset rebase 到 1.58.1

Rust Toolset 已 rebase 到版本 1.58.1。主要变更包括:

  • Rust 编译器现在支持语言的 2021 版,其特点是闭包中的分离捕获、用于数组的 IntoIterator 、一个新的 Cargo 功能解析器等等。
  • 添加了对新自定义配置文件的 Cargo 支持。
  • Cargo 去掉了重复的编译器错误。
  • 添加了新的开放范围模式。
  • 以格式字符串形式添加了捕获的标识符。

如需更多信息,请参阅:

(BZ#2002883)

Go Toolset 已 rebase 到版本 1.17.7

Go Toolset 已升级至 1.17.7 版本。主要变更包括:

  • 添加了一个选项,来将切片转换为数组指针。
  • 添加了对 //go:build 行的支持。
  • 对 amd64 上功能调用性能的改进。
  • 函数参数在堆栈跟踪中被格式化得更清晰。
  • 包含闭包的函数可以被内联。
  • 在 x509 证书解析中减少了资源消耗。

(BZ#2014088)

pcp rebase 到 5.3.5

pcp 软件包已 rebase 到版本 5.3.5 。主要变更包括:

  • 为 CPU 和磁盘饱和添加了新的 pmieconf(1) 规则。
  • 提高了 pmproxy(1) 服务的稳定性和可扩展性。
  • 提高了 pmlogger(1) 服务的服务延迟和健壮性。
  • 添加了与电源相关的新性能指标。
  • pcp-htop(1) 工具中添加了新功能。
  • pcp-atop(1) 工具中添加了新功能。
  • 更新了 Nvidia GPU 指标。
  • 添加了新的 Linux 内核 KVM 和网络指标。
  • 添加了一个新的 MongoDB 指标代理。
  • 添加了一个新的套接字指标代理和 pcp-ss(1) 工具。
  • 默认情况下,禁用了 pmcd(1)pmproxy(1) Avahi 服务广告。

(BZ#1991763)

grafana 软件包 rebase 到版本 7.5.11

grafana 软件包已 rebase 到版本 7.5.11。主要变更包括:

  • 添加了一个新的 准备时间序列 转换,用于向后兼容不支持新数据帧格式的面板。

(BZ#1993214)

grafana-pcp rebase 到 3.2.0

grafana-pcp 软件包已 rebase 到版本 3.2.0。主要变更包括:

  • 为 PCP Redis 添加了一个新的 MS SQL 服务器仪表盘。
  • 在 PCP Vector eBPF/BCC Overview 仪表盘中添加了空直方存储桶。
  • 修复了 PCP Redis 的 metric() 函数没有返回所有指标名称的错误。

(BZ#1993149)

js-d3-flame-graph rebase 到 4.0.7

js-d3-flame-graph 软件包已 rebase 到版本 4.0.7。主要变更包括:

  • 添加了新的蓝色和绿色配色方案。
  • 添加了显示火焰图上下文的功能。

(BZ#1993194)

现在在 PCP 中提供功耗指标

新的 pmda-denki 性能指标域代理(PMDA)报告与功耗相关的指标。具体来说,它报告:

  • 基于运行平均功率限制(RAPL)读数的消耗指标,在最近的Intel CPU 上提供
  • 基于电池放电的消耗指标,在配备电池的系统上提供

(BZ#1629455)

新模块:log4j:2

AppStream 存储库中现在提供一个新的 log4j:2 模块。此模块包含 Apache Log4j 2,它是一个 Java 日志记录工具,以及一个使您可以将日志语句输出到各种输出目标的库。

Log4j 2Log4j 1 提供更显著的改进。值得注意的是,Log4j 2Logback 框架引入了改进,并解决了 Logback 架构中的一些固有问题。

要安装 log4j:2 模块流,请使用:

# yum module install log4j:2

(BZ#1937468)

4.14. 身份管理

Ansible-freeipa 现在可在带有所有依赖项的 AppStream 存储库中

以前,在 RHEL 8 中,安装 ansible-freeipa 软件包之前,您必须首先启用 Ansible 存储库并安装 ansible 软件包。在 RHEL 8.6 和 RHEL 9 中,您可以安装 ansible-freeipa ,而不需要任何初步步骤。安装 ansible-freeipa 会自动安装 ansible-core 软件包,它是 ansible 的一个更基本的版本,作为一个依赖项。ansible-freeipaansible-core 都在 rhel-9-for-x86_64-appstream-rpms 存储库中提供。

RHEL 8.6 和 RHEL 9 中的 ansible-freeipa 包含了所有在 RHEL 8 中包含的模块。

(JIRA:RHELPLAN-100359)

IdM 现在支持 automountlocationautomountmapautomountkey Ansible 模块

有了这个更新,ansible-freeipa 软件包会包含 ipaautomountlocationipaautomountmapipaautomountkey 模块。您可以使用这些模块为登录到 IdM 位置的 IdM 客户端配置自动挂载的目录。请注意,目前只支持直接映射。

(JIRA:RHELPLAN-79161)

shadow-utils 中提供了管理 subID 范围的支持

在以前的版本中,shadow-utils 配置来自 /etc/subuid/etc/subgid 文件的 subID 范围。在这个版本中,/etc/nsswitch.conf 文件中提供了 subID 范围配置,方法是在 subid 字段中设置值。如需更多信息,请参阅 man subuidman subgid。另外,通过此次更新,shadow-utils 插件的 SSSD 实施可用,它提供来自 IPA 服务器的 subID 范围。要使用此功能,请将 subid: sss 值添加到 /etc/nsswitch.conf 文件。此解决方案在容器化环境中可能很有用,以促进无根容器。

请注意,如果 /etc/nsswitch.conf 文件由 authselect 工具配置,您必须遵循 authselect 文档中介绍的步骤。否则,您可以手动修改 /etc/nsswitch.conf 文件。

(JIRA:RHELPLAN-103579)

传统的 RHEL ansible-freeipa 软件仓库的替代方案:Ansible Automation Hub

有了这个更新,您可以从 Ansible Automation Hub(AAH)下载 ansible-freeipa 模块,而不是从标准的 RHEL 存储库下载它们。通过使用 AAH,您可以从此存储库中 ansible-freeipa 模块的快速更新中受益。

在 AAH 中,ansible-freeipa 角色和模块以集合的形式发布。请注意,您需要 Ansible Automation Platform(AAP)订阅来访问 AAH 门户中的内容。您还需要 ansible 版本 2.9 或更高版本。

redhat.rhel_idm 集合与传统的 ansible-freeipa 软件包具有相同的内容。但是,集合形式使用完全限定的集合名称(FQCN),其中包含一个命名空间和集合名称。例如,redhat.rhel_idm.ipadnsconfig 模块对应于 RHEL 存储库提供的 ansible-freeipa 中的 ipadnsconfig 模块。命名空间和集合名称的组合可确保对象是唯一的,并可无冲突地共享。

(JIRA:RHELPLAN-103147)

Ansible-freeipa 模块现在可以在 IdM 客户端上远程执行

在以前的版本中,ansible-freeipa 模块只能在 IdM 服务器上执行。这要求您的 Ansible 管理员具有对 IdM 服务器的 SSH 访问权限,从而导致潜在的安全威胁。有了这个更新,您可以在 IdM 客户端的系统上远程执行 ansible-freeipa 模块。因此,您可以以一个更加安全的方法管理 IdM 配置和实体。

要在 IdM 客户端上执行 ansible-freeipa 模块,请选择以下选项之一:

  • 对 IdM 客户端主机设置 playbook 的 hosts 变量。
  • ipa_context: client 行添加到使用 ansible-freeipa 模块的 playbook 任务中。

您还可将 ipa_context 变量设置为 IdM 服务器上的 client。但是,服务器上下文通常提供更好的性能。如果没有设置 ipa_contextansible-freeipa 会检查其是否在服务器或客户端上运行,并相应地设置上下文。请注意,在 IdM 客户端主机上执行将 context 设为 serveransible-freeipa 模块会导致 missing libraries 的错误。

(JIRA:RHELPLAN-103146)

ipadnsconfig 模块现在需要 action: member 来排除全局转发器

有了这个更新,使用 ansible-freeipa ipadnsconfig 模块在身份管理(IdM)中排除全局转发器除了需要state: absent 选项,还需要 action: member 选项。如果您在 playbook 中只使用 state: absent,而不使用 action: member,则 playbook 将失败。因此,要删除所有全局转发器,您必须在 playbook 中分别指定它们。相反,state: present 选项不需要 action: member

(BZ#2046325)

身份管理现在默认支持带有 RSA 签名的 SHA384

有了这个更新,IdM 中的证书颁发机构(CA)支持带有 RSA 加密签名算法的 SHA-384。带有 RSA 的 SHA384 符合联邦信息处理标准(FIPS)。

(BZ#1731484)

SSSD 默认的 SSH 散列值现在与 OpenSSH 设置保持一致

ssh_hash_known_hosts 的默认值已更改为 false。它现在与 OpenSSH 设置保持一致,默认情况下不对主机名进行哈希处理。

但是,如果您需要继续哈希主机名,请将 ssh_hash_known_hosts = True 添加到 /etc/sssd/sssd.conf 配置文件的 [ssh] 部分。

(BZ#2015070)

samba rebase 到版本 4.15.5

samba 软件包升级至上游版本 4.15.5,它提供了对之前版本的程序错误修复和增强:

在启动 Samba 前备份数据库文件。当 smbdnmbdwinbind 服务启动时,Samba 会自动更新其 tdb 数据库文件。请注意,红帽不支持降级 tdb 数据库文件。

更新 Samba 后,使用 testparm 工具验证 /etc/samba/smb.conf 文件。

有关显著变化的更多信息,请在更新前阅读 上游发行注记

(BZ#2013596)

目录服务器 rebase 到版本 1.4.3.28

389-ds-base 软件包已升级到上游版本 1.4.3,它提供了对于之前版本的很多程序错误修复和增强:

  • 修复了副本中的潜在死锁。
  • dnaInterval 设为 0 时,服务器不再意外终止。
  • 改进了连接处理的性能。
  • 改进了访问控制指令(ACI)中 targetfilter 的性能。

(BZ#2016014)

目录服务器现在在 tmpfs 文件系统上存储数据库的内存映射文件

在目录服务器中,nsslapd-db-home-directory 参数定义数据库内存映射文件的位置。此增强将参数的默认值从 /var/lib/dirsrv/slapd-instance_name/db/ 改为 /dev/shm/。因此,在 tmpfs 文件系统上存储内部数据库,目录服务器的性能就会提高。

(BZ#1780842)

4.15. Desktop

登录和桌面会话中的安全分类横幅

现在,您可以配置分类横幅,以说明系统的整体安全分类级别。对于用户必须了解登录的系统的安全分类级别的部署,这非常有用。

分类横幅可能出现在以下上下文中,具体取决于您的配置:

  • 在运行的会话中
  • 在锁屏上
  • 在登录屏幕上

分类横幅可以采用您可以撤销的通知或永久横幅的形式。

如需更多信息,请参阅 显示系统安全分类

(BZ#1751336)

4.16. 图形基础结构

现在支持 Intel Alder Lake-P GPU

此发行版本添加了对带有集成图形的 Intel Alder Lake-P CPU 微架构的支持。这包括在以下 CPU 型号中的 Intel UHD Graphics 和 Intel Xe 集成的 GPU:

  • Intel Core i7-1280P
  • Intel Core i7-1270P
  • Intel Core i7-1260P
  • Intel Core i5-1250P
  • Intel Core i5-1240P
  • Intel Core i3-1220P

在默认情况下,对 Alder Lake-P 图形的支持被禁用。要启用它,在内核命令行中添加以下选项:

i915.force_probe=PCI_ID

PCI_ID 替换为 Intel GPU 的 PCI 设备 ID,或替换为 * 字符,以启用对使用 i915 驱动程序的所有 alpha-quality 硬件的支持。

(BZ#1964761)

4.17. Web 控制台

通过 web 控制台为 sudo 和 SSH 进行智能卡验证

在以前的版本中,无法使用智能卡验证来获取 sudo 权限或在 web 控制台中使用 SSH。在这个版本中,身份管理用户可以使用智能卡获得 sudo 权限,或者使用 SSH 连接到其他主机。

注意

只能使用一个智能卡进行验证并获得 sudo 权限。不支持对 sudo 使用单独的智能卡。

(JIRA:RHELPLAN-95126)

RHEL web 控制台默认提供 Insights 注册

有了这个更新,当您使用 Red Hat Enterprise Linux web 控制台来注册 RHEL 系统时,默认勾选 Connect this system to Red Hat Insights. 复选框。如果您不想连接到 Insights 服务,请取消选勾选。

(BZ#2049441)

Cockpit 现在支持使用现有的 TLS 证书

有了这个增强,证书不再需要像 root:cockpit-ws 0640 那样严格的文件权限要求,因此可与其他服务共享。

(JIRA:RHELPLAN-103855)

4.18. Red Hat Enterprise Linux System Roles

RHEL 8 中已添加了防火墙 RHEL 系统角色

rhel-system-roles.firewall RHEL 系统角色已添加到 rhel-system-roles 软件包中。因此,管理员可以为受管节点自动执行其防火墙设置。

(BZ#1854988)

全面支持 HA 集群 RHEL 系统角色

之前作为技术预览提供的高可用性集群(HA Cluster)角色现在全面支持。以下是值得注意的配置:

  • 配置隔离设备、资源、资源组和包括元数据属性和资源操作的资源克隆
  • 配置资源位置约束、资源托管约束、资源顺序约束和资源票据约束
  • 配置集群属性
  • 配置集群节点、自定义集群名称和节点名称
  • 配置多链接集群
  • 配置集群在引导时是否自动启动

运行该角色会删除会删除角色不支持或者运行角色时未指定的任何配置。

HA 集群角色目前不支持 SBD。

(BZ#1893743)

网络系统角色现在支持 OWE

机会式无线加密(OWE)是 Wi-Fi 网络的一种机会式安全模式,其提供无线介质的加密,但无身份验证(如公共热点)。OWE 在 Wi-Fi 客户端和访问点之间使用加密,防止它们被嗅探攻击。有了这个增强,网络 RHEL 系统角色可支持 OWE。现在,管理员可以使用网络系统角色来配置连接到使用 OWE 的 Wi-Fi 网络。

(BZ#1993379)

网络系统角色现在支持 SAE

在 Wi-Fi 保护的访问版本 3(WPA3)网络中,等同(SAE)方法的同步身份验证可确保不会传输加密密钥。有了这个增强,网络 RHEL 系统角色可支持 SAE 。现在,管理员可以使用网络系统角色来配置连接到使用 WPA-SAE 的 Wi-Fi 网络。

(BZ#1993311)

现在支持 Cockpit RHEL 系统角色

有了这个增强,您可以在系统中安装和配置 web 控制台。因此,您可以自动的方式管理 Web 控制台。

(BZ#2021661)

为 LVM 卷添加对 raid_level 的支持

存储 RHEL 系统角色现在可以为 LVM 卷指定 raid_level 参数。因此,可使用 lvmraid 功能将 LVM 卷分组为 RAID。

(BZ#2016514)

NBDE 客户端系统角色支持具有静态 IP 地址的系统

在以前的版本中,重启具有静态 IP 地址的系统,并使用 NBDE 客户端系统角色配置系统将会改变系统的 IP 地址。有了这个更改,NBDE 客户端系统角色支持具有静态 IP 地址的系统,并且重启后系统的 IP 地址不会改变。

(BZ#1985022)

Storage 系统角色中提供了对缓存卷的支持

Storage RHEL 系统角色现在可以创建和管理缓存的 LVM 逻辑卷。LVM 缓存可用于通过在较小的、更快速的设备上(如 SSD)临时存储 LV 数据的子集来提高较慢的逻辑卷的性能。

(BZ#2016511)

支持添加 Elasticsearch 用户名和密码用于从 rsyslog进行身份验证

这个更新对logging 系统角色添加了 Elasticsearch 用户名和密码参数,以便 rsyslog 可以使用用户名和密码对 Elasticsearch 进行身份验证。

(BZ#2010327)

RHEL 系统角色的 Ansible Core 支持

在 RHEL 8.6 GA 发行版中,提供了 Ansible Core,它的支持范围有限,以便启用 RHEL 支持的自动化用例。Ansible Core 替换了之前在其它存储库中提供的 Ansible Engine。Ansible Core 在 RHEL 的 AppStream 存储库中提供。有关支持的用例的详情,请参阅 包含在 RHEL 9 和 RHEL 8.6 中以及之后的 AppStream 存储库中的 Ansible 核心软件包的支持范围。用户必须手动将他们的系统从 Ansible Engine 迁移到 Ansible Core。

详情请参阅在 RHEL 8.6 及之后的版本中使用 Ansible

(BZ#2012316)

network RHEL 系统角色现在支持静态路由中的 命名数字 路由表。

这个更新添加了对静态路由中 命名数字 路由表的支持,这是支持策略路由(如源路由)的先决条件。用户稍后可以定义策略路由规则,以指示系统用哪个表来确定正确的路由。因此,用户在 路由 中指定 table 属性后,系统就可以将路由添加到路由表中。

(BZ#2031521)

证书角色在其 hook 脚本中统一使用 "Ansible_managed" 注释

有了这个增强,证书角色会生成前脚本和后脚本来支持提供者,该角色会使用 Ansible 标准的 "ansible_managed" 变量插入 "Ansible managed" 注释:

  • /etc/certmonger/pre-scripts/script_name.sh
  • /etc/certmonger/post-scripts/script_name.sh

注释表示不应直接编辑脚本文件,因为证书角色可以覆盖该文件。因此,配置文件包含一个声明,表示配置文件由 Ansible 管理。

(BZ#2054364)

终端会话记录系统角色在其管理的配置文件中使用"Ansible managed"注释

记录角色的终端会话会生成 2 个配置文件:

  • /etc/sssd/conf.d/sssd-session-recording.conf
  • /etc/tlog/tlog-rec-session.conf

有了这个更新,终端会话记录角色使用标准的 Ansible 变量 ansible_managedAnsible managed 注释插入到配置文件中。注释表示不应直接编辑配置文件,因为终端会话记录角色可以覆盖该文件。因此,配置文件包含一个声明,表示配置文件由 Ansible 管理。

(BZ#2054363)

Microsoft SQL 系统角色现在支持用于断开连接的自定义存储库或 Satellite 订阅

在以前的版本中,在断开连接的环境中,用户需要从自定义服务器拉取软件包或需要指向 Satellite 或 Capsule 的 Satellite 用户没有 Microsoft SQL Role 的支持。这个更新修复了这个问题,允许用户提供一个自定义的 URL,用于 RPM 密钥、客户端服务器 mssql 存储库。如果没有提供 URL,mssql 角色将使用官方 Microsoft 服务器来下载 RPM。

(BZ#2038256)

Microsoft SQL 系统角色在其管理的配置文件中统一使用"Ansible_managed"注释

mssql 角色会生成以下配置文件:

  • /var/opt/mssql/mssql.conf

有了这个更新,Microsoft SQL 角色使用 Ansible 标准的 ansible_managed 变量将"Ansible managed"注释插入到配置文件中。注释指示不应直接编辑配置文件,因为 mssql 角色将覆盖该文件。因此,配置文件包含一个声明,表示配置文件由 Ansible 管理。

(BZ#2057651)

支持将所有绑定选项添加到网络系统角色

这个更新提供了将所有绑定选项添加到 Networking RHEL 系统角色的支持。因此,它可让您灵活地控制绑定接口上的网络传输。因此,您可以通过为该接口指定多个选项来控制绑定接口上的网络传输。

(BZ#2008931)

NetworkManager 支持使用其 PCI 地址指定网卡

在以前的版本中,在设置连接配置文件的过程中,只允许 NetworkManager 使用其名称或 MAC 地址来指定网卡。在本例中,设备名称不稳定,并且 MAC 地址需要清单来维护使用 MAC 地址的记录。现在,您可以根据连接配置文件中的 PCI 地址来指定网卡。

(BZ#1695634)

新的选项 auto_gateway 控制默认的路由行为

在以前的版本中,DEFROUTE 参数无法通过配置文件进行配置,只能通过命名每个路由来手动进行配置。这个更新在 ip 配置部分中为连接添加了一个新的 auto_gateway 选项,您可以使用它来控制默认的路由行为。您可以使用以下方法配置 auto_gateway

  • 如果设置为 true,则默认网关设置适用于默认路由。
  • 如果设置为 false,则删除默认路由。
  • 如果未指定,network 角色将使用所选 network_provider 的默认行为。

(BZ#1897565)

VPN 角色在其管理的配置文件中统一使用 Ansible_managed 注释

VPN 角色生成以下配置文件:

  • /etc/ipsec.d/mesh.conf
  • /etc/ipsec.d/policies/clear
  • /etc/ipsec.d/policies/private
  • /etc/ipsec.d/policies/private-or-clear

有了这个更新,VPN 角色使用 Ansible 标准的 ansible_managed 变量将 Ansible managed 注释插入到配置文件中。注释表示不应直接编辑配置文件,因为 VPN 角色可以覆盖该文件。因此,配置文件包含一个声明,表示配置文件由 Ansible 管理。

(BZ#2054365)

防火墙系统角色中的新 source 参数

现在,您可以使用防火墙系统角色的 source 参数在防火墙配置中添加或删除源。

(BZ#1932678)

网络系统角色现在在其管理的配置文件中使用"Ansible managed"注释

使用 initscripts 提供者时,网络系统角色现在会在 /etc/sysconfig/network-scripts 目录中生成已注释的 ifcfg 文件。Networking 角色使用 Ansible 标准的 ansible_managed 变量插入 Ansible managed 注释。注释声明 ifcfg 文件由 Ansible 管理,并且表示不应直接编辑 ifcfg 文件,因为网络角色将覆盖该文件。当提供者是 initscripts 时,会添加 Ansible managed 注释。当使用具有 nm (NetworkManager)提供者的网络角色时,ifcfg 文件是由 NetworkManager 管理的,而不是网络角色。

(BZ#2057656)

防火墙系统角色现在支持设置防火墙默认区

现在,您可以在防火墙系统角色中设置默认防火墙区。zones 代表一种更透明管理传入流量的概念。这些区域连接到联网接口或者分配一系列源地址。每个区的防火墙规则都可以独立管理,以使管理员能够定义复杂的防火墙设置,并将它们应用到流量上。此功能允许将默认区设为要分配接口的默认区,与 firewall-cmd --set-default-zone zone-name 一样。

(BZ#2022458)

指标系统角色现在在标头中生成带有正确的 ansible_managed 注释的文件

在以前的版本中,指标角色不会向角色生成的文件中添加 ansible_managed 标头注释。有了这个修复,指标角色会将 ansible_managed 标头注释添加到它生成的文件中 ,因此用户可以轻松地识别指标角色生成的文件。

(BZ#2057645)

Postfix 系统角色现在生成在标头中带有正确的 ansible_managed 注释的文件

在以前的版本中,Postfix 角色不会向角色生成的文件中添加 ansible_managed 标头注释。有了这个修复,Postfix 角色向它生成的文件中添加 ansible_managed 标头注释,因此,用户可以轻松地识别由 Postfix 角色生成的文件。

(BZ#2057661)

4.19. 虚拟化

现在 IBM Z 上的虚拟化 CLI 支持中介设备

使用 virt-installvirt-xml,您现在可以将中介设备附加到虚拟机(VM),如 vfio-ap 和 vfio-ccw。例如,这可以更灵活地管理 IBM Z 主机上的 DASD 存储设备和加密协处理器。另外,您可以使用 virt-install 创建一个使用现有 DASD 中介设备作为其主磁盘的虚拟机。有关这样做的说明,请参阅 RHEL 8 指南中的配置和管理虚拟化。

(BZ#1995125)

对 Intel Atom P59 系列处理器的虚拟化支持

有了这个更新,RHEL 8 上的虚拟化增加了对 Intel Atom P59 系列处理器的支持,该处理器之前被称为 Snow Ridge。因此,在 RHEL 8 上托管的虚拟机现在可以使用 Snowridge CPU 型号,并使用处理器提供的新功能。

(BZ#1662007)

现在完全支持 ESXi hypervisor 和 SEV-ES

现在,您可以启用 AMD Secure Encrypted Virtualization-Encrypted State(SEV-ES)来保护 VMware 的 ESXi hypervisor 版本 7.0.2 及更新版本上的 RHEL 虚拟机(VM)。此功能以前作为技术预览在 RHEL 8.4 中引入。它现已被全面支持。

(BZ#1904496)

支持 Windows 11 和 Windows Server 2022 客户机

RHEL 8 现在支持使用 Windows 11 和 Windows Server 2022 作为 KVM 虚拟机上的客户机操作系统。

(BZ#2036863, BZ#2004162)

4.20. 云环境中的 RHEL

RHEL 8 虚拟机现在在 Azure 上的某些 ARM64 主机上受支持

现在,在基于 Ampere Altra ARM 的处理器上运行的 Microsoft Azure 虚拟机监控程序上支持使用 RHEL 8.6 或更新版本的虚拟机。

(BZ#1949614)

cloud-init 的新 SSH 模块

在这个版本中,SSH 模块已添加到 cloud-init 工具中,它会在实例创建过程中自动生成主机密钥。

请注意,在这种更改时,默认的 cloud-init 配置已更新。因此,如果您有一个本地修改,请确保 /etc/cloud/cloud.cfg 包含 "ssh_genkeytypes: ['rsa', 'ecdsa', 'ed25519']"。

否则,cloud-init 会创建一个无法启动 sshd 服务的镜像。如果出现这种情况,请执行以下操作来解决这个问题:

  1. 确保 /etc/cloud/cloud.cfg 文件包含以下行:

    ssh_genkeytypes:  ['rsa', 'ecdsa', 'ed25519']
  2. 检查实例中是否存在 /etc/ssh/ssh_host_* 文件。
  3. 如果 /etc/ssh/ssh_host_* 文件不存在,请使用以下命令生成主机密钥:

    cloud-init single --name cc_ssh
  4. 重启 sshd 服务:

    systemctl restart sshd

(BZ#2115791)

cloud-init 支持 Microsoft Azure 上的用户数据

cloud-init 工具引进了 --user-data 选项。使用此选项时,当在 Azure 上设置 RHEL 8 虚拟机时,您可以传递来自 Azure 实例元数据服务(IMDS)的脚本和元数据。

(BZ#2023940)

cloud-init 支持 VMware GuestInfo 数据源

有了这个更新,cloud-init 工具能够读取 VMware guestinfo 数据的数据源。因此,使用 cloud-init 在 VMware vSphere 上设置 RHEL 8 虚拟机现在更为高效和可靠。

(BZ#2026587)

4.21. 支持性

新软件包: rig

RHEL 8 引入了 rig 软件包,它提供 rig 系统监控和事件处理工具。

rig 工具旨在帮助系统管理员和支持工程师收集诊断数据,以发现看似随机发生的问题,或在不适合人工干预的时侯所发生的问题。

(BZ#1888705)

sos 报告 现在提供了一个估算模式运行

这个 sos 报告 更新添加了 --estimate-only 选项,您可以使用它来估算从 RHEL 服务器收集 sos 报告所需的磁盘空间。运行 sos report --estimate-only 命令:

  • sos 报告 执行一个试运行
  • 连续地模拟所有插件,并估计其磁盘大小。

请注意,最终的磁盘空间估计是非常近似的。因此,建议您将估计值加倍。

(BZ#1873185)

红帽支持工具 现在使用 Hydra API

红帽支持工具 已从弃用的 Strata API 移到新的 Hydra API。这不会影响功能。但是,如果您已将防火墙配置为只明确允许 Strata API /rs/ 路径,请将其更新为 /support/,以确保防火墙能正常工作。

另外,由于这个变化,现在您可以使用 红帽支持工具 下载超过 5 GB 的文件。

(BZ#2018194)

红帽支持工具 现在支持 Red Hat Secure FTP

使用 红帽支持工具 时,您现在可以通过 Red Hat Secure FTP 将文件上传到案例。Red Hat Secure FTP红帽支持工具 在之前的版本中支持的已弃用的 Dropbox 工具的更安全的替代品。

(BZ#2018195)

红帽支持工具 现在支持 S3 API

红帽支持工具 现在使用 S3 API 将文件上传到红帽技术支持案例中。因此,用户可以将大于 1 GB 的文件直接上传到案例中。

(BZ#1767195)

4.22. 容器

container-tools:4.0 稳定流现在可用

container-tools:4.0 稳定模块流现在可用,其中包括 Podman、Buildah、Skopeo 和 runc 工具。与之前的版本相比,这个版本提供了程序错误修正和增强。

有关如何从早期的流升级的说明,请参阅 切换到更新的流

(JIRA:RHELPLAN-100175)

NFS 存储现在可用

现在,如果您的文件系统支持 xattr,则可以使用 NFS 文件系统作为容器和镜像的后端存储。

(JIRA:RHELPLAN-75169)

container-tools:rhel8 模块已更新

container-tools:rhel8 模块现在可用,其中包括 Podman、Buildah、Skopeo、crun 和 runc 工具。与之前的版本相比,这个更新提供了 bug 修复和增强的列表。

主要变更包括:

  • 由于网络堆栈的变化,由 Podman v3 及更早版本创建的容器在 v4.0 中不可用
  • 原生覆盖文件系统可作为无根用户使用
  • 支持容器中的 NFS 存储
  • 除非所有容器被销毁且重新创建了,否则不支持降级到早期的 Podman 版本

Podman 工具已升级至 4.0 版本,要了解有关显著变化的更多信息,请参阅 上游发行注记

(JIRA:RHELPLAN-100174)

通用基础镜像现在在 Docker Hub 上提供

在以前的版本中,通用基础镜像只在 Red Hat 容器目录中提供。有了这个更新,通用基础镜像也在 Docker Hub 中作为 经验证的发布者镜像 提供。

(JIRA:RHELPLAN-101137)

podman 容器镜像现在可用

registry.redhat.io/rhel8/podman 容器镜像以前作为技术预览提供,现在全面支持。registry.redhat.io/rhel8/podman 容器镜像是 podman 软件包的一个容器化实施。podman 工具管理容器和镜像、挂载到这些容器中的卷,以及由容器组组成的 pod。

(JIRA:RHELPLAN-57941)

Podman 现在支持使用 YAML 文件自动构建和自动运行pod

podman play kube 命令使用 YAML 文件自动构建并运行多个 pod ,其中 pod 中具有多个容器。

(JIRA:RHELPLAN-108830)

Podman 现在可以从 IdM 中获取 subUID 和 subGID 范围

subUID 和 subGID 范围现在可以由 IdM 管理。现在,您可以在单个中央存储中定义范围,而不是将相同的 /etc/subuid/etc/subgid 文件部署到每一台主机上。您必须修改 /etc/nsswitch.conf 文件,并将 sss 添加到 services 映射行:services: files sss.

如需了解更多详细信息,请参阅 IdM 文档中的 手动管理 subID 范围

(JIRA:RHELPLAN-101133)

openssl 容器镜像现在可用

openssl 镜像提供了一个 openssl 命令行工具,用于使用 OpenSSL 加密库的各种功能。使用 OpenSSL 库,您可以生成私钥、创建证书签名请求(CSR),并显示证书信息。

openssl 容器镜像在这些存储库中提供:

  • registry.redhat.io/rhel8/openssl
  • registry.access.redhat.com/ubi8/openssl

(JIRA:RHELPLAN-101138)

Netavark 网络堆栈现在可用

从 Podman 4.1.1-7 开始提供的新网络堆栈由两个工具组成,即 Netavark 网络设置工具和 Aardvark DNS 服务器。Netavark 堆栈以前作为技术预览提供,并完全支持 RHBA-2022:7127 公告。

此网络堆栈具有以下功能:

  • 使用 JSON 配置文件配置容器网络
  • 创建、管理和删除网络接口,包括网桥和 MACVLAN 接口
  • 配置防火墙设置,如网络地址转换(NAT)和端口映射规则
  • IPv4 和 IPv6
  • 改进了多个网络中容器的功能
  • 使用 aardvark-dns 项目进行容器 DNS 解析
注意

您必须使用相同的 Netavark 堆栈和 Aardvark 权威 DNS 服务器。

(JIRA:RHELPLAN-137623)

Podman 现在支持 --health-on-failure 选项

随着 RHBA-2022:7127 公告的发布。podman runpodman create 命令现在支持 --health-on-failure 选项,以确定容器状态不健康时要执行的操作。

--health-on-failure 选项支持四个操作:

  • none :不执行任何操作,这是默认操作。
  • kill :中断容器。
  • restart: 重启容器。
  • stop: 停止容器。
注意

不要将 restart 操作与 --restart 选项一起使用。在 systemd 单元内运行时,请考虑使用 killstop 操作而不是使用 systemd 的重启策略。

(BZ#2130912)

第 5 章 对外部内核参数的重要更改

本章为系统管理员提供了 Red Hat Enterprise Linux 8.6 附带的有关内核中显著变化的摘要。这些更改包括添加或更新的 proc 条目、sysctlsysfs 默认值、引导参数、内核配置选项或者任何可见的行为更改。

新内核参数

fw_devlink.strict = [KNL]

格式: <bool>

使用这个参数,您可以将所有推断的依赖项视为强制依赖项。此设置仅在 fw_devlink=on|rpm 时才适用。

no_hash_pointers
通过这个参数,您可以强制打印到控制台或缓冲区的指针未被哈希。默认情况下,当使用 %p 格式字符串打印指针时,指针的值会被哈希掩盖。这是一个安全功能,其对非特权用户隐藏了实际内核地址。但是,它也使调试内核变得更加困难,因为您无法比较不相等的指针。如果指定了此命令行参数,则所有正常的指针都会打印其真正的值。使用 %pK 格式字符串打印的指针仍然可以被哈希。仅在调试内核且不在生产环境中使用它时才指定 no_hash_pointers
no_entry_flush = [PPC]
使用这个参数,可以在进入内核时避免清除 L1-D 缓存。
no_uaccess_flush = [PPC]
使用这个参数,可以在访问用户数据后避免清除 L1-D 缓存。
rcutorture.nocbs_nthreads = [KNL]

使用这个参数,您可以设置 Read-copy-update(RCU) 回调-卸载切换器的数量。

默认值为 0(零),禁用切换。

rcutorture.nocbs_toggle = [KNL]
使用这个参数,您可以在连续的回调卸载切换尝试之间设置延迟(以毫秒为单位)。
refscale.verbose_batched = [KNL]

使用此参数,您可以批量处理其他 printk() 语句。

您可以通过指定零(默认值)或负值来打印任何内容。否则,打印每个第 N 个详细语句,其中 N 是指定的值。

strict_sas_size = [X86]

格式: <bool>

使用这个参数,您可以启用或禁用针对所需的信号帧大小的严格的 sigaltstack 大小检查,这取决于支持的浮点单元(FPU)功能。您可以使用这个参数来过滤二进制文件,这些二进制文件尚未解 AT_MINSIGSTKSZ 辅助向量。

torture.verbose_sleep_frequency = [KNL]

这个参数指定了每次休眠之间应发出多少详细的 printk() 语句。

默认值 0(零)会禁用 verbose-printk()修眠。

torture.verbose_sleep_duration = [KNL]
此参数指定 jiffies 中每个 verbose-printk()修眠的持续时间。
tsc_early_khz = [X86]

格式:<unsigned int>

这个参数允许跳过早期时间戳计数器(TSC)校准,而使用给定的值。当早期的 TSC 频率发现过程不可靠时,该参数很有用。例如,在支持 CPUID.16h 和部分支持 CPUID.15h 的超频系统上。

更新的内核参数

amd_iommu = [HW,X86-64]

您可以将参数传递给系统中的 AMD IOMMU 驱动程序。

可能的值有:

  • fullflush - 在未映射时启用 IO/TLB 条目的清除。否则,会在重新使用之前清除它们,这快很多。
  • off - 不要初始化系统中发现的任何 AMD IOMMU。
  • force_isolation - 强制隔离所有设备。不再允许 IOMMU 驱动程序根据需要解除隔离要求。此选项不会覆盖 iommu=pt
  • force_enable - 在已知启用 IOMMU 会存在缺陷的平台上强制启用 IOMMU。请谨慎使用这个选项。
acpi.debug_level = [HW,ACPI,ACPI_DEBUG]

格式:<int>

必须启用 CONFIG_ACPI_DEBUG 来生成任何高级配置和电源接口(ACPI)调试输出。debug_layer 中的位对应于 ACPI 源文件中的 _COMPONENT 。例如,debug_level 中的 #define _COMPONENT ACPI_EVENTS 位对应于 ACPI_DEBUG_PRINT 语句中的级别。例如 ACPI_DEBUG_PRINT((ACPI_DB_INFO, …

debug_level 掩码默认为 "info"。有关调试层和级别的更多信息,请参阅 Documentation/acpi/debug.txt

启用处理器驱动程序信息消息:

acpi.debug_layer=0x20000000

启用 AML "Debug" 输出,例如,在解释 AML 过程中存储到调试对象:

acpi.debug_layer=0xffffffff,acpi.debug_level=0x2 启用与 ACPI 硬件有关的所有消息:acpi.debug_layer=0x2,acpi.debug_level=0xffffffff

有些值生成系统无法使用的输出。如果您需要捕获更多输出,则 log_buf_len 参数是很有用的。

acpi_mask_gpe = [HW,ACPI]

格式:<byte> 或 <bitmap-list>

由于 _Lxx/_Exx 的存在,一些由不支持的硬件或固件功能所触发的通用事件(GPE)可能会导致 GPE 泛滥,而无法被 GPE 分派程序自动禁用。您可以使用这个功能来防止这种不受控制的 GPE 泛滥。

cgroup_disable = [KNL]

格式:<要禁用的控制器或功能的名称>

使用这个参数,您可以禁用特定的控制器或可选功能。

cgroup_disable = <controller/feature> 的影响是:

  • 如果您在单一层次结构中挂载所有 cgroup,则 控制器/功能 将不会被自动挂载
  • 控制器/功能 作为单独的可挂载子系统不可见
  • 如果 controller/feature 是一个可选功能,则这个功能会被禁用,且不会创建相应的 cgroups 文件

    目前,仅内存控制器处理这个问题,并削减开销,其他的只是禁止使用。因此,只有 cgroup_disable=memory 才是真正值得注意的。

    指定 "pressure" 会禁用按 cgroup 的失速信息记帐功能。

clearcpuid = BITNUM[,BITNUM…​] [X86]
使用这个参数,您可以禁用内核的 CPUID 功能 X。如需有效的位数,请参见 arch/x86/include/asm/cpufeatures.h。Linux 特定的位不一定比内核选项稳定,但供应商特定的位应该是稳定的。直接调用 CPUID 的用户程序或使用不需要检查任何事情的功能仍可以看到它。这只是防止它被内核使用,或者在 /proc/cpuinfo 中显示。另外请注意,如果您禁用了一些关键位,内核可能会出问题。
iommu.strict = [ARM64, X86]

格式:<"0" | "1">

使用这个参数,您可以配置转换查找缓冲区(TLB)无效行为。

可能的值有:

  • 0 - lazy 模式,使用直接内存访问(DMA)取消映射操作的请求会延迟
  • 1 - 严格模式(默认),DMA 取消映射操作会使同步 IOMMU 硬件 TLB 失效。

    在 AMD64 和 Intel 64 上,默认行为取决于等价的特定于驱动程序的参数。但是,由任一方法显式指定的严格模式优先。

rcutree.use_softirq = [KNL]

如果此参数设为零,它会将所有 RCU_SOFTIRQ 处理移到按 CPU 的 rcuc kthreads 。默认值为非零值。这意味着默认使用 RCU_SOFTIRQ

指定 rcutree.use_softirq = 0 以使用 rcuc kthreads。但请注意,CONFIG_PREEMPT_RT=y 内核禁用此内核引导参数(强制将其设为零)。

rcupdate.rcu_normal_after_boot = [KNL]

这个参数允许引导完成后只使用正常的宽限期原语。这是在 rcu_end_inkernel_boot() 调用被调用之后。这对 CONFIG_TINY_RCU 内核没有影响。

带有 CONFIG_PREEMPT_RT=y 设置的内核,启用此内核引导参数并强制将其设为值 1 。也就是说,将快速 Read-copy-update(RCU)宽限期内的任何后引导尝试转换为使用正常的非快速宽限期处理。

spectre_v2 = [X86]

通过这个参数,您可以控制 Spectre 变体 2(间接分支推测)漏洞的缓解。

默认的操作可以防止内核免受用户空间的攻击。

可能的值有:

  • on - 无条件启用,意味着 spectre_v2_user=on
  • off - 无条件禁用,意味着 spectre_v2_user=off
  • auto - 内核检测您的 CPU 型号是否存在安全漏洞

    选择 'on' 将会在运行时根据 CPU 选择一个缓解方法,而选择 'auto' 则可能会在运行时根据 CPU 选择一个缓解方法。可用的微码、CONFIG_RETPOLINE 配置选项的设置,以及用于构建内核的编译器。

    选择 'on' 也会启用对用户空间到用户空间任务攻击的缓解。

    选择"off"将禁用内核和用户空间保护。

    您也可以手动选择特定的缓解方案:

  • retpoline - 替换间接分支
  • retpoline,generic - Retpolines
  • retpoline,lfence - LFENCE; 间接分支
  • retpoline,amd - retpoline,lfence 的别名
  • eibr - 增强的间接分支限制投机(IBRS)
  • eibrs,retpoline - 增强的 IBRS + Retpolines
  • eibrs,lfence - 增强的 IBRS + LFENCE
  • ibrs - 使用 IBRS 来保护内核
  • ibrs_always - 使用 IBRS 来保护内核和 userland
  • retpoline,ibrs_user - 使用 retpolines 替换间接分支,使用 IBRS 来保护 userland

不指定这个选项等同于 spectre_v2=auto

第 6 章 设备驱动程序

6.1. 新驱动程序

网络驱动程序

  • MT7921E 802.11ax wireless driver (mt7921e.ko.xz)
  • Realtek 802.11ax wireless core module(rtw89_core.ko.xz)
  • Realtek 802.11ax wireless PCI driver (rtw89_pci.ko.xz)
  • ntb_netdev (ntb_netdev.ko.xz)
  • Intel® Ethernet Protocol Driver for RDMA(irdma.ko.xz)
  • Intel® PCI-E Non-Transparent Bridge Driver (ntb_hw_intel.ko.xz)

图形驱动程序和各种驱动程序

  • Generic Counter interface(counter.ko.xz)
  • Intel Quadrature Encoder Peripheral driver (intel-qep.ko.xz)
  • AMD ® PCIe MP2 Communication Driver (amd_sfh.ko.xz)
  • 驱动程序用来初始化 Thrustmaster(hid-thrustmaster.ko.xz)的一些方向盘操纵杆
  • HID over I2C ACPI driver (i2c-hid-acpi.ko.xz)
  • Intel PMC Core Driver (intel_pmc_core.ko.xz)
  • ThinkLMI Driver (think-lmi.ko.xz)
  • Processor Thermal Reporting Device Driver (int3401_thermal.ko.xz)
  • Processor Thermal Reporting Device Driver (processor_thermal_device_pci.ko.xz)
  • Processor Thermal Reporting Device Driver (processor_thermal_device_pci_legacy.ko.xz)
  • TI TPS6598x USB Power Delivery Controller Driver(tps6598x.ko.xz)

6.2. 更新的驱动程序

网络驱动程序

  • Intel® PRO/1000 Network Driver(e1000e.ko.xz)已更新。
  • Intel® Ethernet Switch Host Interface Driver(fm10k.ko.xz)已更新。
  • Intel® Ethernet Connection XL710 Network Driver(i40e.ko.xz)已更新。
  • Intel® Ethernet Adaptive Virtual Function Network Driver(iavf.ko.xz)已更新。
  • Intel® Gigabit Ethernet Network Driver(igb.ko.xz)已更新。
  • Intel® Gigabit Virtual Function Network Driver(igbvf.ko.xz)已更新。
  • Intel® 2.5G Ethernet Linux Driver(igc.ko.xz)已更新。
  • Intel® 10 Gigabit PCI Express Network Driver(ixgbe.ko.xz)已更新。
  • Intel® 10 Gigabit Virtual Function Network Driver(ixgbevf.ko.xz)已更新。
  • Mellanox 5th generation network adapters (ConnectX series)core driver(mlx5_core.ko.xz)已更新。
  • VMware vmxnet3 virtual NIC driver(vmxnet3.ko.xz)已更新到版本 1.6.0.0-k。

存储驱动程序

  • Emulex LightPulse Fibre Channel SCSI driver(lpfc.ko.xz)已更新到版本 0:14.0.0.4。
  • Broadcom MegaRAID SAS Driver(megaraid_sas.ko.xz)已更新到版本 07.719.03.00-rh1。
  • LSI MPT Fusion SAS 3.0 Device Driver(mpt3sas.ko.xz)已更新到版本 39.100.00.00。
  • QLogic Fibre Channel HBA Driver(qla2xxx.ko.xz)更新到版本 10.02.06.200-k。
  • Driver for Microchip Smart Family Controller(smartpqi.ko.xz)已更新到版本 2.1.12-055。

图形和各种驱动程序更新

  • VMware drm driver for the VMware SVGA device (vmwgfx.ko.xz) 已更新到版本 2.18.1.0 。

第 7 章 bug 修复

这部分描述了 Red Hat Enterprise Linux 8.6 中对用户有严重影响的 bug 修复。

7.1. 安装程序和镜像创建

network --defroute 选项现在可以在 %include 脚本中正常工作

在以前的版本中,当在 kickstart 安装过程中,在%include 脚本中使用时,network --defroute 选项会被忽略。因此,该设备被设置为默认路由。

有了这个更新,Kickstart 安装不会忽略 %include 脚本中添加的 network --defroute 选项,并且网络连接会按预期配置。

(BZ#1990145)

用户现在可以在 RHEL for Edge Installer 蓝图中指定用户帐户

在以前的版本中,在 RHEL for Edge Commit 中定义的用户没有升级的情况下对蓝图执行更新,如添加 rpm 包,会导致在应用升级之后,用户被锁定在系统之外。这会导致用户在升级现有系统时重新定义用户帐户。这个问题已被解决,可以允许用户在 RHEL for Edge Installer 蓝图中指定用户帐户,这会在安装时在系统上创建一个用户,而不是让用户作为 ostree 提交的一部分。

(BZ#1951936)

osbuild 在构建大于 4GB 的 ISO 镜像时不再失败

Image Builder 用户可以通过添加额外的软件包来创建自定义镜像。如果软件包和其依赖项的总大小超过 4GB 大小,则 RHEL 8.5 和更早版本的用户会看到以下错误:

ubprocess.CalledProcessError: Command '['/usr/bin/xorrisofs', '-verbose', '-V', 'RHEL-8-5-0-BaseOS-x86_64', '-sysid', 'LINUX', '-isohybrid-mbr', '/usr/share/syslinux/isohdpfx.bin', '-b', 'isolinux/isolinux.bin', '-c', 'isolinux/boot.cat', '-boot-load-size', '4', '-boot-info-table', '-no-emul-boot', '-rock', '-joliet', '-eltorito-alt-boot', '-e', 'images/efiboot.img', '-no-emul-boot', '-isohybrid-gpt-basdat', '-o', '/run/osbuild/tree/installer.iso', '/run/osbuild/inputs/tree']' returned non-zero exit status 32.

之所以出现这个问题是因为 ISO 9660 的交换级别 -isolevel 3 参数没有传递给 xorrisofs 命令。要临时解决这个问题,用户需要永久将 ISO 级别值改为 3。

在 RHEL 8.6 版本中,这个问题已被解决,用户不再需要永久更改 ISO 级别值。

(BZ#2056451)

7.2. 软件管理

在模块化存储库上运行 createrepo_c --update 现在会在存储库中保留模块元数据

在以前的版本中,当在没有原始模块化元数据的现有模块存储库上运行 createrepo_c --update 命令时,默认策略将删除包括此存储库中模块元数据的所有额外元数据,从而导致存储库出问题。要保留元数据,需要运行带有 --keep-all-metadata 选项的 createrepo_c --update 命令。

有了此更新,您可以运行不带任何选项的 createrepo_c --update ,来在模块化存储库上保留模块元数据。

要删除其他元数据,您可以使用新的 --discard-additional-metadata 选项。

(BZ#1992209)

7.3. Shell 和命令行工具

在安装 info 子软件包过程中的错误不再发生

在以前的版本中,fix-info-dir 脚本预期存在 /dev/null 文件。使用软件文档的 texinfo 软件包的新版本,在不包含 /dev/null 特殊文件的系统上,安装 info 子软件包不会失败。现在,service-info-dir 脚本不会预期存在 /dev/null 文件,并避免了无限循环的可能性。

(BZ#2022201)

ReaR 可以正确备份带有未使用的 LVM 物理卷的系统

在以前的版本中,当系统上有未使用的 LVM 物理卷(PV)时,ReaR 会生成一个不正确的磁盘布局。因此,需要生成磁盘布局的 ReaR 命令,如 mkrescuemkbackupmkbackuponlysavelayout 命令会中止,并带有以下错误信息:

ERROR: LVM 'lvmdev' entry in /var/lib/rear/layout/disklayout.conf where volume_group or device is empty or more than one word

有了这个更新,ReaR 会在磁盘布局文件中注释掉未使用的 PV,因此可以正确地备份带有未使用 PV 的系统。

(BZ#2048454)

ReaR 不能从备份中正确地排除多路径设备

在以前的版本中,ReaR 不能够正确地排除某些多路径设备,这些多路径设备的名称包含了应该已经从备份中排除的多路径设备的名称。

例如,如果名为 /dev/mapper/mpatha 的设备被从备份中排除了,那么第二个名为 /dev/mapper/mpathaa 的设备也会被错误地排除。对于 26 多个多路径设备都会发生这种情况。

这个 bug 已被解决,ReaR 现在不会从备份中排除多路径设备,除非它们应该被排除。请注意,如果有应该包含在备份中的多路径设备,则必须在 ReaR 配置文件中指定 AUTOEXCLUDE_MULTIPATH=n,否则 ReaR 会自动排除所有多路径设备。这个行为没有改变。

(BZ#2049091)

7.4. 安全性

远程用户不再被反复提示访问智能卡

在以前的版本中,pcscd 守护进程的 polkit 策略错误地请求用户互动。因此,非本地和非特权用户无法访问智能卡,并遇到大量提示。有了这个更新,pcsc-lite 软件包策略不再包含交互式提示。因此,远程卡用户不再被重复要求特权升级。

有关调整策略以升级无特权用户特权的更多信息,请参阅 RHEL 产品文档中加强安全性 中的 使用 polkit 控制对智能卡的访问

(BZ#1928154)

当在 FIPS 模式下安装时,64 位 IBM Z 系统不再无法启动

在以前的版本中,使用 --no-bootcfg 选项的 fips-mode-setup 命令不会执行 zipl 工具。因为 fips-mode-setup 会重新生成初始 RAM 磁盘(initrd),因此生成的系统需要更新 zipl 内部状态才能启动,这在 FIPS 模式下安装时,会将 64 位 IBM Z 系统置于无法启动的状态。有了这个更新,即使使用 --no-bootcfg 进行调用,fips-mode-setup 现在也可在 64 位 IBM Z 系统上执行 zipl,因此,新安装的系统可以成功启动。

(BZ#2020295)

crypto-policies 可以在 OpenSSL 中禁用 ChaCha20

在以前的版本中,crypto-policies 组件使用错误的关键字来在 OpenSSL 中禁用 ChaCha20 密码。因此,在 OpenSSL 中的 TLS 1.2 中使用 ChaCha20 无法通过 crypto-policies 来禁用。有了这个更新,crypto-policies 使用 -CHACHA20 关键字,而不是 -CHACHA20-POLY1305 关键字。因此,您现在可以使用 crypto-policies ,来在 OpenSSL 中对 TLS 1.2 和 TLS 1.3 禁用 ChaCha20 密码。

(BZ#2023734)

systemd 现在可以执行 /home/user/bin 中的文件

在以前的版本中,systemd 服务无法执行 /home/user/bin/ 目录中的文件,因为 SELinux 策略不包含允许此类访问的策略规则。因此,systemd 服务失败,并最终记录 Access Vector Cache(AVC) denial Audit 信息。这个更新添加了允许访问缺失的 SELinux 规则,systemd 服务现在可以正确执行 /home/user/bin/ 中的命令。

(BZ#1860443)

从其他配置文件中删除了特定于 STIG 的默认横幅文本

在以前的版本中,STIG 配置文件中的横幅文本被其他未定义默认文本的配置文件(如 CIS)用作默认文本。因此,使用这些配置文件的系统被配置了 DISA 所需的特定文本。有了这个更新,会创建一个通用默认文本,并定义了一个与相关准则一致的标准 CIS 横幅。因此,基于明确需要文本横幅的指南的配置文件现在与需求保持一致,并设置了正确的文本。

(BZ#1983061)

ANSSI Enhanced Profile 可以正确地选择"Ensure SELinux State is Enforcing"规则

在以前的版本中,ANSSI Enhanced 配置文件(anssi_bp28_enhanced)没有选择 "Ensure SELinux State is Enforcing"(selinux_state)规则。这个更新修改了规则选择,现在 ANSSI Enhanced Profile 选择了"Ensure SELinux State is Enforcing" 规则。

(BZ#2053587)

修复了 restoreconseunshare SSG 规则的描述

在以前的版本中,对规则"Record Any Attempts to Run restorecon"(CCE-80699-2)和 "Record Anytempts to Run seunshare"(CCE-80933-5)的描述是不正确的。有了这个更新,这些规则的描述与自动 OVAL 检查一致。因此,应用描述中推荐的修复现在可以正确地修复这些规则。

(BZ#2023569)

CIS 配置文件不再自动禁用 IPv6

在以前的版本中,RHEL 8 的 CIS 配置文件为推荐“3.6禁用 IPv6”提供了不适当的自动补救措施,该建议通过配置 /etc/modprobe.d/ipv6.conf 防止加载 IPv6 模块禁用了 IPv6 。这可能会对依赖功能和服务造成不良的影响。在 RHEL 8 CIS Benchmark v1.0.1 中,必须手动实现推荐 3.6,因此 RHEL8 CIS 配置文件不会为这个配置项应用任何补救措施。因此,CIS 配置文件与基准一致,不会自动禁用 IPv6。要按照 CIS 推荐的那样通过配置 GRUB2 或 sysctl 设置来手动禁用 IPV6,请参阅 如何在 Red Hat Enterprise Linux 中禁用或启用 IPv6 协议?

(BZ#1990736)

CIS 配置文件不再阻止 SSH 服务

在以前的版本中,xccdf_org.ssgproject.content_rule_file_permissions_sshd_private_key 规则默认将 SSH 私钥的权限设置为 640。因此,SSH 守护进程没有启动。这个更新从 CIS 配置文件中删除了 file_permissions_sshd_private_key 规则,因此 SSH 服务可以正常工作。

(BZ#2002850)

SCAP 规则现在可接受 /usr/share/audit/sample-rules 中的文件

在以前的版本中,根据 SCAP 规则 xccdf_org.ssgproject.content_rule_audit_ospp_generalxccdf_org.ssgproject.content_rule_audit_immutable_login_uids 的描述,用户可以通过从 /usr/share/audit/sample-rules 目录复制合适的文件来使系统合规。但是,这些规则的 OVAL 检查会失败,因此扫描后系统被标记为不合规。有了这个更新,OVAL 检查现在接受来自 /usr/share/audit/sample-rules 的文件,SCAP 规则能够成功通过。

(BZ#2000264)

ANSSI Kickstart 现在保留足够的磁盘空间

在以前的版本中,GUI 安装所需的磁盘空间比 /usr 分区中保留的 ANSSI Kickstart 要多。因此,RHEL 8.6 GUI 安装会失败,并显示错误消息,指出 /usr 文件系统需要至少 429 MB 的空间。这个更新使用 scap-security-guide 中提供的 ANSSI Kickstarts 增加了 /usr 分区和 RHEL 8.6 安装的磁盘空间。

(BZ#2058033)

GRUB2 参数的补救措施现在是永久的

在以前的版本中,设置内核参数的 GRUB2 规则的补救措施使用了不正确的流程,并且配置更改不会在内核升级过程中持久保存。因此,必须在每次内核升级时重新应用补救措施。有了这个更新,补救措施使用以持久方式配置 GRUB2 的 grubby 工具。

(BZ#2030966)

当从 RHEL 8 主机扫描远程系统时,scap-workbench 不再挂起

在以前的版本中,向扫描的系统发送内容文件将会挂起,scap-workbench 工具无法完成扫描。这是由于内核中的一个 bug ,其阻止了执行的 Qt 子进程。因此,从 RHEL 8 主机使用 scap-workbench 命令扫描远程系统无法正常工作。有了这个更新,底层内核 bug 被修复了,因此远程扫描在将文件复制到远程系统时不再挂起,并能成功完成。

(BZ#2051890)

usbguard-notifier 不再将太多错误消息记录到 Journal

在以前的版本中,usbguard-notifier 服务没有连接到 usbguard-daemon IPC 接口的进程间通信(IPC)权限。因此,usbguard-notifier 无法连接到接口,它会向 Journal 写入一条相应的错误消息。由于 usbguard-notifier 使用 --wait 选项启动,因此 usbguard-notifier 会在连接失败后尝试每秒去连接 IPC 接口,默认情况下日志会很快包含大量这些消息。

有了这个更新,usbguard-notifier 默认不使用 --wait 启动。该服务在 1 秒的间隔内只尝试连接守护进程 3 次。因此,日志最多包含三个这样的错误消息。

(BZ#2000000)

现在,Ambient 功能现在被正确地应用到非 root 用户

作为一种安全措施,将 UID(用户标识符)从 root 更改为非 root ,会使允许的、有效的以及 ambient 的功能集无效。

但是,pam_cap.so 模块无法设置ambient 功能,因为一个功能需要同时在允许集和可继承集中,才能在 ambient 集中。此外,允许集在更改 UID(例如使用 setuid 工具)后将无效,因此无法设置 ambient 功能。

要解决这个问题,pam_cap.so 模块现在支持 keepcaps 选项,该选项在将 UID 从 root 改为非 root 后允许保留其允许的功能。pam_cap.so 模块现在还支持 defer 选项,该选项会在回调 pam_end() 的过程中使 pam_cap.so 重新应用 ambient 功能。更改 UID 后,此回调可被其他应用程序使用。

因此,如果 sulogin 工具更新了,并符合 PAM ,则您现在可以使用 pam_cap.sokeepcapsdefer 选项来为非 root 用户设置 ambient 功能。

(BZ#1950187)

usbguard-selinux 软件包不再依赖于 usbguard

在以前的版本中,usbguard-selinux 软件包依赖于 usbguard 软件包。这与这些软件包的其它依赖关系相结合,这会导致安装 usbguard 时存在文件冲突。因此,这会阻止在某些系统上安装 usbguard。使用此版本,usbguard-selinux 不再依赖于 usbguard,因此 yum 可以正确地安装 usbguard

(BZ#1963271)

audisp-remote 现在可以正确地检测到远程位置的可用性

在以前的版本中,audisp-remote 插件不会检测变为不可用的远程服务。因此,audisp-remote 进程会进入到高 CPU 使用率的状态。有了这个更新,audisp-remote 可以正确地检测变为不可用的远程服务。因此,进程不再进入高 CPU 使用率状态。

(BZ#1906065)

在自动解锁前,Clevis 不再停止于某些配置

在以前的版本中,执行 LUKS 加密卷自动解锁的 Clevis 工具会停止于某些系统配置。因此,加密的卷不会被自动解锁,管理员必须手动提供密码短语。在某些情况下,在管理员按了 Enter 键并解锁了加密卷后,Clevis 会重启。有了这个更新,工具已被修复,不会再停止于这些配置,自动解锁的进程现在可以正常工作。

(BZ#2018292)

7.5. 网络

NetworkManager 现在使用静态 IPv4 IP 地址作为主要地址

主要和次要地址的主要目的是为尚未绑定到 IP 地址的连接启用源地址选择。对于这些连接,内核会自动选择一个地址。在 NetworkManager 连接配置集中,您可以为一个连接同时配置静态 IPv4 地址和 DHCP。在以前的版本中,如果您配置了与 DHCP 的连接,且与 DHCP 服务器提供的相同范围的静态 IPv4 地址,NetworkManager 会错误地分配从 DHCP 服务器接收的 IP 地址作为主要和二级静态 IP 地址。

RHEL 8.6 会更改它预期的行为。因此,如果您在一个连接配置集中同时配置静态 IPv4 地址和 DHCP,静态 IP 地址现在总是主地址以及从 DHCP 服务器接收的地址。另外,NetworkManager 现在还会为 DHCP 服务器分配的路由设置 src 属性。使用此功能,通过这些路由访问的目的地将使用从 DHCP 服务器接收的 IP 地址作为源。

(BZ#2096256)

7.6. 内核

dmidecode --type 17 命令现在可以成功解码 DDR5 内存信息

在以前的版本中,dmidecode 命令无法解码 DDR5 内存信息。因此,dmidecode --type 17 返回 <OUT OF SPEC> 信息。软件包的最新更新(dmidecode-3.3-3.el8)已解决了这个问题。因此,dmidecode --type 17 现在可以成功解码 DDR5 内存信息。

(BZ#2027665)

在使用默认内存量的 KVM 虚拟机上,kdump 不再失败

在以前的版本中,kdump 会在一些使用默认内存量的虚拟机(KVM)上失败。因此,崩溃内核无法捕获崩溃转储文件,并显示以下错误:

/bin/sh: 在载入共享库时出现错误: libtinfo.so.6: cannot open shared object file: No such file or directory

有了这个更新,这个问题已被解决,kdump 可以在使用默认内存量的 KVM 虚拟机上正常工作。

(BZ#2004000)

隧道卸载现在可以按预期工作,并支持可用的硬件

在以前的版本中,驱动没有设置特定的功能标记。因此,隧道卸载无法按预期工作。有了这个更新,驱动程序会设置所需的标志,来启用隧道卸载,并按预期工作。

(BZ#1910885)

修复了将 rx 环缓冲设为 max 时的内核警告

在以前的版本中,预期清理输入的一个内部函数被一个重复使用的且已初始化的结构所调用。它导致内核发出警告消息:“missing unregister, handled but fix driver”。这个更新修复了这个 bug ,在尝试再次注册结构前重新初始化了这个结构。

(BZ#2040171)

7.7. 文件系统和存储

在恢复备份时, xfsrestore 命令可以正常工作

在以前的版本中,当恢复使用 xfsdump 命令创建的备份时,xfsrestore 创建一个孤儿目录。因此,一些文件被移到所创建的孤儿目录中,并显示以下消息:

 # xfsdump -L test -M test -f /scratch.dmp /mnt/test
 ...
 xfsdump: NOTE: root ino 128 differs from mount dir ino 1024, bind mount?
 ...
 xfsdump: Dump Status: SUCCESS

 # xfsrestore -f /scratch.dmp /mnt/restore/
 ...
 xfsrestore: restoring non-directory files
 xfsrestore: NOTE: ino 128 salvaging file, placing in orphanage/1024.0/dir17/file60
 xfsrestore: NOTE: ino 129 salvaging file, placing in orphanage/1024.0/dir17/file61
 xfsrestore: NOTE: ino 130 salvaging file, placing in orphanage/1024.0/dir17/file62
 xfsrestore: NOTE: ino 131 salvaging file, placing in orphanage/1024.0/dir17/file63
 xfsrestore: NOTE: ino 132 salvaging file, placing in orphanage/1024.0/dir17/file64
 xfsrestore: NOTE: ino 133 salvaging file, placing in orphanage/1024.0/dir17/file65
 xfsrestore: NOTE: ino 134 salvaging file, placing in orphanage/1024.0/dir17/file66
 ...

有了这个更新,这个问题已被解决,xfsrestore 现在可以正常工作。

(BZ#2020494)

multipathd.socket 单元文件不会在太多启动尝试后禁用 multipathd

在以前的版本中,multipath.service 单元文件中 multipathd 的起始条件与 multipathd.socket 中的触发条件不同。因此,单元文件会重复尝试启动 multipathd ,并会失败。这会导致多次尝试失败后禁用 multipathd。有了这个修复,multipathd.socketmultipathd.service 的起始条件已被设置为相同的值。因此,在没有满足 multipathd.service 的启动条件时,multipathd.socket 单元文件不会再尝试启动 multipathd

(BZ#2008101)

保护 uevents 不再导致多路径设备重新载入失败

在以前的版本中,当重新扫描 只读 路径设备时,内核会发送两个写保护 uevents - 一个设备被设为 读/写,以下设备被设为 只读。因此,在路径设备上检测到 读/写 uevent 时,multipathd 会尝试重新载入多路径设备,这会导致重新载入错误信息。有了这个更新,multipathd 会在重新载入读/写设备前,检查所有路径是否被设置为 读/写 。因此,当重新扫描 只读 设备时,multipathd 不再尝试重新载入 读/写

(BZ#2009624)

7.8. 编译器和开发工具

-j 标志现在可以在 Makefile 中正常使用

在以前的版本中,当您将 -j 标志添加到 Makefile 中的 MAKEFLAGS 时,会按顺序构建目标而不是并行。这个 bug 已被修复,现在当您在 Makefile 中使用 -j 标志时,目标也会被同时构建。

(BZ#2004246)

静态链接的应用程序不会再崩溃

在以前的版本中,动态加载程序(链接成静态链接二进制文件)的初始化代码无法正确初始化链接映射变量。因此,如果 LD_LIBRABY_PATH 包含动态令牌字符串,则静态链接应用程序会崩溃。有了这个更新,静态链接的应用程序不会再崩溃。

(BZ#1934162)

glibc 中的 pthread_once() 已被修复,可以正确地支持 C++ 异常

在以前的版本中,在使用 libstdc++ 库函数时,pthread_once() 实现可能会导致挂起。例如,libstdc++std::call_once() 调用了一个抛出异常的函数,这会导致挂起。有了这个更新,pthread_once() 被修复了,在抛出异常时不再挂起。

(BZ#2007327)

7.9. 身份管理

现在,当登记需要 challengePassword 时,certmonger 可以使用 AD 自动更新 SCEP 证书

在以前的版本中,certmonger 向活动目录(AD)网络设备注册服务(NDES)服务器发送的 SCEP 证书请求会包括最初获取证书的 challengePassword。但是,AD 会将 challengePassword 视为一次性密码(OTP)。因此,续订请求会被拒绝。

此更新将 challenge_password_otp 选项添加到 certmonger 。启用后,这个选项可防止 certmonger 发送带有 SCEP 续订请求的 OTP。管理员还必须将值为 1DisableRenewalSubjectNameMatch 条目添加到 AD 注册表的 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\MSCEP 子键。有了这个修改,AD 不再需要签名者证书和请求的证书标题名称匹配。因此,SCEP 证书续订成功。

要配置 certmonger 和 AD 服务器以便 SCEP 续订可以正常工作:

  1. 在 AD 服务器上打开 regedit
  2. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\MSCEP 子键中,添加一个新的 32 位 REG_DWORD 条目 DisableRenewalSubjectNameMatch,并将其值设为 1
  3. 在运行 certmonger 的服务器上,打开 /etc/certmonger/certmonger.conf 文件,并添加以下部分:

    [scep]
    challenge_password_otp = yes
  4. 重启 certmonger:

    # systemctl restart certmonger

(BZ#1577570)

当第二个 FreeRADIUS 服务器不可用时,FreeRADIUS 代理服务器不再停止工作

当 FreeRADIUS 服务器配置为代理服务器时,它会将请求消息转发给另一个 FreeRADIUS 服务器。在以前的版本中,如果这两个服务器之间的连接中断了,FreeRADIUS 代理服务器将停止工作。有了这个修复,在其他服务器可用时,FreeRADIUS 代理服务器现在可以重新建立连接。

(BZ#2030173)

使用 PBKDF2-hashed 密码以 FIPS 模式认证目录服务器现在可以如期工作

当目录服务器在联邦信息处理标准(FIPS)模式下运行时,K11_ExtractKeyValue() 函数不可用。因此,当启用了 FIPS 模式时,带有基于密码的密钥派生函数2(PBKDF2)哈希密码的用户向服务器进行身份验证。有了这个更新,目录服务器使用 PK11_Decrypt() 函数来获取密码哈希数据。因此,在 FIPS 模式下向目录服务器进行身份验证现在也适用于具有 PBKDF2-hash 密码的用户。

(BZ#2033398)

当 SSSD 缓存作为 SSSD 用户挂载到 tmpfs 中时,SSSD 的套接字激活成功

在以前的版本中,如果 SSSD 缓存挂载到 tmpfs 临时文件系统中,套接字激活会失败,因为 /var/lib/sss/db/config.ldb SSSD 配置文件不归 sssd 用户所有。在这个版本中,SSSD 以 sssd 用户身份创建 config.ldb 文件,套接字激活可以成功。如果您已将 /var/lib/sssd/db/ SSSD 缓存目录挂载到 tpmfs 中,则必须将其重新挂载为 sssd 用户,以便 SSSD 能够在该位置创建 config.ldb 文件。

警告

根据 在身份管理中调优性能 指南中的步骤,只在将 SSSD 缓存挂载到 tmpfs 中以获得更快性能时才执行以下步骤。在标准情况下,红帽建议在标准磁盘存储中使用 SSSD 缓存的默认位置。

流程

  1. 确认 /var/lib/sss/db 是一个挂载点:

    # mount -t tmpfs | grep /var/lib/sss/db
    tmpfs on /var/lib/sss/db type tmpfs (rw,relatime,rootcontext=system_u:object_r:sssd_var_lib_t:s0,seclabel,size=307200k,mode=700)
  2. 如果 /var/lib/ss/db 是有效的挂载点,请检查它是否归 root 用户所有:

    # ls -l /var/lib/sss | grep db
    drwx------. 2 *root root* 40 Jul 26 04:48 db
  3. 如果 db 目录是一个挂载点,且它归 root 用户所有,请将 uid=sssd,gid=sssd 添加到 /etc/fstab 文件中的对应条目中,以 SSSD 用户身份挂载它:

    tmpfs /var/lib/sss/db/ tmpfs size=300M,mode=0700,*uid=sssd,gid=sssd*,rootcontext=system_u:object_r:sssd_var_lib_t:s0 0 0
  4. 重新挂载目录并重启 SSSD 服务:

    # systemctl stop sssd
    # umount /var/lib/sss/db
    # mount /var/lib/sss/db
    # systemctl start sssd

验证

  • 验证 /var/lib/ss/db 目录是否归 sssd 用户所有:

    # ls -l /var/lib/sss | grep db
    drwx------. 2 sssd sssd 160 Jul 26 05:00 db

(BZ#2108316)

7.10. 图形基础结构

带有 VGA 显示器的 Matrox GPU 现在可以按预期工作

在这个版本前,如果您使用以下系统配置,显示器没有图形输出:

  • Matrox MGA G200 家族中的 GPU
  • 通过 VGA 控制器连接的显示器
  • UEFI 切换到传统模式

因此,您不能在此配置上使用或安装 RHEL。

有了这个更新,mgag200 驱动程序已被显著重写,因此图形输出现在可以按预期工作。

(BZ#1953926)

7.11. Red Hat Enterprise Linux System Roles

使用指标角色的 playbook 可以成功完成多个运行,即使 Grafana admin 密码更改了

在以前的版本中,在使用 metrics_graph_service: yes 布尔值运行指标角色后,对 Grafana admin 用户密码的更改会导致指标角色的后续运行失败。这会导致使用指标角色的 playbook 失败,受影响的系统只建立了一部分来用于性能分析。现在,指标角色会在可用时使用 Grafana 部署 API ,不再需要用户名或密码来执行必要的配置操作。因此,使用指标角色的 playbook 会成功完成多个运行,即使管理员更改了 Grafana admin 密码。

(BZ#1967321)

SSHD 系统角色使用正确的模板文件

在 RHEL 8.5 中,SSHD 系统角色使用了错误的模板文件。因此,生成的 sshd_config 文件不包含 # Ansible managed 注释。缺少的注释不会影响系统的任何功能。有了这个更新,系统角色可以使用正确的模板文件,sshd_config 包含了正确的 # Ansible managed 注释。

(BZ#2040038)

如果禁用了 IPv6,网络系统角色不再无法设置 DNS 搜索域

在以前的版本中,如果禁用了 IPv6 协议,libnm 库的 nm_connection_verify() 函数不会忽略 DNS 搜索域。因此,当您使用网络 RHEL 系统角色并设置 dns_searchipv6_disabled: true 时,系统角色会失败,并显示以下错误:

nm-connection-error-quark: ipv6.dns-search: this property is not allowed for 'method=ignore' (7)

有了这个更新,如果禁用了 IPv6,nm_connection_verify() 函数会忽略 DNS 搜索域。因此,您可以按预期使用 dns_search ,即使禁用了 IPv6。

(BZ#2041627)

网络系统角色中的 nm 提供程序现在可以正确地管理网桥

在以前的版本中,如果您使用 initscripts 提供程序,网络系统角色会创建一个 ifcfg 文件,该文件配置了 NetworkManager ,来将网桥接口标记为非受管。另外,NetworkManager 无法检测后续的 initscript 操作。例如,如果在 downabsent 操作后没有重新载入连接,则 initscript 提供程序的 downabsent 操作不会更改 NetworkManager 对这个接口的未受管状态的理解。有了这个修复,网络系统角色使用 NM.Client.reload_connections_async() 函数来在带有 NetworkManager 1.18 的受管主机上重新加载 NetworkManager。因此,在将提供程序从 initscript 切换到 nm 时,NetworkManager 会管理网桥接口。

(BZ#2034908)

SSH 服务器角色现在可以检测 FIPS 模式,并在 FIPS 模式下正确处理任务

在以前的版本中,当在 FIPS 模式下管理 RHEL8 和旧系统时,不允许创建一个默认的 hostkey。因此,SSH 服务器角色操作在调用时无法生成 不允许的密钥 类型。有了这个修复,SSH 服务器角色可以检测 FIPS 模式,并相应地调整默认的 hostkey 列表。因此,SSH 服务器角色现在可以在 FIPS 模式下,使用默认的 hostkey 配置管理系统。

(BZ#1979714)

日志记录系统角色不再多次调用任务

在以前的版本中,日志记录角色多次调用应该只调用一次的任务。因此,额外的任务调用减慢了角色的执行。有了这个修复,日志记录角色被修改为只调用一次任务,提高了日志记录角色的性能。

(BZ#2005727)

RHEL 系统角色现在可以处理生成的文件中的多行 ansible_managed 注释

在以前的版本中,一些 RHEL 系统角色使用 # {{ ansible_managed }} 生成一些文件。因此,如果客户有自定义的多行 ansible_managed 设置,则文件生成的不正确。有了这个修复,所有系统角色在生成文件时都使用与 {{ ansible_managed |comment }} 等效的设置,这样 ansible_managed 字符串始终被正确注释,包括多行 ansible_managed 值。因此,生成的文件有正确的多行 ansible_managed 值。

(BZ#2006231)

日志记录角色不再遗漏 immark 模块间隔值的引号

在以前的版本中,没有对 immark 模块的 "interval" 字段值正确地加引号,因为 immark 模块没有被正确配置。这个修复确保 "interval" 值被正确加引号。现在,immark 模块可以按预期工作。

(BZ#2021678)

group 选项不再使证书无法被组访问

在以前的版本中,当为证书设置组时,没有将 mode 设置为允许组读取。因此,组成员无法读取证书角色发布的证书。有了这个修复,组设置现在可确保文件模式包含组读取权限。因此,证书角色为组发布的证书可被组成员访问。

(BZ#2021683)

/etc/tuned/kernel_settings/tuned.conf 文件有一个合适的 ansible_managed 标头

在以前的版本中,内核设置 RHEL 系统角色在 /etc/tuned/kernel_settings/tuned.conf 文件中对 ansible_managed 标头有一个硬编码的值。因此,用户无法提供他们自己自定义的 ansible_managed 标头。有了这个更新,这个问题已被解决,kernel_settings 使用用户的 ansible_managed 设置更新了 /etc/tuned/kernel_settings/tuned.conf 的标头。因此,/etc/tuned/kernel_settings/tuned.conf 有一个合适的 ansible_managed 标头。

(BZ#2047504)

logging_purge_confs 选项不再无法删除不必要的配置文件

在以前的版本中,准备 logging_purge_confs 变量来删除不必要的日志记录配置文件,但无法清除它们。因此,即使 logging_purge_confs 变量被设为 true,也不会清理不必要的配置文件,而是保留在配置目录中。这个问题现已解决,logging_purge_confs 变量已被重新定义,其工作方式如下。

  • 如果 logging_purge_confs 设为 true,它会删除 rsyslog.d 中不属于任何 rpm 软件包的文件。这包括由之前 logging 角色运行所生成的配置文件。logging_purge_confs 默认值为 false

(BZ#2040812)

修复了一个拼写错误,为正确的绑定模式支持 active-backup

在以前的版本中,在指定 active-backup 绑定模式时,在支持 InfiniBand 端口时,active_backup 有一个拼写错误 。由于这个拼写错误,对于 InfiniBand 绑定端口,连接无法支持正确的绑定模式。这个更新通过将绑定模式改为 active-backup 解决了拼写错误。现在,连接可以成功支持 InfiniBand 绑定端口。

(BZ#2064388)

指标角色的配置现在会正确跟随符号链接

安装 mssql pcp 软件包后,mssql.conf 文件位于 /etc/pcp/mssql/ 中,由被符号链接 /var/lib/pcp/pmdas/mssql/mssql.conf 定为目标。但是,指标角色会覆盖符号链接,而不是跟随它,并配置 mssql.conf。因此,运行指标角色改变了到常规文件的符号链接,并且此配置仅影响 /var/lib/pcp/pmdas/mssql.conf 文件。这会导致符号链接失败,而主配置文件 /etc/pcp/mssql.conf 没有受到配置的影响。这个问题现已解决,在指标角色中已添加了 follow: yes 选项来跟随符号链接。因此,指标角色会保留符号链接,并正确配置主配置文件。

(BZ#2058655)

Kernel 设置系统角色现在可以正确安装 python3-configobj

在以前的版本中,kernel 设置角色会返回一个错误,即找不到 python3-configobj 软件包。角色找不到软件包,是因为它没有在受管主机上安装 python3-configobj。有了这个更新,该角色现在可以在受管主机上安装 python3-configobj,并可以正常工作。

(BZ#2058772)

Kdump 系统角色不再忽略主机

在以前的版本中,Kdump 角色会忽略没有为崩溃内核保留内存的受管节点,因此即使没有正确配置系统,也会以 "Success" 状态完成。当受管节点没有为崩溃内核保留内存时,这个角色已被重新设计为失败,以提示用户将 kdump_reboot_ok 变量设为 true,来在受管节点上正确配置 kdump。现在,Kdump 角色不会忽略主机,您可以使用正确的配置成功完成,或者会失败,产生一条描述用户需要做什么来解决此问题的错误消息。

(BZ#2029605)

现在,在 目标 更改时,防火墙系统角色会立即重新加载防火墙

在以前的版本中,当 target 参数改变时,防火墙系统角色不会重新加载防火墙。有了这个更新,防火墙角色会在 目标 更改时重新加载防火墙,因此,目标 更改将立即生效,并可用于后续操作。

(BZ#2057172)

HA 集群系统角色的默认 pcsd 权限现在允许组 haclient 访问

在以前的版本中,当用户运行使用 ha_cluster_pcs_permission_list 变量设置的默认 pcsd 权限时,只有组 hacluster 的成员可以访问集群。有了这个修复,默认的 pcsd 权限允许组 haclient 管理集群,且 haclient 的所有成员现在都可以访问和管理集群。

(BZ#2049747)

7.12. 虚拟化

strict NUMA 绑定策略不再允许移动运行时内存

在以前的版本中,当在虚拟机( <memory mode='strict'/>)中启用了 strict NUMA 绑定策略时,试图将运行时内存从该虚拟机移动到另一个 NUMA 节点在某些情况下会部分或完全失败。要避免这个问题,现在 strict 策略会完全禁止移动运行时内存。

此外,还添加了 restrictive 策略,其工作原理与之前 strict 策略一样。这意味着,它允许将运行时内存移到其他 NUMA 节点,但不能确保内存被完全移动。

(BZ#2014369)

multifd 迁移现在可以可靠地工作

在以前的版本中,尝试使用 QEMU 的 multifd 功能迁移虚拟机(VM)会导致迁移失败,且虚拟机会意外终止。底层代码已被修复,multifd 迁移现在可以按预期工作。

(BZ#1982993)

由于 virtio-balloon,虚拟机迁移和快照不再失败

在以前的版本中,如果虚拟机使用 virtio-balloon 设备,尝试迁移具有较新客户机操作系统(如 RHEL 9)的虚拟机会失败。同样,创建此类虚拟机的快照也会失败。这个更新修复了 virtio-balloonpage poison 中的漏洞,这可以防止上面描述的问题发生。

(BZ#2004416)

在 PowerVM 上热插拔 IBMVFC 设备现在可以如预期那样正常工作

在以前的版本中,当在 PowerVM hypervisor 上使用装有 RHEL 8 客户机操作系统的虚拟机(VM)时,尝试从正在运行的虚拟机中删除 IBM Power Virtual Fibre Channel(IBMVFC)设备会失败。相反,它会显示一个 outstanding translation 错误。底层代码已被修复,IBMVFC 设备的实时热插拔现在可以在 PowerVM 上正常工作。

(BZ#1959020)

7.13. 容器

在 RHEL 8.5 及早期使用 fuse-overlayfs 的版本中创建的无根容器现在可识别已删除的文件

在以前的版本中,在 RHEL 8.4 和更早的版本中,无根镜像和容器是使用 fuse-overlayfs 文件系统创建或存储的。在 RHEL 8.5 及之后的版本中使用此类镜像和容器,对使用内核提供的 overlayfs 实现的非特权用户,以及已删除了 RHEL 8.4 中容器或镜像中文件或目录的用户引入了问题。这个问题不适用于 root 帐户创建的容器。

因此,在使用 fuse-overlayfs 文件系统时,从容器或镜像中删除的文件或目录被标记为使用 whiteout 格式的文件或目录。但是,由于格式的不同,内核 overlayfs 的实现无法识别 fuse-overlayfs 创建的 whiteout 格式。因此,所有删除的文件和目录仍会出现。这个问题不适用于 root 帐户创建的容器。

有了这个更新,这个问题已被解决。

(JIRA:RHELPLAN-92741)

第 8 章 技术预览

这部分提供了一个 Red Hat Enterprise Linux 8.6 中所有技术预览的列表。

如需有关红帽对技术预览功能支持范围的信息,请参阅 技术预览功能支持范围

8.1. RHEL for Edge

FDO 流程作为技术预览提供

FDO 过程可用于自动置备和加入 RHEL for Edge 镜像,作为技术预览提供。在这个版本中,您可以构建 RHEL for Edge Simplified Installer 镜像,将其提供给 RHEL for Edge 镜像,并使用 FDO(FIDO 设备装载)进程自动提供和装载边缘设备,与网络上连接的其他设备和系统交换数据。因此,FIDO 设备加载协议在制造阶段执行设备初始化,然后进行后期绑定以实际使用该设备。

(BZ#1989930)

8.2. Shell 和命令行工具

ReaR 在 64 位 IBM Z 构架中作为技术预览提供

64 位 IBM Z 构架中现在作为技术预览提供了基本的 Relax 和 Recover(ReaR)功能。您只能在 z/VM 环境中在 IBM Z 上创建 ReaR 救援镜像。备份和恢复逻辑分区(LPAR)还没有测试。

当前唯一可用的输出方法是 Initial Program Load(IPL)。IPL 生成内核和初始 ramdisk(initrd),可与 zIPL 引导装载程序一起使用。

警告

目前,救援过程会重新格式化连接到系统的所有 DASD(直接附加的存储设备)。如果系统存储设备中存有宝贵的数据,则不要尝试进行系统恢复。这还包括用于引导到救援环境的 zIPL 引导装载程序、ReaR 内核和 initrd 的设备。确保保留一个副本。

如需更多信息,请参阅在 64 位 IBM Z 架构中使用 ReaR 救援镜像

(BZ#1868421)

8.3. 网络

KTLS 作为技术预览提供

RHEL 作为技术预览提供内核传输层(KTLS)。KTLS 使用内核中的对称加密或者解密算法为 AES-GCM 密码处理 TLS 记录。KTLS 还包括将 TLS 记录加密卸载到提供此功能的网络接口控制器(NIC)的接口。

(BZ#1570255)

AF_XDP 作为技术预览

Address Family eXpress Data Path (AF_XDP) 是设计用于处理高性能数据包。它包含 XDP,并允许通过编程方式将选定的数据包高效地重定向到用户空间应用,以便进一步处理。

(BZ#1633143)

可作为技术预览的 XDP 功能

红帽提供了以下 eXpress Data Path(XDP)功能作为不受支持的技术预览:

  • 在 AMD 和 Intel 64 位以外的构架中载入 XDP 程序。请注意,libxdp 库不适用于 AMD 和 Intel 64 位的构架。
  • XDP 硬件卸载。

(BZ#1889737)

TC 的多协议标签交换,作为技术预览提供

Multi-protocol Label Switching(MPLS)是一个内核内数据转发机制,用于跨企业网络路由流量。在 MPLS 网络中,接收数据包的路由器根据附加到数据包的标签决定数据包的其他路由。使用标签时,MPLS 网络可以处理带有特定特征的数据包。例如,您可以添加 tc 过滤器,以一致的方式管理从特定端口接收的数据包或执行特定类型的流量。

数据包进入企业网络后,MPLS 路由器对数据包执行多个操作,如 push 来添加标签、swap 来更新标签,以及 pop 来删除标签。MPLS 允许基于 RHEL 中的一个或多个标签在本地定义操作。您可以配置路由器并设置流量控制(tc)过滤器,根据 MPLS 标签堆栈条目(lse)元素来对数据包执行相应的操作,如 labeltraffic classbottom of stack 以及 time to live

例如,以下命令在 enp0s1 网络接口中添加过滤器以匹配传入的数据包,第一个标签为 12323,第二个标签为 45832。在匹配的数据包中,会执行以下操作:

  • 第一个 MPLS TTL 被缩减(如果 TTL 到达 0,则会丢弃数据包)
  • 第一个 MPLS 标签被改为 549386
  • 生成的数据包通过 enp0s2 传输,目标 MAC 地址为 00:00:5E:00:53:01,源 MAC 地址为 00:00:5E:00:53:02

    # tc filter add dev enp0s1 ingress protocol mpls_uc flower mpls lse depth 1 label 12323 lse depth 2 label 45832 \
    action mpls dec_ttl pipe \
    action mpls modify label 549386 pipe \
    action pedit ex munge eth dst set 00:00:5E:00:53:01 pipe \
    action pedit ex munge eth src set 00:00:5E:00:53:02 pipe \
    action mirred egress redirect dev enp0s2

(BZ#1814836, BZ#1856415

systemd-resolved 服务现在作为技术预览提供

systemd-resolved 服务为本地应用程序提供名字解析。该服务实现了缓存和验证 DNS stub 解析器、链接本地多播名称解析(LLMNR)以及多播 DNS 解析器和响应程序。

请注意,即使 systemd 软件包提供了 systemd -resolved,这个服务仍是一个不受支持的技术预览。

BZ#1906489

8.4. 内核

kexec 快速重启功能作为一种技术预览提供

kexec 快速重启功能作为一种技术预览继续提供。kexec 快速重启可以显著加快引导过程,因为内核允许直接引导到第二个内核,而无需首先通过基本输入/输出系统(BIOS)。要使用这个功能:

  1. 手动加载 kexec 内核。
  2. 重启操作系统。

(BZ#1769727)

accel-config 软件包作为技术预览提供

accel-config 软件包现在作为技术预览在 Intel EM64TAMD64 构架上提供。这个软件包有助于控制并配置 Linux 内核中的数据流化器(DSA)子系统。另外,它还通过 sysfs (pseudo-文件系统)配置设备,以 json 格式保存并载入配置。

(BZ#1843266)

SGX 作为技术预览

软件扩展(SGX)是一个 Intel® 技术,用于保护软件代码和数据不受公开和修改的影响。RHEL 内核部分提供了 SGX v1 和 v1.5 功能。版本 1 启用使用 Flexible Launch Control 机制的平台使用 SGX 技术。

(BZ#1660337)

eBPF 作为技术预览

Extended Berkeley Packet Filter(eBPF) 是一个内核中的虚拟机,允许在可访问有限功能的受限沙箱环境中在内核空间中执行代码。

虚拟机包含一个新的系统调用 bpf(),它允许创建各种类型的映射,还允许在特殊的装配式代码中加载程序。然后,代码被加载到内核,并使用即时编译方式转换为原生机器代码。请注意,只有具有 CAP_SYS_ADMIN 能力的用户(如 root 用户)才可以成功使用 bpf() syscall。如需更多信息,请参阅 bpf(2) 手册页。

载入的程序可附加到不同的点(套接字、追踪点、数据包)来接收和处理数据。

红帽提供的很多组件都使用 eBPF 虚拟机。每个组件都处于不同的开发阶段。所有组件都作为技术预览提供,除非有特定组件被显示为受支持。

以下显著的 eBPF 组件当前还作为技术预览提供:

  • AF_XDP,是一个套接字,用于将eXpress Data Path (XDP)路径连接到优先考虑数据包处理性能的应用程序的用户空间。

(BZ#1559616)

用于内核的 Intel 数据流加速器驱动程序作为技术预览提供

内核的 Intel 数据流加速器驱动程序(IDXD)目前作为技术预览提供。它是一个 Intel CPU 集成加速器,包括一个带有处理地址空间 ID(pasid)提交和共享虚拟内存(SVM)的共享工作队列。

(BZ#1837187)

soft-RoCE 作为技术预览提供

通过融合以太网的远程直接内存访问(RDMA)是一个通过以太网实现 RDMA 的网络协议。Soft-RoCE 是 RoCE 的软件实现,它维护两个协议版本:RoCE v1 和 RoCE v2。在 RHEL 8 中,Soft-RoCE 驱动程序 rdma_rxe 作为不受支持的技术预览提供。

(BZ#1605216)

stmmac 驱动程序作为技术预览提供

红帽将芯片(SoC)上 Intel® Elkhart Lake 系统的 stmmac 作为不受支持的技术预览提供。

(BZ#1905243)

8.5. 文件系统和存储

现在 ext4 和 XFS 作为技术预览提供文件系统 DAX

在 Red Hat Enterprise Linux 8 中,文件系统 DAX 作为技术预览提供。DAX 提供了将持久内存直接映射到其地址空间的方法。要使用 DAX,系统必须有某种形式的持久性内存可用,通常是以一个或多个非易失性双内联内存模块(NVDIMM)的形式,并且提供 DAX 能力的文件系统必须在 NVDIMM 上创建。另外,该文件系统必须使用 dax 挂载选项挂载。然后,挂载了 dax 的文件系统上的文件的 mmap 会导致存储直接映射到应用程序的地址空间。

(BZ#1627455)

OverlayFS

OverlayFS 是一种联合文件系统。它允许您在另一个文件系统上覆盖一个文件系统。更改记录在上面的文件系统中,而较小的文件系统则未修改。这允许多个用户共享文件系统镜像,如容器或 DVD-ROM,基础镜像使用只读介质。

在大多数情况下,OverlayFS 仍是一个技术预览。因此,当这个技术被激活时,内核会记录警告信息。

与支持的容器引擎(podmancri-obuildah)一同使用时,对 OverlayFS 提供的全面支持包括以下限制:

  • OverlayFS 仅支持作为容器引擎图形驱动程序或其他专用用例使用,如压扁的 kdump initramfs。它主要用于容器 COW 内容,不用于持久性存储。您必须将任何持久性存储放在非OverlayFS 卷中。您只能使用默认容器引擎配置:一个级别的覆盖、一个较低 dir 以及较低级别和上一级都位于同一个文件系统中。
  • 目前只支持 XFS 作为较低层文件系统使用。

另外,以下规则和限制适用于使用 OverlayFS:

  • OverlayFS 内核 ABI 和用户空间的行为被视为不稳定,将来的更新可能会改变。
  • OverlayFS 提供一组受限的 POSIX 标准。在使用 OverlayFS 部署前,先测试您的应用程序。以下情况与 POSIX 不兼容:

    • O_RDONLY 打开的较低文件在读取文件时不会接收 st_atime 更新。
    • 使用 O_RDONLY 打开的较低文件,然后与 MAP_SHARED 映射与后续修改不一致。
    • RHEL 8 中不默认启用完全兼容 st_inod_ino 值,但您可以使用模块选项或挂载选项为它们启用完整的 POSIX 合规性。

      要获得一致的内节点编号,请使用 xino=on 挂载选项。

      您还可以使用 redirect_dir=onindex=on 选项提高 POSIX 合规性。这两个选项使上层的格式与没有这些选项的 overlay 不兼容。也就是说,如果您使用 redirect_dir=onindex=on 创建覆盖,卸载覆盖,然后在没有这些选项的情况下挂载覆盖,则可能会出现意外的结果或错误。

  • 要确定现有 XFS 文件系统是否有资格用作 overlay,请使用以下命令查看是否启用了 ftype=1 选项:

    # xfs_info /mount-point | grep ftype
  • 使用 OverlayFS 在所有支持的容器引擎中默认启用 SELinux 安全标签。
  • 本发行版本中与 OverlayFS 相关的几个已知问题。详情请查看 Linux 内核文档 中的 非标准行为

有关 OverlayFS 的更多信息,请参阅 Linux 内核文档

(BZ#1690207)

Stratis 现在作为技术预览提供

Stratis 是一个新的本地存储管理器。它在存储池的上面为用户提供额外的功能。

Stratis 可让您更轻松地执行存储任务,比如:

  • 管理快照和精简配置
  • 根据需要自动增大文件系统大小
  • 维护文件系统

要管理 Stratis 存储,使用 stratis 工具来与 stratisd 后台服务进行通信。

Stratis 作为技术预览提供。

如需更多信息,请参阅 Stratis 文档:设置 Stratis 文件系统

RHEL 8.3 将 Stratis 更新至 2.1.0 版本。如需更多信息,请参阅 Stratis 2.1.0 发行注记

(JIRA:RHELPLAN-1212)

在 IdM 域成员中设置 Samba 服务器作为技术预览提供

在这个版本中,您可以在 Identity Management(IdM)域成员中设置 Samba 服务器。由同名软件包提供的新 ipa-client-samba 程序为 IdM 添加了特定于 Samba 的 Kerberos 服务主体并准备 IdM 客户端。例如,实用程序使用 sss ID 映射后端的 ID 映射配置创建 /etc/samba/smb.conf。现在,管理员可以在 IdM 域成员中设置 Samba。

由于 IdM Trust Controller 不支持全局目录服务,AD-enrolled Windows 主机无法在 Windows 中找到 IdM 用户和组。另外,IdM Trust Controller 不支持使用分布式计算环境/远程过程调用(DCE/RPC)协议解析 IdM 组。因此,AD 用户只能访问 IdM 客户端的 Samba 共享和打印机。

详情请查看在 IdM 域成员中设置 Samba

(JIRA:RHELPLAN-13195)

NVMe/TCP 主机作为技术预览提供

访问和共享通过 TCP/IP 网络(NVMe/TCP)的 Nonvolatile Memory Express(NVMe/TCP)存储及其相应的 nvme_tcp.ko 内核模块已被添加为技术预览。使用 nvme-cli 软件包提供的工具可以将 NVMe/TCP 作为主机管理。NVMe/TCP 主机技术预览仅用于测试目的,目前没有计划提供全面支持。

(BZ#1696451)

8.6. 高可用性和集群

pacemaker podman bundles 作为技术预览

pacemaker 容器捆绑包现在在 Podman 上运行,容器捆绑包功能作为技术预览提供。其中一个功能例外于技术预览:红帽完全支持在 Red Hat Openstack 中使用 Pacemaker 捆绑包。

(BZ#1619620)

作为技术预览的 corosync-qdevice 中的 Heuristics

Heuristics是一组在启动、集群成员资格更改、成功连接到 corosync-qnetd 时本地执行的命令,以及可选的定期执行的命令。当所有命令及时成功完成(返回的错误代码为零),代表 heuristics 通过,否则代表失败。Heuristics 结果发送到 corosync-qnetd,在计算中用来决定哪个分区应该是 quorate。

(BZ#1784200)

新的 fence-agents-heuristics-ping 保护代理

作为技术预览,Pacemaker 现在提供 fence_heuristics_ping 代理。这个代理旨在打开一组实验性保护代理,它们本身没有实际隔离,而是以新的方式利用隔离级别。

如果 heuristics 代理的配置与用于实现实际隔离代理有相同的隔离级别,但在代理之前配置,隔离会在试图进行隔离前,在 heuristics 代理上发出一个 off 操作。如果 heuristics 代理给出了 off 操作的一个负结果,则代表隔离不成功,从而导致 Pacemaker 隔离跳过对实现隔离的代理发出 off 动作的步骤。heuristics 代理可以利用这个行为来防止实际上进行隔离的代理在特定情况下隔离节点。

用户可能希望使用这个代理,特别是在双节点集群中,如果节点可以预先知道无法正确接管该服务,则节点可以隔离这个代理。例如,如果节点在网络连接链接出现问题,使服务无法访问客户端,则节点接管服务可能不真实。在这种情况下,向路由器的 ping 可能会探测到这个情况。

(BZ#1775847)

在资源移动后自动删除位置约束作为技术预览提供

当您执行 pcs resource move 命令时,这会为资源添加一个约束,以防止其在当前运行的节点上运行。pcs resource move 命令的新 --autodelete 选项现在作为技术预览提供。当您指定这个选项时,命令创建的位置约束会在资源移动后自动删除。

(BZ#1847102)

8.7. 身份管理

身份管理 JSON-RPC API 作为技术预览

一个 API 可用于 Identity Management(IdM)。要查看 API,IdM 还提供了一个 API 浏览器作为技术预览。

在以前的版本中,IdM API 被改进来启用多个 API 命令版本。这些增强可能会以不兼容的方式改变命令的行为。用户现在可以继续使用已有的工具和脚本,即使 IdM API 发生了变化。这可启用:

  • 管理员要在服务器中使用之前或更高版本的 IdM,而不是在管理客户端中使用。
  • 开发人员可以使用 IdM 调用的特定版本,即使 IdM 版本在服务器上发生了变化。

在所有情况下,与服务器进行通信是可能的,无论是否一方使用,例如,一个新的版本会为这个功能引进新的选项。

有关使用 API 的详细信息,请参阅使用身份管理 API 与 IdM 服务器通信(TECHNOLOGY PREVIEW)

(BZ#1664719)

DNSSEC 在 IdM 中作为技术预览提供

带有集成 DNS 的身份管理(IdM)服务器现在实现了 DNS 安全扩展(DNSSEC),这是一组增强 DNS 协议安全的 DNS 扩展。托管在 IdM 服务器上的 DNS 区可以使用 DNSSEC 自动签名。加密密钥是自动生成和轮转的。

建议那些决定使用 DNSSEC 保护 DNS 区的用户读取并遵循这些文档:

请注意,集成了 DNSSEC 的 IdM 服务器验证从其他 DNS 服务器获取的 DNS 答案。这可能会影响未按照推荐的命名方法配置的 DNS 区域可用性。

(BZ#1664718)

ACME 作为技术预览提供

自动证书管理环境(ACME)服务现在作为技术预览在 Identity Management(IdM)中提供。ACME 是一个用于自动标识符验证和证书颁发的协议。它的目标是通过缩短证书生命周期并避免证书生命周期管理中的手动过程来提高安全性。

在 RHEL 中,ACME 服务使用红帽认证系统(RHCS)PKI ACME 响应程序。RHCS ACME 子系统自动部署到 IdM 部署中的每个证书颁发机构(CA)服务器上,但只有管理员启用它之后,它才会为请求提供服务。RHCS 在发布 ACME 证书时使用 acmeIPAServerCert 配置文件。签发的证书的有效期为 90 天。启用或禁用 ACME 服务会影响整个 IdM 部署。

重要

建议仅在所有服务器都运行 RHEL 8.4 或以上版本的 IdM 部署中启用 ACME。早期的 RHEL 版本不包括 ACME 服务,这可能会在混合版本部署中引起问题。例如,没有 ACME 的 CA 服务器可能会导致客户端连接失败,因为它使用不同的 DNS Subject Alternative Name(SAN)。

警告

目前,RHCS 不会删除过期的证书。由于 ACME 证书在 90 天后过期,因此过期的证书可能会累积,这会影响性能。

  • 要在整个 IdM 部署中启用 ACME,请使用 ipa-acme-manage enable 命令:

    # ipa-acme-manage enable
    The ipa-acme-manage command was successful
  • 要在整个 IdM 部署中禁用 ACME,请使用 ipa-acme-manage disable 命令:

    # ipa-acme-manage disable
    The ipa-acme-manage command was successful
  • 要检查是否安装了 ACME 服务,以及它是否启用或禁用了,请使用 ipa-acme-manage status 命令:

    # ipa-acme-manage status
    ACME is enabled
    The ipa-acme-manage command was successful

(BZ#1628987)

8.8. Desktop

GNOME 用于 64 位 ARM 架构,作为一个技术预览

GNOME 桌面环境现在可作为技术预览用于 64 位 ARM 架构。这可让管理员使用 VNC 会话从图形用户界面(GUI)远程配置和管理服务器。

因此,在 64 位 ARM 架构中提供了新的管理应用程序。例如: Disk Usage Analyzer (baobab), 防火墙配置 (firewall-config), Red Hat Subscription Manager (subscription-manager),或 Firefox web 浏览器。使用 Firefox,管理员可以远程地连接到本地 Cockpit 守护进程。

(JIRA:RHELPLAN-27394, BZ#1667225, BZ#1667516, BZ#1724302

IBM Z 上的 GNOME 桌面作为技术预览提供

GNOME 桌面,包括 Firefox 网页浏览器,现在在 IBM Z 构架中作为技术预览提供。现在,您可以使用 VNC 连接到运行 GNOME 的远程图形会话来配置和管理您的 IBM Z 服务器。

(JIRA:RHELPLAN-27737)

8.9. 图形基础结构

VNC 远程控制台作为 64 位 ARM 架构的一个技术预览提供

在 64 位 ARM 架构中,虚拟网络计算(VNC)远程控制台可作为技术预览使用。请注意,在 64 位 ARM 架构中,目前图形堆栈的其它部分没有被验证。

(BZ#1698565)

8.10. Web 控制台

Stratis 作为 RHEL web 控制台中的技术预览提供

有了这个更新,Red Hat Enterprise Linux web 控制台将管理 Stratis 存储作为一个技术预览提供。

要了解有关 Stratis 的更多信息,请参阅 什么是 Stratis

(JIRA:RHELPLAN-108438)

8.11. 虚拟化

用于 KVM 虚拟机的 AMD SEV 和 SEV-ES

作为技术预览,RHEL 8 为使用 KVM 虚拟机的 AMD EPYC 主机提供安全加密虚拟化(SEV)功能。如果在虚拟机(VM)上启用,SEV 会加密虚拟机的内存来保护虚拟机被主机访问。这提高了虚拟机的安全性。

另外,增强的 Encrypted State 版本 SEV-ES)也作为技术预览提供。SEV-ES 在虚拟机停止运行时加密所有 CPU 注册内容。这可防止主机修改虚拟机的 CPU 注册或读取它们中的任何信息。

请注意,SEV 和 SEV-ES 仅适用于第 2 代 AMD EPYC CPU(代号 Rome)或更新版本。另请注意,RHEL 8 包括 SEV 和 SEV-ES 加密,但不包括 SEV 和 SEV-ES 安全认证。

(BZ#1501618, BZ#1501607, JIRA:RHELPLAN-7677)

Intel vGPU

作为技术预览,现在可以将物理 Intel GPU 设备划分为多个虚拟设备(称为 mediated devices)。然后可将这些 mediated devices 分配给多个虚拟机(VM)作为虚拟 GPU。因此,这些虚拟机共享单个物理 Intel GPU 的性能。

请注意,只有所选 Intel GPU 与 vGPU 功能兼容。

另外,也可以启用由 Intel vGPU 操作的 VNC 控制台。通过启用它,用户可以连接到虚拟机的 VNC 控制台,并查看由 Intel vGPU 托管的虚拟机桌面。但是,目前这仅适用于 RHEL 客户机操作系统。

(BZ#1528684)

创建嵌套虚拟机

对于装有 RHEL 8 的 Intel、AMD64、IBM POWER 以及 IBM Z 系统主机上运行的 KVM 虚拟机,嵌套的 KVM 虚拟化作为技术预览提供。使用此功能,在物理 RHEL 8 主机上运行的 RHEL 7 或 RHEL 8 虚拟机可作为虚拟机监控程序,并托管自己的虚拟机。

(JIRA:RHELPLAN-14047、JIRA:RHELPLAN-24437)

技术预览:选择 Intel 网络适配器现在在 Hyper-V 上的 RHEL 客户端中提供 SR-IOV

作为技术预览,运行在 Hyper-V hypervisor 上的 Red Hat Enterprise Linux 客户机操作系统现在可以对 ixgbevfiavf 驱动程序支持的 Intel 网络适配器使用单根 I/O 虚拟化(SR-IOV)功能。此功能在满足以下条件时启用:

  • 对网络接口控制器(NIC)启用了 SR-IOV 支持
  • 对虚拟 NIC 启用了 SR-IOV 支持
  • 对虚拟交换机启用 SR-IOV 支持
  • NIC 中的虚拟功能(VF)附加到虚拟机

该功能目前随 Microsoft Windows Server 2016 及更高版本一起提供。

(BZ#1348508)

使用 virtiofs 在主机和虚拟机之间共享文件

作为技术预览,RHEL 8 现在提供 virtio 文件系统(virtiofs)。使用 virtiofs,您可以在主机系统及其虚拟机(VM)之间高效地共享文件。

(BZ#1741615)

KVM 虚拟化可用于 RHEL 8 Hyper-V 虚拟机

作为技术预览,现在可将嵌套的 KVM 虚拟化用于 Microsoft Hyper-V hypervisor。因此,您可以在运行在 Hyper-V 主机的 RHEL 8 虚拟机中创建虚拟机。

请注意,目前这个功能仅适用于 Intel 和 AMD 系统。另外,在一些情况下,Hyper-V 中不默认启用嵌套虚拟化。要启用它,请参阅以下文档:

https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/user-guide/nested-virtualization

(BZ#1519039)

8.12. 容器

Toolbox 作为技术预览提供

在以前的版本中,Toolbox 工具是基于 RHEL CoreOS github.com/coreos/toolbox 的。有了这个版本,Toolbox 已被 github.com/containers/toolbox 替换。

(JIRA:RHELPLAN-77238)

Netavark 网络堆栈作为技术预览提供

在 Podman 版本 4.1.1-7 之前,Netavark 网络堆栈可作为技术预览使用。

此网络堆栈具有以下功能:

  • 使用 JSON 配置文件配置容器网络
  • 创建、管理和删除网络接口,包括网桥和 MACVLAN 接口
  • 配置防火墙设置,如网络地址转换(NAT)和端口映射规则
  • IPv4 和 IPv6
  • 改进了多个网络中容器的功能
  • 使用 aardvark-dns 项目进行容器 DNS 解析
注意

您必须使用相同的 Netavark 堆栈和 aardvark-dns 权威 DNS 服务器。

(JIRA:RHELPLAN-137622)

podman-machine 命令不受支持

用于管理虚拟机的 podman-machine 命令仅作为技术预览提供。相反,请从命令行直接运行 Podman。

(JIRA:RHELDOCS-16861)

第 9 章 过时的功能

这部分提供在 Red Hat Enterprise Linux 8 中弃用 的功能概述。

弃用的功能可能在以后的主要发行本中不被支持,因此不建议在新的部署中使用。有关特定主要发行本中已弃用功能的最新列表,请参考最新版本的发行文档。

在 Red Hat Enterprise Linux 8 中,已弃用的功能的支持状态保持不变。有关支持长度的详情,请查看 Red Hat Enterprise Linux 生命周期Red Hat Enterprise Linux 应用程序流生命周期

对于当前或将来的主发行版本中的新部署,我们不推荐使用已弃用的硬件组件。硬件驱动程序更新仅限于安全和关键修复。红帽建议尽快替换这个硬件。

一个软件包可以被弃用,我们不推荐在以后使用。在某些情况下,软件包可从产品中删除。然后,产品文档可识别提供类似、完全相同或者更高级功能的最新软件包,并提供进一步建议。

有关 RHEL 7 中存在,但已从 RHEL 8 中删除的功能信息,请参阅 使用 RHEL 8 的注意事项

9.1. 安装程序和镜像创建

弃用了一些 Kickstart 命令和选项

在 RHEL 8 Kickstart 文件中使用以下命令和选项将会在日志中打印警告信息:

  • authauthconfig
  • device
  • deviceprobe
  • dmraid
  • install
  • lilo
  • lilocheck
  • mouse
  • multipath
  • bootloader --upgrade
  • ignoredisk --interactive
  • partition --active
  • reboot --kexec

如果只列出具体选项,则基础命令及其它选项仍可用且没有弃用。

有关 Kickstart 中的详情和相关更改,请参阅使用 RHEL 8 的参考事项文档中的 Kickstart 更改部分。

(BZ#1642765)

ignoredisk Kickstart 命令的 --interactive 选项已被弃用

在以后的 Red Hat Enterprise Linux 版本中使用 --interactive 选项会导致严重安装错误。建议您修改 Kickstart 文件删除该选项。

(BZ#1637872)

Kickstart autostep 命令已弃用

autostep 命令已弃用。有关这个命令的相关部分已从 RHEL 8 文档中删除。

(BZ#1904251)

9.2. 软件管理

rpmbuild --sign 已弃用

从 RHEL 8.1 开始,rpmbuild --sign 命令被弃用。在以后的 Red Hat Enterprise Linux 版本中使用这个命令可能会导致错误。建议您使用 rpmsign 命令替代。

(BZ#1688849)

9.3. Shell 和命令行工具

OpenEXR 组件已弃用

OpenEXR 组件已弃用。因此,对 EXR 镜像格式的支持已从 imagecodecs 模块中去掉了。

(BZ#1886310)

dump 软件包中的 dump 工具已弃用

用于文件系统备份的 dump 工具已弃用,在 RHEL 9 中将不再提供。

在 RHEL 9 中,红帽建议根据使用情况使用 tarddbacula 、备份工具,对 ext2、ext3 和 ext4 文件系统提供了完整和安全的备份。

请注意,dump 软件包中的 restore 工具仍可用,在 RHEL 9 中也被支持,并作为 restore 软件包提供。

(BZ#1997366)

ABRT 工具已被弃用

用于检测和报告应用程序崩溃的自动错误报告工具(ABRT) 在 RHEL 8 中已弃用。作为替代,使用 systemd-coredump 工具记录和存储核心转储,其是程序崩溃后自动生成的文件。

(BZ#2055826)

ReaR crontab 已被弃用

rear 软件包中的 /etc/cron.d/rear crontab 已在 RHEL 8 中弃用,且不在 RHEL 9 中提供。crontab 会每晚检查磁盘布局是否已更改,如果发生了更改,则运行 rear mkrescue 命令。

如果您需要这个功能,在升级到 RHEL 9 后,请手动配置定期运行 ReaR。

(BZ#2083301)

RHEL 8 systemd 不再支持 hidepid=n 挂载选项

挂载选项 hidepid=n,其控制谁可以访问 /proc/[pid] 目录中的信息,与 RHEL 8 提供的 systemd 基础架构不兼容。

另外,使用这个选项可能会导致 systemd 启动的某些服务生成 SELinux AVC 拒绝信息,并阻止其他操作完成。

如需更多信息,请参阅相关的 使用 RHEL7 和 RHEL8 推荐的"hidepid=2"挂载 /proc ?

(BZ#2038929)

/usr/lib/udev/rename_device 工具已被弃用

用于重命名网络接口的 udev 帮助工具 /usr/lib/udev/rename_device 已被弃用。

(BZ#1875485)

9.4. 安全性

NSS SEED 密码已弃用

Mozilla Network Security Services (NSS) 库将不支持在以后的版本中使用 SEED 密码的 TLS 密码组合。为确保在 NSS 取消支持时依赖 SEED 密码的部署平稳过渡,红帽推荐对其它密码套件的支持。

请注意,在 RHEL 中,SEED 密码已经被默认禁用。

(BZ#1817533)

TLS 1.0 和 TLS 1.1 已弃用

TLS 1.0 和 TLS 1.1 协议在 DEFAULT 系统范围的加密策略级别被禁用。如果需要使用启用的协议,如 Firefox 网页浏览器中的视频检查程序,把系统范围的加密策略切换到 LEGACY 级别:

# update-crypto-policies --set LEGACY

如需更多信息,请参阅红帽客户门户网站中的 RHEL 8 中的 强加密默认值和弱加密算法 知识库中的文章以及 update-crypto-policies(8)手册页。

(BZ#1660839)

在 RHEL 8 中弃用 DSA

数字签名算法(DSA)在 Red Hat Enterprise Linux 8 中被视为已弃用。依赖于 DSA 密钥的身份验证机制在默认配置中不起作用。请注意,即使使用系统范围的LEGACY加密策略级别中,OpenSSH客户端都不接受 DSA 主机密钥。

(BZ#1646541)

NSS中弃用了SSL2 Client Hello

传输层安全(TLS)协议版本 1.2 及更早版本允许以向后兼容安全套接字层(SSL)协议版本 2 的方式与 客户端 Hello 消息进行协商。网络安全服务(NSS)库中对这个功能的支持已被弃用,默认是禁用的。

需要这个功能支持的应用程序需要使用新的 SSL_ENABLE_V2_compatible_HELLO API 启用它。以后的 Red Hat Enterprise Linux 8 版本中可以完全删除对这个功能的支持。

(BZ#1645153)

TPM 1.2 已被弃用

Trusted Platform Module (TPM) 安全加密处理器标准版本在 2016 年更新至 2.0 版本。TPM 2.0 比 TPM 1.2 提供了很多改进,它和之前的版本不向后兼容。在 RHEL 8 中弃用了 TPM 1.2,它可能会在下一个主发行版本中删除。

(BZ#1657927)

crypto-policies 派生的属性现已被弃用

随着自定义策略中 crypto-policies 指令作用域的引入,以下派生属性已被弃用: tls_cipherssh_cipherssh_groupike_protocolsha1_in_dnssec。另外,使用 protocol 属性而不指定范围现也已被弃用。有关推荐的替代品,请参阅 crypto-policies(7) 手册页。

(BZ#2011208)

使用 /etc/selinux/config 运行时禁用 SELinux 现已弃用

使用 /etc/selinux/config 文件中的 SELINUX=disabled 选项禁用 SELinux 已被弃用。在 RHEL 9 中,当您只通过 /etc/selinux/config 禁用 SELinux 时,系统启动时会启用SELinux ,但没有载入任何策略。

如果您的情况确实需要完全禁用 SELinux,红帽建议通过在内核命令行中添加 selinux=0 参数来禁用 SELinux,如在标题为使用SELinux在引导时更改 SELinux模式部分中所述。

BZ#1932222

ipa SELinux 模块从 selinux-policy中删除了

ipa SELinux 模块已从 selinux-policy 软件包中删除,因为不再维护它了。这个功能现在包括在 ipa-selinux 子软件包中。

如果您的场景需要在本地 SELinux 策略中使用 ipa 模块的类型或接口,请安装 ipa-selinux 软件包。

(BZ#1461914)

fapolicyd.rules 已被弃用

包含允许和拒绝执行规则的文件的 /etc/fapolicyd/rules.d/ 目录替代了 /etc/fapolicyd/fapolicyd.rules 文件。fagenrules 脚本现在将此目录中的所有组件规则文件合并到 /etc/fapolicyd/compiled.rules 文件。/etc/fapolicyd/fapolicyd 中的规则仍由 fapolicyd 框架处理,但只是为了保证向后兼容。

(BZ#2054741)

9.5. 网络

在 RHEL 8 中已弃用网络脚本

网络脚本在 Red Hat Enterprise Linux 8 中已弃用,且不再默认提供。基本安装提供了 ifupifdown 脚本的新版本,它们通过 nmcli 工具调用 NetworkManager 服务。在 Red Hat Enterprise Linux 8 中,要运行 ifupifdown 脚本,NetworkManager 必须正在运行。

请注意, /sbin/ifup-localifdown-pre-localifdown-local 脚本中的自定义命令不会执行。

如果需要这些脚本,您仍可以使用以下命令在系统中安装已弃用的网络脚本:

~]# yum install network-scripts

ifupifdown 脚本链接到已安装的旧网络脚本。

调用旧的网络脚本会显示一个关于它们已过时的警告。

(BZ#1647725)

dropwatch 工具已弃用

dropwatch 工具已弃用。以后的发行版本中不再支持该工具,因此不建议在新部署中使用它。作为这个软件包的替代品,红帽建议使用 perf 命令行工具。

有关使用 perf 命令行工具的更多信息,请参阅红帽客户门户网站的 Perf入门 部分或 perf手册页。

(BZ#1929173)

cgdcbxd 软件包已被弃用

控制组数据中心桥接交换守护进程(cgdcbxd)是监控数据中心桥接(DCB)netlink 事件和管理 net_prio 控制组子系统的服务。从 RHEL 8.5 开始,cgdcbxd 软件包被弃用,并将在下一个主要 RHEL 发行版本中删除。

(BZ#2006665)

xinetd 服务已被弃用

xinetd 服务已被弃用,并将在 RHEL 9 中删除。作为替换,请使用 systemd。详情请查看 如何将 xinetd 服务转换为 systemd

(BZ#2009113)

WEP Wi-Fi 连接方法已被弃用

在 RHEL 8.6 中弃用了不安全的有线等效隐私(WEP)Wi-Fi 连接方法,并将在 RHEL 9.0 中删除。对于安全的 Wi-Fi 连接,请使用 Wi-Fi Protected Access 3(WPA3)或 WPA2 连接方法。

(BZ#2029338)

不受支持的 xt_u32 模块现已被弃用

使用不受支持的 xt_u32 模块,iptables 用户可以匹配数据包头或有效负载中的任意 32 位数据。在 RHEL 8.6 中,xt_u32 模块已被弃用,并将在 RHEL 9 中删除。

如果使用 xt_u32,请迁移到 nftables 数据包过滤框架。例如,首先将您的防火墙更改为使用带有原生匹配项的 iptables ,以便逐步替换单个规则,然后使用 iptables-translate 和附带的工具迁移到 nftables。如果 nftables 中没有原生匹配,请使用 nftables 的原始有效负载匹配功能。详情请查看 nft(8) 手册页中 原始有效负载表达式 部分。

(BZ#2061288)

术语 slave 已在 nmstate API 中弃用

红帽承诺使用适当的语言。有关此倡议的详细信息,请参阅 使开源更包容。因此,slaves 术语在 Nmstate API 中被弃用。使用 nmstatectl 时使用术语 port

(JIRA:RHELDOCS-17641)

9.6. 内核

内核实时补丁现在涵盖所有 RHEL 次版本

从 RHEL 8.1 开始,已为延长更新支持(EUS)策略涵盖的所选定的 RHEL 次版本提供了内核实时补丁,以修复级别为关键(Critical)和重要(Important)的通用漏洞披露(CVE)。为了容纳最大数量的并发覆盖的内核和用例,对于每个内核的次要版本、主版本和 zStream 版本,每个实时补丁的支持窗口将从 12 个月减少到 6 个月。这意味着,在内核实时补丁发布的那天,它将覆盖过去 6 个月所交付的每个次要版本和计划勘误表内核。例如: 8.4.x 将有一个为期一年的支持窗口,但 8.4.x+1 将只有 6 个月。

有关此功能的更多信息,请参阅 使用内核实时修补应用补丁

有关可用的内核实时补丁的详情,请查看 内核实时补丁生命周期

(BZ#1958250)

使用无磁盘引导为 Real Time 8 安装 RHEL 现已弃用

无盘引导允许多个系统通过网络共享根文件系统。虽然方便,无盘引导会在实时工作负载中容易引入网络延迟。在以后的 RHEL for Real Time 8 的更新中,无盘引导功能将不再被支持。

(BZ#1748980)

Linux firewire 子系统及其关联的用户空间组件在 RHEL 8 中已被弃用

firewire 子系统提供了接口来使用和维护 IEEE 1394 总线上的任何资源。在 RHEL 9 中,内核 软件包将不再支持 firewire 。请注意,firewire 包含几个由 libavc1394libdc1394libraw1394 软件包提供的用户空间组件。这些软件包也会被弃用。

(BZ#1871863)

rdma_rxe Soft-RoCE 驱动程序已被弃用

软件直接内存通过融合以太网(Soft-RoCE)(也称为 RXE)是模拟远程直接内存访问(RDMA)的功能。在 RHEL 8 中,Soft-RoCE 功能作为一个不受支持的技术预览提供。但是,由于稳定性问题,此功能已被弃用,并将在 RHEL 9 中删除。

(BZ#1878207)

9.7. 引导加载程序

kernelopts 环境变量已被弃用

在 RHEL 8 中,使用 GRUB2 引导装载程序的系统的内核命令行参数定义在 kernelopts 环境变量中。变量保存在每个内核引导条目的 /boot/grub2/grubenv 文件中。但是,使用 kernelopts 存储内核命令行参数并不可靠。因此,在以后的 RHEL 主更新中,kernelopts 将被删除,且内核命令行参数会存储在 Boot Loader Specification(BLS)片断中。

(BZ#2060759)

9.8. 文件系统和存储

async 之外的 VDO 写模式已被弃用

VDO 支持 RHEL 8 中的几种写入模式:

  • sync
  • async
  • async-unsafe
  • auto

从 RHEL 8.4 开始,以下写入模式已弃用:

sync
VDO 层之上的设备无法识别 VDO 是否同步,因此设备无法利用 VDO 同步 模式。
async-unsafe
VDO 添加了这个写入模式来作为降低 async 模式性能的一个临时解决方案,异步模式符合原子性、一致性、隔离性和持久性(ACID)。对于大多数用例,红帽不推荐使用 async-unsafe,也不知道任何依赖它的用户。
auto
这个写入模式只选择其它写入模式之一。当 VDO 只支持单个写入模式时,不再需要它。

这些写入模式将在以后的主 RHEL 发行版本中删除。

推荐的 VDO 写入模式现在是 async的。

如需有关 VDO 写入模式的更多信息,请参阅选择 VDO 写入模式

(JIRA:RHELPLAN-70700)

禁用了 NFSv3 over UDP

默认情况下,NFS 服务器不再默认在 User Datagram Protocol(UDP)套接字上打开或监听。这个变化只影响 NFS 版本 3,因为版本 4 需要传输控制协议(TCP)。

RHEL 8 不再支持通过 UDP 的 NFS。

(BZ#1592011)

cramfs 已被弃用

由于缺少用户,cramfs 内核模块已被弃用。建议使用 squashfs 作为替代解决方案。

(BZ#1794513)

VDO 管理器已被弃用

基于 python 的 VDO 管理软件已被弃用,并将从 RHEL 9 中删除。在 RHEL 9 中,它将被 LVM-VDO 集成替代。因此,建议您使用 lvcreate 命令创建 VDO 卷。

使用 VDO 管理软件创建的现有卷可以使用 lvm2 软件包提供的 /usr/sbin/lvm_import_vdo 脚本来进行转换。有关 LVM-VDO 实现的更多信息,请参阅 在 RHEL 上去重和压缩逻辑卷

(BZ#1949163)

elevator 内核命令行参数已弃用

在之前的 RHEL 版本中使用 elevator 内核命令行参数为所有设备设置磁盘调度程序。在 RHEL 8 中,该参数已弃用。

上游 Linux 内核删除了对 elevator 参数的支持,但出于兼容性的原因,在 RHEL 8 中仍提供此支持。

请注意,内核会根据设备类型选择默认磁盘调度程序。这通常是最佳设置。如果您需要不同的调度程序,红帽建议您使用 udev 规则或 TuneD 服务来配置它。匹配所选设备并只为那些设备切换调度程序。

如需更多信息,请参阅设置磁盘调度程序

(BZ#1665295)

LVM mirror 已弃用

LVM mirror segment 类型已弃用。以后的 RHEL 主发行版本中会删除对 mirror 的支持。

红帽建议使用 segment 类型为 raid1 的 LVM RAID 1 设备来替代 mirrorraid1 segment 类型是默认的 RAID 配置类型,它作为推荐的解决方案替换 mirror

要将 mirror 设备转换为 raid1,请参阅 将镜像 LVM 设备转换为 RAID1 逻辑卷

LVM mirror 有几个已知问题。详情请查看 文件系统和存储中的已知问题

(BZ#1827628)

peripety 已被弃用

从 RHEL 8.3 开始,pipety 软件包已弃用。

Peripety 存储事件通知守护进程将系统存储日志解析为结构化的存储事件。它帮助您调查存储问题。

(BZ#1871953)

9.9. 高可用性和集群

支持 clufter 工具的 pcs 命令已被弃用

支持 clufter 工具来分析群集配置格式的 pcs 命令已被弃用。现在,这些命令会显示一个警告信息,提示该命令已弃用,并且与这些命令相关的部分已从 pcs 帮助显示和pcs(8)手册页中删除。

以下命令已被弃用:

  • 用于导入 CMAN / RHEL6 HA 群集配置的 pcs config import-cman
  • pcs config export 用于将集群配置导出到可重新创建同一集群的 pcs 命令列表中

(BZ#1851335)

9.10. 动态编程语言、网页和数据库服务器

PHP 提供的与 Apache HTTP 服务器一起使用的 mod_php 模块已被弃用

PHP 提供的与 RHEL 8 中的 Apache HTTP 服务器一起使用的 mod_php 模块可用,但在默认配置中未启用。RHEL 9 不再提供该模块。

从 RHEL 8 开始,PHP 脚本默认使用 FastCGI Process Manager (php-fpm)运行。如需更多信息,请参阅 将 PHP 与 Apache HTTP 服务器一起使用

(BZ#2225332)

9.11. 编译器和开发工具

libdwarf 已弃用

libdwarf 库在 RHEL 8 中已弃用。将来的主版本中可能也不支持该程序库。对于打算处理 ELF/DWARF 文件的应用程序,请使用 elfutilslibdw 库。

libdwarf-tools dwarfdump 程序的替代方案是 binutils readelf 程序或elfutilseu-readelf 程序,它们都通过传递 --debug-dump 标志来使用。

(BZ#1920624)

gdb.i686 软件包已弃用

在 RHEL 8.1 中,GNU Debugger(GDB)gdb.i686 的 32 位版本因为另一个软件包中的依赖问题而提供。因为 RHEL 8 不支持 32 位硬件,所以 gdb.i686 软件包从 RHEL 8.4 开始已弃用。GDB的64 位版本gdb.x86_64完全能够调试 32 位应用程序。

如果使用 gdb.i686,请注意以下重要问题:

  • gdb.i686 软件包将不再更新。用户必须安装 gdb.x86_64
  • 如果您安装了 gdb.i686,安装 gdb.x86_64 将导致 dnf 报告 package gdb-8.2-14.el8.x86_64 obsoletes gdb < 8.2-14.el8 provided by gdb-8.2-12.el8.i686。这是预期的。卸载 gdb.i686 或向dnf传递 --allowerasing选项来删除gdb.i686, 并安装 gdb.x8_64
  • 用户将不能够在 64 位系统中安装 gdb.i686 软件包,也就是那些带有 libc.so.6()64 位) 软件包的系统。

(BZ#1853140)

9.12. 身份管理

openssh-ldap 已被弃用

在 Red Hat Enterprise Linux 8 中弃用 openssh-ldap 子软件包,并将在 RHEL 9 中删除。因为 openssh-ldap 子软件包没有被上游维护,红帽建议您使用 SSSD 和 sss_ssh_authorizedkeys 帮助程序,它们与其他 IdM 解决方案更好地集成且更安全。

默认情况下,SSSD ldapipa 供应商会读取用户对象的 sshPublicKey LDAP 属性(如果可用)。请注意,您无法为 ad provider 或 IdM 可信域使用默认的 SSSD 配置从 Active Directory(AD)检索 SSH 公钥,因为 AD 没有存储公钥的默认 LDAP 属性。

要允许 sss_ssh_authorizedkeys 帮助程序从 SSSD 获取密钥,在 sssd.conf 文件的 services 选项中添加 ssh 来启用 ssh 响应程序。详情请查看 sssd.conf(5) 手册页。

要允许 sshd 使用 sss_ssh_authorizedkeys,,添加 AuthorizedKeysCommand/usr/bin/sss_ssh_authorizedkeysAuthorizedKeysCommandUser nobody 选项到 /etc/ssh/sshd_config 文件,如 ss_ssh_authorizedkeys(1) 手册页所述。

(BZ#1871025)

已经删除了 DES 和 3DES 加密类型

由于安全考虑,自 RHEL 7 开始,数据加密标准(DES)算法已被弃用并默认禁用。通过最近重新构建 Kerberos 软件包,已从 RHEL 8 中删除了 single-DES(DES)和 triple-DES(3DES) 加密类型。

如果您已经将服务或用户配置为只使用 DES 或 3DES 加密,您可能会遇到服务中断,例如:

  • Kerberos authentication 错误
  • unknown enctype 加密错误
  • 带有 DES 加密数据库主密钥(K/M)的 KDC 无法启动

执行以下操作准备升级:

  1. 检查您的 KDC 是否使用 DES 或者 3DES 加密,并使用 krb5check 打开源 Python 脚本。请参阅 GitHub 上的 krb5check
  2. 如果您要将 DES 或 3DES 加密用于任何 Kerberos 主体,请使用支持的加密类型重新加密,比如高级加密标准(AES)。有关重新打包的步骤,请参考 MIT Kerberos 文档中的 Retiring DES
  3. 通过在升级前临时设置以下 Kerberos 选项,从 DES 和 3DES 测试测试:

    1. 在 KDC 上的 /var/kerberos/krb5kdc/kdc.conf 中设置 support_enctypes 且不包含 desdes3
    2. 对于每个主机,在 /etc/krb5.conf 以及 /etc/krb5.conf.d 中的任意文件,将 allow_weak_crypto 设为 false。默认为 false。
    3. 对于每个主机,在 /etc/krb5.conf 以及 /etc/krb5.conf.d 中的任何文件中,设置 permitted_enctypesdefault_tgs_enctypesdefault_tkt_enctypes,但不包括 desdes3
  4. 如果您没有遇到上一步中测试 Kerberos 设置的服务中断,请删除并升级它们。升级到最新的 Kerberos 软件包后您不需要这些设置。

(BZ#1877991)

单独使用 ctdb 服务已弃用

从 RHEL 8.4 开始,建议客户仅在满足以下条件时使用 ctdb 集群 Samba 服务:

  • ctdb 服务通过资源代理ctdb作为 pacemaker 资源进行管理。
  • ctdb 服务使用包含由红帽 Gluster 存储产品提供的 GlusterFS 文件系统或 GFS2 文件系统的存储卷。

ctdb 服务的独立用例已被弃用,其不会包含在 Red Hat Enterprise Linux 的下一个主版本中。有关 Samba 支持政策的更多信息,请参阅 RHEL Resilient Storage - ctdb 常规政策的支持政策

(BZ#1916296)

以 PDC 或 BDC 的形式运行 Samba 已被弃用

传统的域控制器模式使管理员能够作为类似 NT4 的主域控制器(PDC)和备份域控制器(BDC)运行 Samba。用于配置这些模式的代码和设置将在以后的 Samba 发行版本中删除。

只要 RHEL 8 中的 Samba 版本提供 PDC 和 BDC 模式,红帽就仅在带有支持 NT4 域的 Windows 版本的现有安装中支持这些模式。红帽建议不要设置新的 Samba NT4 域,因为 Microsoft 操作系统稍后于 Windows 7 和 Windows Server 2008 R2 不支持 NT4 域。

如果您使用 PDC 仅验证 Linux 用户,红帽建议迁移到 RHEL 订阅中包含的 Red Hat Identity Management(IdM)。但是,您无法将 Windows 系统加入到 IdM 域中。请注意,红帽继续支持在后台使用 PDC 功能 IdM。

红帽不支持将 Samba 作为 AD 域控制器(DC)运行。

BZ#1926114

通过 WinSync 与 IdM 间接集成的 AD 已被弃用

由于一些功能的限制,不会在 RHEL 8 中对 WinSync 进行积极的开发:

  • WinSync 只支持一个活动目录(AD)域。
  • 密码同步需要在 AD 域控制器上安装额外的软件。

对于具有更好的资源和安全分离的更健壮的解决方案,红帽建议对于与活动目录的间接集成使用 跨林信任 。请参阅 间接集成 文档。

(JIRA:RHELPLAN-100400)

libwbclient 的 SSSD 版本已被删除

libwbclient 软件包的 SSSD 实现在 RHEL 8.4 中已被弃用。因为无法与 Samba 的最新版本一起使用, libwbclient 的 SSSD 实现现已被删除。

(BZ#1947671)

SMB1 协议在 Samba 中已弃用

从 Samba 4.11 开始,不安全的服务器消息块版本 1 (SMB1)协议已弃用,并将在以后的发行版本中删除。

为提高安全性,SMB1 默认在 Samba 服务器和客户端工具中被禁用。

Jira:RHELDOCS-16612

对 FreeRADIUS 的有限支持

在 RHEL 8 中,以下外部身份验证模块作为 FreeRADIUS 产品的一部分被弃用:

  • MySQL、PostgreSQL、SQlite 和 unixODBC 数据库连接器
  • Perl 语言模块
  • REST API 模块
注意

PAM 身份验证模块以及其它作为基础软件包的一部分提供的身份验证模块不受影响。

您可以在社区支持的软件包中找到已弃用模块的替代品,例如在 Fedora 项目中。

另外,在以后的 RHEL 版本中,对 freeradius 软件包的支持范围将限制为以下用例:

  • 使用 FreeRADIUS 作为无线身份验证提供商,身份管理(IdM)作为身份验证的后端源。身份验证通过 krb5 和 LDAP 身份验证软件包或作为主 FreeRADIUS 软件包中的 PAM 身份验证发生。
  • 使用 FreeRADIUS ,通过 Python 3 身份验证软件包为 IdM 中的身份验证提供真相来源。

与这些弃用相反,红帽将通过 FreeRADIUS 增强对以下外部身份验证模块的支持:

  • 基于 krb5 和 LDAP 的身份验证
  • Python 3 身份验证

这些集成选项的重点在于与红帽 IdM 的战略方向紧密一致。

Jira:RHELDOCS-17573

9.13. Desktop

libgnome-keyring 库已弃用

libgnome-keyring 库已弃用,现在使用 libsecret 库,因为 libgnome-keyring 没有被上游维护,且不会遵循 RHEL 所需的加密策略。新的 libsecret 库是符合所需安全标准的替换。

(BZ#1607766)

9.14. 图形基础结构

不再支持 AGP 图形卡

Red Hat Enterprise Linux 8 不支持使用图形端口(AGP)总线的图形卡。推荐使用 PCI-Express bus 图形卡替换。

(BZ#1569610)

Motif 已被弃用

Motif 小部件工具包已在 RHEL 中被弃用,因为上游 Motif 社区的开发不活跃。

以下 Motif 软件包已被弃用,包括其开发和调试变体:

  • motif
  • openmotif
  • openmotif21
  • openmotif22

另外,motif-static 软件包已删除。

红帽建议使用 GTK 工具包作为替代品。与 Motif 相比,GTK更易于维护,并提供了新功能。

(JIRA:RHELPLAN-98983)

9.15. Web 控制台

Web 控制台不再支持不完整翻译

RHEL web 控制台不再提供翻译少于 50% 的语言支持。如果浏览器要求转换成这种语言,用户界面将为英语。

(BZ#1666722)

remotectl 命令已弃用

remotectl 命令已弃用,并将在以后的 RHEL 版本中不可用。您可以使用 cockpit-certificate-ensure 命令作为替代。但请注意,cockpit-certificate-ensure 没有与 remotectl 相同的功能。它不支持捆绑的证书和密钥 keychain 文件,并要求将它们拆分。

(JIRA:RHELPLAN-147538)

9.16. Red Hat Enterprise Linux System Roles

当在 RHEL 9 节点上配置协作时,networking 系统角色会显示一个弃用警告

RHEL 9 中弃用了网络协作功能。因此,在 RHEL 8 控制器上使用 networking RHEL 系统角色在 RHEL 9 节点上配置网络协作,会显示有关其弃用的警告。

(BZ#2021685)

Ansible Engine 已被弃用

RHEL 8 的早期版本提供了对 Ansible Engine 存储库的访问(有限范围的支持),以启用支持的 RHEL 自动化用例,如 RHEL 系统角色和 Insights 补救措施。Ansible Engine 已被弃用,2023 年 9 月 29 日之后将不再支持 Ansible Engine 2.9 。有关支持的用例的详情,请参阅 RHEL 9 AppStream 中包含的 Ansible Core 软件包的支持范围

用户必须手动将他们的系统从 Ansible Engine 迁移到 Ansible Core。为此,请按照以下步骤操作:

流程

  1. 检查系统是否正在运行 RHEL 8.6:

    # cat /etc/redhat-release
  2. 卸载 Ansible Engine 2.9:

    # yum remove ansible
  3. 禁用 ansible-2-for-rhel-8-x86_64-rpms 存储库:

    # subscription-manager repos --disable
    ansible-2-for-rhel-8-x86_64-rpms
  4. 从 RHEL 8 AppStream 存储库安装 Ansible Core 软件包:

    # yum install ansible-core

如需了解更多详细信息,请参阅: 在 RHEL 8.6 及之后的版本中使用 Ansible

(BZ#2006081)

geoipupdate 软件包已弃用

geoipupdate 软件包需要第三方订阅,同时下载专有内容。因此,geoipupdate 软件包已被弃用,并将在下一个主要 RHEL 版本中删除。

(BZ#1874892)

9.17. 虚拟化

virsh iface-* 命令已被弃用

virsh iface-* 命令(如 virsh iface-startvirsh iface-destroy )现已被弃用,并将在以后的 RHEL 主版本中删除。另外,这些命令会因为配置依赖而经常失败。

因此,建议您不要使用 virsh iface-* 命令来配置和管理主机网络连接。反之,使用 NetworkManager 程序及其相关的管理应用程序,如 nmcli

(BZ#1664592)

virt-manager 已被弃用

虚拟机管理器(也称 virt-manager) 已弃用。RHEL web 控制台(也称为 Cockpit )旨在在以后的版本中成为它的替代。因此,建议您使用 web 控制台使用 GUI 管理虚拟化。但请注意,在 RHEL web 控制台中,virt-manager 中的一些功能可能还不可用。

(JIRA:RHELPLAN-10304)

对虚拟机快照的支持有限

目前只对使用 UEFI 固件的虚拟机支持创建虚拟机(VM)的快照。另外,在快照操作过程中,QEMU 监控可能会被阻止,这会影响某些工作负载的 hypervisor 性能。

另请注意,创建虚拟机快照的当前机制已被弃用,红帽不推荐在生产环境中使用虚拟机快照。

(BZ#1686057)

Cirrus VGA 虚拟 GPU 类型已弃用

随着 Red Hat Enterprise Linux 的主要更新,Cirrus VGA GPU 设备将在 KVM 虚拟机中不再被支持。因此,红帽建议使用 stdvgavirtio-vgaqxl 设备,而不是 Cirrus VGA

(BZ#1651994)

IBM POWER 上的 KVM 已被弃用

在 IBM POWER 硬件中使用 KVM 虚拟化已被弃用。因此,RHEL 8 仍支持 IBM POWER 上的 KVM,但在以后的 RHEL 主发行版本中将不被支持。

(JIRA:RHELPLAN-71200)

使用基于 SHA1 的签名进行 SecureBoot 镜像验证已弃用

在 UEFI(PE/COFF)可执行文件中使用基于 SHA1 的签名执行 SecureBoot 镜像验证已过时。反之,红帽建议使用基于 SHA2 算法或更新版本的签名。

(BZ#1935497)

使用 SPICE 将智能卡读取器附加到虚拟机已被弃用

SPICE 远程显示协议已在 RHEL 8 中被弃用。由于将智能卡读取器附加到虚拟机(VM)的唯一方法取决于 SPICE 协议,因此在虚拟机中使用智能卡已在 RHEL 8 中被弃用。

在 RHEL 未来的主版本中,将智能卡读取器附加到虚拟机的功能仅被第三方远程视觉解决方案支持。

(BZ#2059626)

SPICE 已被弃用

SPICE 远程显示协议已弃用。请注意,RHEL 8 中仍支持 SPICE,但红帽建议您为远程显示流使用备选解决方案:

  • 要访问远程控制台,请使用 VNC 协议。
  • 对于高级远程显示功能,请使用 RDP、HP RGS 或 Mechdyne TGX 等第三方工具。

(BZ#1849563)

9.18. 容器

基于 Podman varlink 的 API v1.0 已被删除

基于 Podman varlink 的 API v1.0 在之前的 RHEL 8 版本中已弃用。podman v2.0 引入了一个新的 Podman v2.0 RESTful API。Podman v3.0 发行版本中,基于 varlink 的 API v1.0 已被完全删除。

(JIRA:RHELPLAN-45858)

container-tools:1.0 已弃用

container-tools:1.0 模块已弃用,将不再接收安全更新。建议您使用较新支持的稳定模块流,如 container-tools:2.0container-tools:3.0

(JIRA:RHELPLAN-59825)

container-tools:2.0 模块已被弃用

container-tools:2.0 模块已被弃用,并将不再接受安全更新。建议您使用更新的支持的稳定模块流,如 container-tools:3.0

(JIRA:RHELPLAN-85066)

9.19. 已弃用的软件包

本节列出了已弃用的软件包,可能不会包括在 Red Hat Enterprise Linux 未来的主发行版本中。

有关 RHEL 7 和 RHEL 8 之间的软件包变化,请参阅 采用 RHEL 8 的注意事项 文档中的 对软件包的更改

在 RHEL 8 生命周期结束前,以下软件包已被弃用,但仍然被支持:

  • 389-ds-base-legacy-tools
  • abrt
  • abrt-addon-ccpp
  • abrt-addon-kerneloops
  • abrt-addon-pstoreoops
  • abrt-addon-vmcore
  • abrt-addon-xorg
  • abrt-cli
  • abrt-console-notification
  • abrt-dbus
  • abrt-desktop
  • abrt-gui
  • abrt-gui-libs
  • abrt-libs
  • abrt-tui
  • adobe-source-sans-pro-fonts
  • adwaita-qt
  • alsa-plugins-pulseaudio
  • amanda
  • amanda-client
  • amanda-libs
  • amanda-server
  • ant-contrib
  • antlr3
  • antlr32
  • aopalliance
  • apache-commons-collections
  • apache-commons-compress
  • apache-commons-exec
  • apache-commons-jxpath
  • apache-commons-parent
  • apache-ivy
  • apache-parent
  • apache-resource-bundles
  • apache-sshd
  • apiguardian
  • aspnetcore-runtime-3.0
  • aspnetcore-runtime-3.1
  • aspnetcore-runtime-5.0
  • aspnetcore-targeting-pack-3.0
  • aspnetcore-targeting-pack-3.1
  • aspnetcore-targeting-pack-5.0
  • assertj-core
  • authd
  • auto
  • autoconf213
  • autogen
  • autogen-libopts
  • awscli
  • base64coder
  • batik
  • bea-stax
  • bea-stax-api
  • bind-export-devel
  • bind-export-libs
  • bind-libs-lite
  • bind-pkcs11
  • bind-pkcs11-devel
  • bind-pkcs11-libs
  • bind-pkcs11-utils
  • bind-sdb
  • bind-sdb
  • bind-sdb-chroot
  • bluez-hid2hci
  • boost-jam
  • boost-signals
  • bouncycastle
  • bpg-algeti-fonts
  • bpg-chveulebrivi-fonts
  • bpg-classic-fonts
  • bpg-courier-fonts
  • bpg-courier-s-fonts
  • bpg-dedaena-block-fonts
  • bpg-dejavu-sans-fonts
  • bpg-elite-fonts
  • bpg-excelsior-caps-fonts
  • bpg-excelsior-condenced-fonts
  • bpg-excelsior-fonts
  • bpg-fonts-common
  • bpg-glaho-fonts
  • bpg-gorda-fonts
  • bpg-ingiri-fonts
  • bpg-irubaqidze-fonts
  • bpg-mikhail-stephan-fonts
  • bpg-mrgvlovani-caps-fonts
  • bpg-mrgvlovani-fonts
  • bpg-nateli-caps-fonts
  • bpg-nateli-condenced-fonts
  • bpg-nateli-fonts
  • bpg-nino-medium-cond-fonts
  • bpg-nino-medium-fonts
  • bpg-sans-fonts
  • bpg-sans-medium-fonts
  • bpg-sans-modern-fonts
  • bpg-sans-regular-fonts
  • bpg-serif-fonts
  • bpg-serif-modern-fonts
  • bpg-ucnobi-fonts
  • brlapi-java
  • bsh
  • buildnumber-maven-plugin
  • byaccj
  • cal10n
  • cbi-plugins
  • cdparanoia
  • cdparanoia-devel
  • cdparanoia-libs
  • cdrdao
  • cmirror
  • codehaus-parent
  • codemodel
  • compat-exiv2-026
  • compat-guile18
  • compat-hwloc1
  • compat-libpthread-nonshared
  • compat-libtiff3
  • compat-openssl10
  • compat-sap-c++-11
  • compat-sap-c++-10
  • compat-sap-c++-9
  • createrepo_c-devel
  • ctags
  • ctags-etags
  • custodia
  • cyrus-imapd-vzic
  • dbus-c++
  • dbus-c++-devel
  • dbus-c++-glib
  • dbxtool
  • dhcp-libs
  • dirsplit
  • dleyna-connector-dbus
  • dleyna-core
  • dleyna-renderer
  • dleyna-server
  • dnssec-trigger
  • dnssec-trigger-panel
  • dotnet-apphost-pack-3.0
  • dotnet-apphost-pack-3.1
  • dotnet-apphost-pack-5.0
  • dotnet-host-fxr-2.1
  • dotnet-host-fxr-2.1
  • dotnet-hostfxr-3.0
  • dotnet-hostfxr-3.1
  • dotnet-hostfxr-5.0
  • dotnet-runtime-2.1
  • dotnet-runtime-3.0
  • dotnet-runtime-3.1
  • dotnet-runtime-5.0
  • dotnet-sdk-2.1
  • dotnet-sdk-2.1.5xx
  • dotnet-sdk-3.0
  • dotnet-sdk-3.1
  • dotnet-sdk-5.0
  • dotnet-targeting-pack-3.0
  • dotnet-targeting-pack-3.1
  • dotnet-targeting-pack-5.0
  • dotnet-templates-3.0
  • dotnet-templates-3.1
  • dotnet-templates-5.0
  • dotnet5.0-build-reference-packages
  • dptfxtract
  • drpm
  • drpm-devel
  • dump
  • dvd+rw-tools
  • dyninst-static
  • eclipse-ecf
  • eclipse-emf
  • eclipse-license
  • ed25519-java
  • ee4j-parent
  • elfutils-devel-static
  • elfutils-libelf-devel-static
  • enca
  • enca-devel
  • environment-modules-compat
  • evince-browser-plugin
  • exec-maven-plugin
  • farstream02
  • felix-osgi-compendium
  • felix-osgi-core
  • felix-osgi-foundation
  • felix-parent
  • file-roller
  • fipscheck
  • fipscheck-devel
  • fipscheck-lib
  • firewire
  • fonts-tweak-tool
  • forge-parent
  • freeradius-mysql
  • freeradius-perl
  • freeradius-postgresql
  • freeradius-sqlite
  • freeradius-unixODBC
  • fuse-sshfs
  • fusesource-pom
  • future
  • gamin
  • gamin-devel
  • gavl
  • gcc-toolset-10
  • gcc-toolset-10-annobin
  • gcc-toolset-10-binutils
  • gcc-toolset-10-binutils-devel
  • gcc-toolset-10-build
  • gcc-toolset-10-dwz
  • gcc-toolset-10-dyninst
  • gcc-toolset-10-dyninst-devel
  • gcc-toolset-10-elfutils
  • gcc-toolset-10-elfutils-debuginfod-client
  • gcc-toolset-10-elfutils-debuginfod-client-devel
  • gcc-toolset-10-elfutils-devel
  • gcc-toolset-10-elfutils-libelf
  • gcc-toolset-10-elfutils-libelf-devel
  • gcc-toolset-10-elfutils-libs
  • gcc-toolset-10-gcc
  • gcc-toolset-10-gcc-c++
  • gcc-toolset-10-gcc-gdb-plugin
  • gcc-toolset-10-gcc-gfortran
  • gcc-toolset-10-gdb
  • gcc-toolset-10-gdb-doc
  • gcc-toolset-10-gdb-gdbserver
  • gcc-toolset-10-libasan-devel
  • gcc-toolset-10-libatomic-devel
  • gcc-toolset-10-libitm-devel
  • gcc-toolset-10-liblsan-devel
  • gcc-toolset-10-libquadmath-devel
  • gcc-toolset-10-libstdc++-devel
  • gcc-toolset-10-libstdc++-docs
  • gcc-toolset-10-libtsan-devel
  • gcc-toolset-10-libubsan-devel
  • gcc-toolset-10-ltrace
  • gcc-toolset-10-make
  • gcc-toolset-10-make-devel
  • gcc-toolset-10-perftools
  • gcc-toolset-10-runtime
  • gcc-toolset-10-strace
  • gcc-toolset-10-systemtap
  • gcc-toolset-10-systemtap-client
  • gcc-toolset-10-systemtap-devel
  • gcc-toolset-10-systemtap-initscript
  • gcc-toolset-10-systemtap-runtime
  • gcc-toolset-10-systemtap-sdt-devel
  • gcc-toolset-10-systemtap-server
  • gcc-toolset-10-toolchain
  • gcc-toolset-10-valgrind
  • gcc-toolset-10-valgrind-devel
  • gcc-toolset-9
  • gcc-toolset-9-annobin
  • gcc-toolset-9-build
  • gcc-toolset-9-perftools
  • gcc-toolset-9-runtime
  • gcc-toolset-9-toolchain
  • gcc-toolset-11-make-devel
  • GConf2
  • GConf2-devel
  • gegl
  • genisoimage
  • genwqe-tools
  • genwqe-vpd
  • genwqe-zlib
  • genwqe-zlib-devel
  • geoipupdate
  • geronimo-annotation
  • geronimo-jms
  • geronimo-jpa
  • geronimo-parent-poms
  • gfbgraph
  • gflags
  • gflags-devel
  • glassfish-annotation-api
  • glassfish-el
  • glassfish-fastinfoset
  • glassfish-jaxb-core
  • glassfish-jaxb-txw2
  • glassfish-jsp
  • glassfish-jsp-api
  • glassfish-legal
  • glassfish-master-pom
  • glassfish-servlet-api
  • glew-devel
  • glib2-fam
  • glog
  • glog-devel
  • gmock
  • gmock-devel
  • gnome-abrt
  • gnome-boxes
  • gnome-menus-devel
  • gnome-online-miners
  • gnome-shell-extension-disable-screenshield
  • gnome-shell-extension-horizontal-workspaces
  • gnome-shell-extension-no-hot-corner
  • gnome-shell-extension-window-grouper
  • gnome-themes-standard
  • gnu-free-fonts-common
  • gnu-free-mono-fonts
  • gnu-free-sans-fonts
  • gnu-free-serif-fonts
  • gnupg2-smime
  • gnuplot
  • gnuplot-common
  • gobject-introspection-devel
  • google-gson
  • google-noto-sans-syriac-eastern-fonts
  • google-noto-sans-syriac-estrangela-fonts
  • google-noto-sans-syriac-western-fonts
  • google-noto-sans-tibetan-fonts
  • google-noto-sans-ui-fonts
  • gphoto2
  • gsl-devel
  • gssntlmssp
  • gtest
  • gtest-devel
  • gtkmm24
  • gtkmm24-devel
  • gtkmm24-docs
  • gtksourceview3
  • gtksourceview3-devel
  • gtkspell
  • gtkspell-devel
  • gtkspell3
  • guile
  • gutenprint-gimp
  • gutenprint-libs-ui
  • gvfs-afc
  • gvfs-afp
  • gvfs-archive
  • hamcrest-core
  • hawtjni
  • hawtjni
  • hawtjni-runtime
  • highlight-gui
  • hivex-devel
  • 主机名
  • hplip-gui
  • httpcomponents-project
  • hwloc-plugins
  • hyphen-fo
  • hyphen-grc
  • hyphen-hsb
  • hyphen-ia
  • hyphen-is
  • hyphen-ku
  • hyphen-mi
  • hyphen-mn
  • hyphen-sa
  • hyphen-tk
  • ibus-sayura
  • icedax
  • icu4j
  • idm-console-framework
  • iptables
  • ipython
  • isl
  • isl-devel
  • isorelax
  • istack-commons-runtime
  • istack-commons-tools
  • iwl3945-firmware
  • iwl4965-firmware
  • iwl6000-firmware
  • jacoco
  • jaf
  • jakarta-oro
  • janino
  • jansi-native
  • jarjar
  • java-1.8.0-ibm
  • java-1.8.0-ibm-demo
  • java-1.8.0-ibm-devel
  • java-1.8.0-ibm-headless
  • java-1.8.0-ibm-jdbc
  • java-1.8.0-ibm-plugin
  • java-1.8.0-ibm-src
  • java-1.8.0-ibm-webstart
  • java-1.8.0-openjdk-accessibility
  • java-1.8.0-openjdk-accessibility-slowdebug
  • java_cup
  • java-atk-wrapper
  • javacc
  • javacc-maven-plugin
  • javaewah
  • javaparser
  • javapoet
  • javassist
  • javassist-javadoc
  • jaxen
  • jboss-annotations-1.2-api
  • jboss-interceptors-1.2-api
  • jboss-logmanager
  • jboss-parent
  • jctools
  • jdepend
  • jdependency
  • jdom
  • jdom2
  • jetty
  • jffi
  • jflex
  • jgit
  • jline
  • jnr-netdb
  • jolokia-jvm-agent
  • js-uglify
  • jsch
  • json_simple
  • jss-javadoc
  • jtidy
  • junit5
  • jvnet-parent
  • jzlib
  • kernel-cross-headers
  • ksc
  • kurdit-unikurd-web-fonts
  • kyotocabinet-libs
  • ldapjdk-javadoc
  • lensfun
  • lensfun-devel
  • lftp-scripts
  • libaec
  • libaec-devel
  • libappindicator-gtk3
  • libappindicator-gtk3-devel
  • libatomic-static
  • libavc1394
  • libblocksruntime
  • libcacard
  • libcacard-devel
  • libcgroup
  • libcgroup-tools
  • libchamplain
  • libchamplain-devel
  • libchamplain-gtk
  • libcroco
  • libcroco-devel
  • libcxl
  • libcxl-devel
  • libdap
  • libdap-devel
  • libdazzle-devel
  • libdbusmenu
  • libdbusmenu-devel
  • libdbusmenu-doc
  • libdbusmenu-gtk3
  • libdbusmenu-gtk3-devel
  • libdc1394
  • libdnet
  • libdnet-devel
  • libdv
  • libdwarf
  • libdwarf-devel
  • libdwarf-static
  • libdwarf-tools
  • libeasyfc
  • libeasyfc-gobject
  • libepubgen-devel
  • libertas-sd8686-firmware
  • libertas-usb8388-firmware
  • libertas-usb8388-olpc-firmware
  • libgdither
  • libGLEW
  • libgovirt
  • libguestfs-benchmarking
  • libguestfs-devel
  • libguestfs-gfs2
  • libguestfs-gobject
  • libguestfs-gobject-devel
  • libguestfs-java
  • libguestfs-java-devel
  • libguestfs-javadoc
  • libguestfs-man-pages-ja
  • libguestfs-man-pages-uk
  • libguestfs-tools
  • libguestfs-tools-c
  • libhugetlbfs
  • libhugetlbfs-devel
  • libhugetlbfs-utils
  • libIDL
  • libIDL-devel
  • libidn
  • libiec61883
  • libindicator-gtk3
  • libindicator-gtk3-devel
  • libiscsi-devel
  • libjose-devel
  • libkkc
  • libkkc-common
  • libkkc-data
  • libldb-devel
  • liblogging
  • libluksmeta-devel
  • libmalaga
  • libmcpp
  • libmemcached
  • libmemcached-libs
  • libmetalink
  • libmodulemd1
  • libmongocrypt
  • libmtp-devel
  • libmusicbrainz5
  • libmusicbrainz5-devel
  • libnbd-devel
  • liboauth
  • liboauth-devel
  • libpfm-static
  • libpng12
  • libpurple
  • libpurple-devel
  • libraw1394
  • libreport-plugin-mailx
  • libreport-plugin-rhtsupport
  • libreport-plugin-ureport
  • libreport-rhel
  • libreport-rhel-bugzilla
  • librpmem
  • librpmem-debug
  • librpmem-devel
  • libsass
  • libsass-devel
  • libselinux-python
  • libsqlite3x
  • libtalloc-devel
  • libtar
  • libtdb-devel
  • libtevent-devel
  • libtpms-devel
  • libunwind
  • libusal
  • libvarlink
  • libverto-libevent
  • libvirt-admin
  • libvirt-bash-completion
  • libvirt-daemon-driver-storage-gluster
  • libvirt-daemon-driver-storage-iscsi-direct
  • libvirt-devel
  • libvirt-docs
  • libvirt-gconfig
  • libvirt-gobject
  • libvirt-lock-sanlock
  • libvirt-wireshark
  • libvmem
  • libvmem-debug
  • libvmem-devel
  • libvmmalloc
  • libvmmalloc-debug
  • libvmmalloc-devel
  • libvncserver
  • libwinpr-devel
  • libwmf
  • libwmf-devel
  • libwmf-lite
  • libXNVCtrl
  • libyami
  • log4j12
  • log4j12-javadoc
  • lohit-malayalam-fonts
  • lohit-nepali-fonts
  • lorax-composer
  • lua-guestfs
  • lucene
  • mailman
  • mailx
  • make-devel
  • malaga
  • malaga-suomi-voikko
  • marisa
  • maven-antrun-plugin
  • maven-assembly-plugin
  • maven-clean-plugin
  • maven-dependency-analyzer
  • maven-dependency-plugin
  • maven-doxia
  • maven-doxia-sitetools
  • maven-install-plugin
  • maven-invoker
  • maven-invoker-plugin
  • maven-parent
  • maven-plugins-pom
  • maven-reporting-api
  • maven-reporting-impl
  • maven-resolver-api
  • maven-resolver-connector-basic
  • maven-resolver-impl
  • maven-resolver-spi
  • maven-resolver-transport-wagon
  • maven-resolver-util
  • maven-scm
  • maven-script-interpreter
  • maven-shade-plugin
  • maven-shared
  • maven-verifier
  • maven-wagon-file
  • maven-wagon-http
  • maven-wagon-http-shared
  • maven-wagon-provider-api
  • maven2
  • meanwhile
  • mercurial
  • mercurial-hgk
  • meetis
  • metis-devel
  • mingw32-bzip2
  • mingw32-bzip2-static
  • mingw32-cairo
  • mingw32-expat
  • mingw32-fontconfig
  • mingw32-freetype
  • mingw32-freetype-static
  • mingw32-gstreamer1
  • mingw32-harfbuzz
  • mingw32-harfbuzz-static
  • mingw32-icu
  • mingw32-libjpeg-turbo
  • mingw32-libjpeg-turbo-static
  • mingw32-libpng
  • mingw32-libpng-static
  • mingw32-libtiff
  • mingw32-libtiff-static
  • mingw32-openssl
  • mingw32-readline
  • mingw32-sqlite
  • mingw32-sqlite-static
  • mingw64-adwaita-icon-theme
  • mingw64-bzip2
  • mingw64-bzip2-static
  • mingw64-cairo
  • mingw64-expat
  • mingw64-fontconfig
  • mingw64-freetype
  • mingw64-freetype-static
  • mingw64-gstreamer1
  • mingw64-harfbuzz
  • mingw64-harfbuzz-static
  • mingw64-icu
  • mingw64-libjpeg-turbo
  • mingw64-libjpeg-turbo-static
  • mingw64-libpng
  • mingw64-libpng-static
  • mingw64-libtiff
  • mingw64-libtiff-static
  • mingw64-nettle
  • mingw64-openssl
  • mingw64-readline
  • mingw64-sqlite
  • mingw64-sqlite-static
  • modello
  • mojo-parent
  • mongo-c-driver
  • mousetweaks
  • mozjs52
  • mozjs52-devel
  • mozjs60
  • mozjs60-devel
  • mozvoikko
  • msv-javadoc
  • msv-manual
  • munge-maven-plugin
  • mythes-mi
  • mythes-ne
  • nafees-web-naskh-fonts
  • nbd
  • nbdkit-devel
  • nbdkit-example-plugins
  • nbdkit-gzip-plugin
  • nbdkit-plugin-python-common
  • nbdkit-plugin-vddk
  • ncompress
  • ncurses-compat-libs
  • net-tools
  • netcf
  • netcf-devel
  • netcf-libs
  • network-scripts
  • network-scripts-ppp
  • nkf
  • nss_nis
  • nss-pam-ldapd
  • objectweb-asm
  • objectweb-asm-javadoc
  • objectweb-pom
  • ocaml-bisect-ppx
  • ocaml-camlp4
  • ocaml-camlp4-devel
  • ocaml-lwt
  • ocaml-mmap
  • ocaml-ocplib-endian
  • ocaml-ounit
  • ocaml-result
  • ocaml-seq
  • opencryptoki-tpmtok
  • opencv-contrib
  • opencv-core
  • opencv-devel
  • openhpi
  • openhpi-libs
  • OpenIPMI-perl
  • openssh-cavs
  • openssh-ldap
  • openssl-ibmpkcs11
  • opentest4j
  • os-maven-plugin
  • pakchois
  • pandoc
  • paps-libs
  • paranamer
  • parfait
  • parfait-examples
  • parfait-javadoc
  • pcp-parfait-agent
  • pcp-pmda-rpm
  • pcp-pmda-vmware
  • pcsc-lite-doc
  • peripety
  • perl-B-Debug
  • perl-B-Lint
  • perl-Class-Factory-Util
  • perl-Class-ISA
  • perl-DateTime-Format-HTTP
  • perl-DateTime-Format-Mail
  • perl-File-CheckTree
  • perl-homedir
  • perl-libxml-perl
  • perl-Locale-Codes
  • perl-Mozilla-LDAP
  • perl-NKF
  • perl-Object-HashBase-tools
  • perl-Package-DeprecationManager
  • perl-Pod-LaTeX
  • perl-Pod-Plainer
  • perl-prefork
  • perl-String-CRC32
  • perl-SUPER
  • perl-Sys-Virt
  • perl-tests
  • perl-YAML-Syck
  • phodav
  • php-recode
  • php-xmlrpc
  • pidgin
  • pidgin-devel
  • pidgin-sipe
  • pinentry-emacs
  • pinentry-gtk
  • pipewire0.2-devel
  • pipewire0.2-libs
  • platform-python-coverage
  • plexus-ant-factory
  • plexus-bsh-factory
  • plexus-cli
  • plexus-component-api
  • plexus-component-factories-pom
  • plexus-components-pom
  • plexus-i18n
  • plexus-interactive
  • plexus-pom
  • plexus-velocity
  • plymouth-plugin-throbgress
  • powermock
  • prometheus-jmx-exporter
  • prometheus-jmx-exporter-openjdk11
  • ptscotch-mpich
  • ptscotch-mpich-devel
  • ptscotch-mpich-devel-parmetis
  • ptscotch-openmpi
  • ptscotch-openmpi-devel
  • purple-sipe
  • pygobject2-doc
  • pygtk2
  • pygtk2-codegen
  • pygtk2-devel
  • pygtk2-doc
  • python-nose-docs
  • python-nss-doc
  • python-podman-api
  • python-psycopg2-doc
  • python-pymongo-doc
  • python-redis
  • python-schedutils
  • python-slip
  • python-sqlalchemy-doc
  • python-varlink
  • python-virtualenv-doc
  • python2-backports
  • python2-backports-ssl_match_hostname
  • python2-bson
  • python2-coverage
  • python2-docs
  • python2-docs-info
  • python2-funcsigs
  • python2-ipaddress
  • python2-mock
  • python2-nose
  • python2-numpy-doc
  • python2-psycopg2-debug
  • python2-psycopg2-tests
  • python2-pymongo
  • python2-pymongo-gridfs
  • python2-pytest-mock
  • python2-sqlalchemy
  • python2-tools
  • python2-virtualenv
  • python3-bson
  • python3-click
  • python3-coverage
  • python3-cpio
  • python3-custodia
  • python3-docs
  • python3-flask
  • python3-gevent
  • python3-gobject-base
  • python3-hivex
  • python3-html5lib
  • python3-hypothesis
  • python3-ipatests
  • python3-itsdangerous
  • python3-jwt
  • python3-libguestfs
  • python3-mock
  • python3-networkx-core
  • python3-nose
  • python3-nss
  • python3-openipmi
  • python3-pillow
  • python3-ptyprocess
  • python3-pydbus
  • python3-pymongo
  • python3-pymongo-gridfs
  • python3-pyOpenSSL
  • python3-pytoml
  • python3-reportlab
  • python3-schedutils
  • python3-scons
  • python3-semantic_version
  • python3-slip
  • python3-slip-dbus
  • python3-sqlalchemy
  • python3-syspurpose
  • python3-virtualenv
  • python3-webencodings
  • python3-werkzeug
  • python38-asn1crypto
  • python38-numpy-doc
  • python38-psycopg2-doc
  • python38-psycopg2-tests
  • python39-numpy-doc
  • python39-psycopg2-doc
  • python39-psycopg2-tests
  • qemu-kvm-block-gluster
  • qemu-kvm-block-iscsi
  • qemu-kvm-block-ssh
  • qemu-kvm-hw-usbredir
  • qemu-kvm-tests
  • qpdf
  • qpdf-doc
  • qpid-proton
  • qrencode
  • qrencode-devel
  • qrencode-libs
  • qt5-qtcanvas3d
  • qt5-qtcanvas3d-examples
  • rarian
  • rarian-compat
  • re2c
  • recode
  • redhat-menus
  • redhat-support-lib-python
  • redhat-support-tool
  • reflections
  • regexp
  • relaxngDatatype
  • rhsm-gtk
  • rpm-plugin-prioreset
  • rpmemd
  • rsyslog-udpspoof
  • ruby-hivex
  • ruby-libguestfs
  • rubygem-abrt
  • rubygem-abrt-doc
  • rubygem-bson
  • rubygem-bson-doc
  • rubygem-mongo
  • rubygem-mongo-doc
  • s390utils-cmsfs
  • samba-pidl
  • samba-test
  • samba-test-libs
  • samyak-devanagari-fonts
  • samyak-fonts-common
  • samyak-gujarati-fonts
  • samyak-malayalam-fonts
  • samyak-odia-fonts
  • samyak-tamil-fonts
  • sane-frontends
  • sanlk-reset
  • scala
  • scotch
  • scotch-devel
  • SDL_sound
  • selinux-policy-minimum
  • sendmail
  • sgabios
  • sgabios-bin
  • shrinkwrap
  • sisu-inject
  • sisu-mojos
  • sisu-plexus
  • skkdic
  • SLOF
  • smc-anjalioldlipi-fonts
  • smc-dyuthi-fonts
  • smc-fonts-common
  • smc-kalyani-fonts
  • smc-raghumalayalam-fonts
  • smc-suruma-fonts
  • softhsm-devel
  • sonatype-oss-parent
  • sonatype-plugins-parent
  • sos-collector
  • sparsehash-devel
  • spax
  • spec-version-maven-plugin
  • spice
  • spice-client-win-x64
  • spice-client-win-x86
  • spice-glib
  • spice-glib-devel
  • spice-gtk
  • spice-gtk-tools
  • spice-gtk3
  • spice-gtk3-devel
  • spice-gtk3-vala
  • spice-parent
  • spice-protocol
  • spice-qxl-wddm-dod
  • spice-server
  • spice-server-devel
  • spice-qxl-xddm
  • spice-server
  • spice-streaming-agent
  • spice-vdagent-win-x64
  • spice-vdagent-win-x86
  • sssd-libwbclient
  • star
  • stax-ex
  • stax2-api
  • stringtemplate
  • stringtemplate4
  • subscription-manager-initial-setup-addon
  • subscription-manager-migration
  • subscription-manager-migration-data
  • subversion-javahl
  • SuperLU
  • SuperLU-devel
  • supermin-devel
  • swig
  • swig-doc
  • swig-gdb
  • swtpm-devel
  • swtpm-tools-pkcs11
  • system-storage-manager
  • tcl-brlapi
  • testng
  • tibetan-machine-uni-fonts
  • timedatex
  • tpm-quote-tools
  • tpm-tools
  • tpm-tools-pkcs11
  • treelayout
  • trousers
  • trousers-lib
  • tuned-profiles-compat
  • tuned-profiles-nfv-host-bin
  • tuned-utils-systemtap
  • tycho
  • uglify-js
  • unbound-devel
  • univocity-output-tester
  • univocity-parsers
  • usbguard-notifier
  • usbredir-devel
  • utf8cpp
  • uthash
  • velocity
  • vinagre
  • vino
  • virt-dib
  • virt-p2v-maker
  • vm-dump-metrics-devel
  • weld-parent
  • wodim
  • woodstox-core
  • wqy-microhei-fonts
  • wqy-unibit-fonts
  • xdelta
  • xmlgraphics-commons
  • xmlstreambuffer
  • xinetd
  • xorg-x11-apps
  • xorg-x11-drv-qxl
  • xorg-x11-server-Xspice
  • xpp3
  • xsane-gimp
  • xsom
  • xz-java
  • xz-java-javadoc
  • yajl-devel
  • yp-tools
  • ypbind
  • ypserv

9.20. 弃用和不维护的设备

本节列出了继续被支持的设备(驱动程序、适配器)

  • ,直到 RHEL 8 生命周期结束,但可能在这个产品以后的主要发行本中不被支持,不建议在新的部署中使用。对列出的设备的支持不会改变。这些是 弃用的 设备。
  • 可用,但不再在 RHEL 8 中进行常规测试或更新。红帽可自行决定修复严重的 bug,包括安全性 bug。这些设备不应再在生产环境中使用,很可能会在下一个主发行版本中被禁用。这些是 不维护的 设备。

PCI 设备 ID 采用 vendor:device:subvendor:subdevice 的格式。如果没有列出设备 ID,则与相应驱动程序关联的所有设备都会被弃用。要在您的系统中检查硬件的 PCI ID,请运行 lspci -nn 命令。

表 9.1. 弃用的设备

设备 ID驱动设备名称
 

bnx2

QLogic BCM5706/5708/5709/5716 驱动程序

 

hpsa

惠普公司: 智能阵列控制器

0x10df:0x0724

lpfc

Emulex 公司:OneConnect FCoE Initiator(Skyhawk)

0x10df:0xe200

lpfc

Emulex 公司:LPe15000/LPe16000 系列 8Gb/16Gb 光纤通道适配器

0x10df:0xf011

lpfc

Emulex 公司:Saturn: LightPulse 光纤通道主机适配器

0x10df:0xf015

lpfc

Emulex 公司:Saturn: LightPulse 光纤通道主机适配器

0x10df:0xf100

lpfc

Emulex 公司:LPe12000 系列 8Gb 光纤通道适配器

0x10df:0xfc40

lpfc

Emulex 公司:Saturn-X: LightPulse 光纤通道主机适配器

0x10df:0xe220

be2net

Emulex 公司:OneConnect NIC(Lancer)

0x1000:0x005b

megaraid_sas

Broadcom / LSI: MegaRAID SAS 2208 [Thunderbolt]

0x1000:0x006E

mpt3sas

Broadcom / LSI: SAS2308 PCI-Express Fusion-MPT SAS-2

0x1000:0x0080

mpt3sas

Broadcom / LSI: SAS2208 PCI-Express Fusion-MPT SAS-2

0x1000:0x0081

mpt3sas

Broadcom / LSI: SAS2208 PCI-Express Fusion-MPT SAS-2

0x1000:0x0082

mpt3sas

Broadcom / LSI: SAS2208 PCI-Express Fusion-MPT SAS-2

0x1000:0x0083

mpt3sas

Broadcom / LSI: SAS2208 PCI-Express Fusion-MPT SAS-2

0x1000:0x0084

mpt3sas

Broadcom / LSI: SAS2208 PCI-Express Fusion-MPT SAS-2

0x1000:0x0085

mpt3sas

Broadcom / LSI: SAS2208 PCI-Express Fusion-MPT SAS-2

0x1000:0x0086

mpt3sas

Broadcom / LSI: SAS2308 PCI-Express Fusion-MPT SAS-2

0x1000:0x0087

mpt3sas

Broadcom / LSI: SAS2308 PCI-Express Fusion-MPT SAS-2

 

myri10ge

Myricom 10G 驱动程序(10GbE)

 

netxen_nic

QLogic/NetXen(1/10)GbE 智能以太网驱动程序

0x1077:0x2031

qla2xxx

QLogic 公司: 基于 ISP8324 的 16Gb 光纤通道到 PCI Express 适配器

0x1077:0x2532

qla2xxx

QLogic 公司: 基于 ISP2532 的 8Gb 光纤通道到 PCI Express 适配器

0x1077:0x8031

qla2xxx

QLogic 公司: 8300 系列 10GbE 聚合网络适配器(FCoE)

 

qla3xxx

QLogic ISP3XXX 网络驱动程序 v2.03.00-k5

0x1924:0x0803

sfc

Solarflare 通信: SFC9020 10G 以太网控制器

0x1924:0x0813

sfc

Solarflare 通信: SFL9021 10GBASE-T 以太网控制器

 

Soft-RoCE (rdma_rxe)

 
 

HNS-RoCE

HNS GE/10GE/25GE/50GE/100GE RDMA Network Controller

 

liquidio

Cavium LiquidIO 智能服务器适配器驱动程序

 

liquidio_vf

Cavium LiquidIO 智能服务器适配器虚拟功能驱动程序

表 9.2. 不维护的设备

设备 ID驱动设备名称
 

e1000

Intel® PRO/1000 网络驱动程序

 

mptbase

Fusion MPT SAS 主机驱动程序

 

mptsas

Fusion MPT SAS 主机驱动程序

 

mptscsih

Fusion MPT SCSI 主机驱动程序

 

mptspi

Fusion MPT SAS 主机驱动程序

0x1000:0x0071 [a]

megaraid_sas

Broadcom / LSI: MR SAS HBA 2004

0x1000:0x0073 [a]

megaraid_sas

Broadcom / LSI: MegaRAID SAS 2008 [Falcon]

0x1000:0x0079 [a]

megaraid_sas

Broadcom / LSI: MegaRAID SAS 2108 [Liberator]

 

nvmet_tcp

NVMe/TCP 目标驱动程序

[a] 在 RHEL 8.0 中禁用了,由于客户请求,在 RHEL 8.4 中被重新启用了。

第 10 章 已知问题

这部分描述了 Red Hat Enterprise Linux 8.6 中的已知问题。

10.1. 安装程序和镜像创建

在具有 LPAR 并启用了 secure boot 的 IBM Power 10 系统上安装失败

RHEL 安装程序没有与 IBM Power 10 系统上静态密钥安全引导集成。因此,当使用 secure 引导选项启用逻辑分区(LPAR)时,安装会失败并显示错误,Unable to proceed with RHEL-x.x Installation

要临时解决这个问题,请安装 RHEL 但不启用 secure boot。引导系统后:

  1. 使用 dd 命令将签名的内核复制到 PReP 分区。
  2. 重启系统并启用 secure boot。

一旦固件验证了引导加载程序和内核,系统就可以成功引导。

如需更多信息,请参阅 https://www.ibm.com/support/pages/node/6528884

(BZ#2025814)

在 Anaconda 作为应用程序运行的系统上意外的 SELinux 策略

当 Anaconda 作为应用程序运行在已安装的系统上(例如,使用 -image anaconda 选项对镜像文件执行另一次安装)时,不禁止系统在安装过程中修改 SELinux 类型和属性。因此,某些 SELinux 策略的元素可能会在运行Anaconda 的系统上发生更改。要临时解决这个问题,请不要在生产环境系统上运行 Anaconda,而在临时虚拟机中执行它。因此,生产系统上的 SELinux 策略没有被修改。作为系统安装过程的一部分运行 anaconda,如从 boot.isodvd.iso 安装不会受此问题的影响。

(BZ#2050140)

authauthconfig Kickstart 命令需要 AppStream 软件仓库

authauthconfig Kickstart 命令在安装过程中需要 authselect-compat 软件包。如果没有这个软件包,如果使用了 authauthconfig,则安装会失败。但根据设计,authselect-compat 软件包只包括在 AppStream 仓库中。

要临时解决这个问题,请确定安装程序可使用 BaseOS 和 AppStream 软件仓库,或者在安装过程中使用 authselect Kickstart 命令。

(BZ#1640697)

reboot --kexecinst.kexec 命令不提供可预测的系统状态

使用 reboot --kexec Kickstart 命令或 inst.kexec 内核引导参数执行 RHEL 安装不会提供与完全重启相同的可预期系统状态。因此,在不重启的情况下切换安装的系统可能会导致无法预计的结果。

请注意,kexec 功能已弃用,并将在以后的 Red Hat Enterprise Linux 版本中删除。

(BZ#1697896)

USB CD-ROM 驱动器作为 Anaconda 中的安装源不可用

当源为 USB CD-ROM 驱动器,并且指定了 Kickstart ignoredisk --only-use= 命令时,安装会失败。在这种情况下,Anaconda 无法找到并使用这个源磁盘。

要临时解决这个问题,请使用 harddrive --partition=sdX --dir=/ 命令从 USB CD-ROM 驱动器安装。因此,安装不会失败。

BZ#1914955

在安装程序中不默认启用网络访问

几个安装功能需要网络访问,例如:使用 Content Delivery Network(CDN)、NTP 服务器支持和网络安装源注册系统。但默认情况下不启用网络访问,因此在启用网络访问前无法使用这些功能。

要临时解决这个问题,请添加 ip=dhcp 在启动安装时启用网络访问。另外,使用引导选项传递 Kickstart 文件或位于网络中的库也会解决这个问题。因此可以使用基于网络的安装功能。

(BZ#1757877)

使用 iso9660 文件系统的硬盘分区安装失败

您不能在使用 iso9660 文件系统进行分区的系统中安装 RHEL。这是因为将设置为忽略包含 iso9660 文件系统分区的硬盘的更新安装代码。即使在没有使用 DVD 的情况下安装 RHEL,也会发生这种情况。

要解决这个问题,请在 kickstart 文件中添加以下脚本,以在安装开始前格式化磁盘。

注:在执行临时解决方案前,请备份磁盘上的数据。erafs 命令对磁盘中的所有现有数据进行格式化。

%pre
wipefs -a /dev/sda
%end

因此,安装可以正常工作,且没有任何错误。

(BZ#1929105)

具有 HASH MMU 模式的 IBM Power 系统无法引导,显示内存分配失败

具有 HASH 内存分配单元(MMU) 模式的 IBM Power Systems 最多支持 192 个核的 kdump 。因此,如果在超过 192 个核上启用了 kdump,则系统会无法引导,显示内存分配失败。这个限制是因为 HASH MMU 模式下早期引导过程中的 RMA 内存分配。要临时解决这个问题,请使用启用了 fadumpRadix MMU 模式,而不是使用 kdump

(BZ#2028361)

10.2. 订阅管理

syspurpose addonssubscription-manager attach --auto 输出没有影响。

在 Red Hat Enterprise Linux 8 中,添加了 syspurpose 命令行工具的四个属性:roleusageservice_level_agreementaddons目前,只有 roleusageservice_level_agreement 会影响到运行 subscription-manager attach --auto 命令的输出。试图为 addons 参数设置值的用户不会观察到对自动附加的订阅有任何影响。

(BZ#1687900)

10.3. 软件管理

cr_compress_file_with_stat() 可能会导致内存泄漏

createrepo_c C 库包含 API cr_compress_file_with_stat() 函数。这个函数被声明为以 char **dst 作为第二个参数。根据其他参数,cr_compress_file_with_stat() 要么使用 dst 作为输入参数,要么使用它来返回一个分配的字符串。这种无法预测的行为可能会导致内存泄漏,因为它不会通知用户何时释放 dst内容。

要临时解决这个问题,增加了一个新的 API cr_compress_file_with_stat_v2 函数,它只使用 dst 参数作为输入。它被声明为 char *dst。这可防止内存泄漏。

请注意,cr_compress_file_with_stat_v2 函数为临时的,仅存在于 RHEL 8 中。之后,cr_compress_file_with_stat() 将会被修复。

(BZ#1973588)

当 scriptlet 失败时,YUM 事务被报告为成功

从 RPM 版本 4.6 开始,允许安装后 scriptlet 失败,而不会对事务造成致命影响。这个行为也被传播到 YUM。这导致 scriptlets 可能会偶尔失败,而整个软件包事务报告为成功。

目前还没有可用的临时解决方案。

请注意,这是预期行为,其在 RPM 和 YUM 之间保持一致。scriptlet 中的任何问题都应在软件包层面上解决。

(BZ#1986657)

安全 DNF 升级可以跳过过时的软件包

BZ#2095764 补丁由 RHBA-2022:5816 公告发布,它包括以下回归:使用安全过滤器(如 --security 选项)的 DNF 升级可以跳过升级过时的软件包。当安装的软件包被不同的软件包已过时时,会出现这个问题,并且存在可用的软件包公告。

因此,dnf 在系统中保留过时的软件包,且安全升级没有完全执行,可能会使系统处于存在安全漏洞的状态。

要临时解决这个问题,在不使用安全过滤器的情况下执行完整的升级,或者首先验证升级过程中没有过时的软件包。

(BZ#2095764)

10.4. Shell 和命令行工具

coreutils 可能会报告误导性的 EPERM 错误代码

GNU Core 工具(coreutils)使用 statx() 系统调用启动了。如果 seccomp 过滤器返回一个未知系统调用的 EPERM 错误代码,coreutils 可能会报告误导性 EPERM 错误代码,因为无法将 EPERM 与正常工作的 statx() 系统调用所返回的实际的 Operation not permitted 错误区分开。

要临时解决这个问题,请更新 seccomp 过滤器,使其要么允许 statx() 系统调用,要么对其它不知道的系统调用返回 ENOSYS 错误代码。

(BZ#2030661)

10.5. 基础架构服务

FIPS 模式中的 postfix TLS 指纹算法需要改为 SHA-256

默认情况下,在 RHEL 8中,postfix使用带有TLS 的MD5 指纹来进行向后兼容。但是在 FIPS 模式中,MD5 哈希功能不可用,这可能会导致 TLS 在默认 postfix 配置中不正确正常工作。要解决这个问题,在 postfix 配置文件中需要将哈希功能改为 SHA-256。

如需了解更多详细信息,请参阅 Fix postfix TLS in the FIPS mode by switching to SHA-256 instead of MD5

(BZ#1711885)

brltty 软件包与 multilib 不兼容

不可能同时安装 32 位和 64 位版本的 brltty 软件包。您要么安装 32 位(brltty.i686),要么安装 64 位(brltty.x86_64)版本的软件包。建议使用 64 位版本。

(BZ#2008197)

10.6. 安全性

/etc/passwd- 的文件权限与CIS RHEL 8 Benchmark 1.0.0不一致

由于 CIS Benchmark 存在问题,修正 SCAP 规则可以确保 /etc/passwd- backup 文件中的权限被配置为 0644。但是 CIS Red Hat Enterprise Linux 8 Benchmark 1.0.0 需要该文件的文件权限 0600。因此,在修复后, /etc/passwd- 的文件权限与基准数据不一致。

(BZ#1858866)

libselinux-python 只能通过其模块提供

libselinux-python 软件包只包含用于开发 SELinux 应用程序的 Python 2 绑定,它用于向后兼容。因此,通过 yum install libselinux-python 命令,默认的 RHEL 8 软件仓库中不再提供 libselinux-python

要临时解决这个问题,请启用 libselinux-pythonpython27 模块,并使用以下命令安装 libselinux-python 软件包及其相依性软件包:

# yum module enable libselinux-python
# yum install libselinux-python

或者,使用它的安装配置集在一个命令中安装 libselinux-python:

# yum module install libselinux-python:2.8/common

因此,您可以使用相关的模块安装 libselinux-python

(BZ#1666328)

UDICA 仅在使用 --env container=podman 启动时才会处理 UBI 8 容器

Red Hat Universal Base Image 8(UBI 8)容器将 container 环境变量设置为 oci 值,而不是 podman 值。这可以防止 udica 工具分析容器 JavaScript Object Notation(JSON)文件。

要临时解决这个问题,请使用带有 --env container=podman 参数的 podman 命令启动 UBI 8 容器。因此,只有在使用上述临时解决方案时,udica才能为UBI 8 容器生成 SELinux 策略。

(BZ#1763210)

/etc/selinux/config 中的SELINUX=disabled 无法正常工作

/etc/selinux/config 中使用 SELINUX=disabled 选项禁用 SELinux 会导致内核在启用了 SELinux 的情况下引导,并在稍后的引导过程中切换到禁用模式。这可能导致内存泄漏。

要临时解决这个问题,请在内核命令行中添加 selinux=0 参数来禁用 SELinux,如 使用 SELinux 中的在引导时更改 SELinux 模式部分所述。

(JIRA:RHELPLAN-34199)

sshd -T 提供关于 Ciphers、MAC 和 KeX 算法的不准确的信息

sshd -T 命令的输出不包含系统范围的加密策略配置或可能来自于环境文件 /etc/sysconfig/sshd 的其他选项,它们作为 sshd 命令的参数被应用。这种情况的发生是因为上游 OpenSSH 项目不支持 Include 指令,以支持 RHEL 8 中红帽提供的加密默认值。在使用 EnvironmentFile 启动sshd.service 单元服务的过程中,加密策略作为命令行参数被应用到 sshd 可执行文件中。要临时解决这个问题,请对环境文件使用 source 命令,并将加密策略作为参数传给 sshd 命令,如 sshd -T $CRYPTO_POLICY 。如需更多信息,请参阅 Ciphers、MAC 或 KeX 算法与 sshd -T 的不同,以了解当前加密策略级别所提供的内容。因此,sshd -T 的输出与当前配置的加密策略匹配。

(BZ#2044354)

FIPS 模式中的 openssl 只接受特定的 D-H 参数

在 FIPS 模式中,使用 OpenSSL 的 TLS 客户端返回一个bad dh value 错误,并中止与使用手动生成参数的服务器的 TLS 连接。这是因为 OpenSSL 当配置为符合 FIPS 140-2 时,只可用于符合 NIST SP 800-56A rev3 附加 D(RFC 3526 中定义的组 14、15、16、17 和 18,以及 RFC 7919)中定义的组。另,,使用 OpenSSL 的服务器会忽略所有其他参数,并选择类似大小的已知参数。要临时解决这个问题,请只使用兼容的组。

(BZ#1810911)

crypto-policies 错误地允许 Camellia 密码

RHEL 8 系统范围的加密策略应该在所有策略级别禁用 Camellia 密码,如产品文档中所述。但是 Kerberos 协议默认启用密码。

要临时解决这个问题,请应用 NO-CAMELLIA 子策略:

# update-crypto-policies --set DEFAULT:NO-CAMELLIA

在上一个命令中,如果您已经从 DEFAULT 切换,那么将 DEFAULT 替换为加密级名称。

因此,只有在您通过临时解决方案禁用系统范围的加密策略的所有应用程序中,Camellia 密码才会被正确禁止。

BZ#1919155

通过 OpenSC pkcs15-init 的智能卡配置过程无法正常工作

file_caching 选项在默认的 OpenSC 配置中是启用的,文件缓存功能无法正确处理pkcs15-init 工具中的一些命令。因此,通过 OpenSC 进行智能卡置备过程会失败。

要临时解决这个问题,请在 /etc/opensc.conf 文件中添加以下代码段:

app pkcs15-init {
        framework pkcs15 {
                use_file_caching = false;
        }
}

只有在应用了前面描述的临时解决方案时,通过 pkcs15-init 进行智能卡配置才能正常工作。

BZ#1947025

到带有 SHA-1 签名的服务器的连接无法使用 GnuTLS

GnuTLS 安全通讯库以 insecure 形式拒绝 SHA-1 证书签名。因此,使用 GnuTLS 作为 TLS 后端的应用程序无法建立与提供此类证书的对等的 TLS 连接。这个行为与其他系统加密库不一致。

要临时解决这个问题,请升级服务器以使用 SHA-256 或更强大的哈希签名的证书,或切换到 LEGACY 策略。

(BZ#1628553)

TCP 连接上的 IKE 无法在自定义的 TCP 端口上工作

tcp-remoteport Libreswan 配置选项无法正常工作。因此,当场景需要指定非默认 TCP 端口时,TCP 连接上的 IKE 无法建立。

(BZ#1989050)

在 kickstart 安装过程中修复与服务相关的规则可能会失败

在 kickstart 安装过程中,OpenSCAP 有时会错误地显示不需要服务 enabledisable 状态补救。因此,OpenSCAP 可能会将安装的系统上的服务设置为不合规的状态。作为临时解决方案,您可以在 kickstart 安装后扫描并修复该系统。这可以解决与服务相关的问题。

(BZ#1834716)

在安装过程中强化系统时,RHV hypervisor 可能无法正常工作

安装 Red Hat Virtualization Hypervisor(RHV-H),并应用 Red Hat Enterprise Linux 8 STIG 配置文件时,OSCAP Anaconda Add-on 可将系统强化为 RHEL 而不是 RVH-H ,并删除 RHV-H 的基本软件包。因此,RHV hypervisor 可能无法工作。要临时解决这个问题,请在不应用任何配置文件强化的情况下安装 RHV-H 系统,并在安装完成后使用 OpenSCAP 来应用配置文件。因此,RHV hypervisor 可以正常工作。

(BZ#2075508)

红帽以压缩格式提供 CVE OVAL 报告

红帽以 bzip2 压缩格式 提供 CVE OVAL 源,不再提供 XML 文件格式。RHEL 8 源的位置已相应更新,以反映这个变化。因为引用压缩的内容不是标准化的,因此第三方 SCAP 扫描程序在扫描使用源的规则时可能会遇到问题。

(BZ#2028428)

某些 SSG 中的规则组可能会失败

由于未定义规则及其依赖项的顺序,基准中SCAP Security Guide (SSG)规则的修复可能会失败。如果需要以特定顺序执行两个或多个规则,例如,当一条规则安装组件和另一个规则配置同一组件时,它们可按错误的顺序运行,并报告错误。要临时解决这个问题,请执行补救两次,第二次运行会修复依赖规则。

(BZ#1750755)

Server with GUIWorkstation 安装可能无法使用 CIS 服务器配置文件

CIS Server Level 1 和 Level 2 安全配置文件与 Server with GUIWorkstation 软件选择不兼容。因此,无法使用 Server with GUI 软件选择和 CIS Server 配置文件进行 RHEL 8 安装。使用 CIS Server Level 1 或 Level 2 配置以及这些软件选择之一尝试安装会产生错误信息:

package xorg-x11-server-common has been added to the list of excluded packages, but it can't be removed from the current software selection without breaking the installation.

如果您需要根据 CIS 基准使系统与 Server with GUIWorkstation 软件选择保持一致,请使用 CIS Workstation Level 1 或 Level 2 配置文件。

(BZ#1843932)

Kickstart 在 RHEL 8 中使用 org_fedora_oscap 而不是 com_redhat_oscap

Kickstart 将 Open Security Content Automation Protocol(OSCAP)Anaconda 附加组件引用为 org_fedora_oscap 而不是 com_redhat_oscap,后者可能会导致混淆。这是向后兼容 Red Hat Enterprise Linux 7 所必需的。

(BZ#1665082)

STIG 配置文件中的 SSH 超时规则配置了不正确的选项

OpenSSH 的更新会影响以下国防信息系统局安全技术实施指南(DISA STIG)概要中的规则:

  • DISA STIG for RHEL 8 (xccdf_org.ssgproject.content_profile_stig)
  • DISA STIG with GUI for RHEL 8 (xccdf_org.ssgproject.content_profile_stig_gui)

在每个配置文件中,以下两条规则都会受到影响:

Title: Set SSH Client Alive Count Max to zero
CCE Identifier: CCE-83405-1
Rule ID: xccdf_org.ssgproject.content_rule_sshd_set_keepalive_0
STIG ID: RHEL-08-010200

Title: Set SSH Idle Timeout Interval
CCE Identifier: CCE-80906-1
Rule ID: xccdf_org.ssgproject.content_rule_sshd_set_idle_timeout
STIG ID: RHEL-08-010201

当应用到 SSH 服务器时,每个规则都会配置一个选项(ClientAliveCountMaxClientAliveInterval),其行为不再像之前一样。因此,当 OpenSSH 达到这些规则配置的超时时,OpenSSH 不再断开空闲的 SSH 用户。作为临时解决方案,这些规则已从 DISA STIG for RHEL 8 和 DISA STIG with GUI for RHEL 8 中临时删除,直到开发出解决方案为止。

(BZ#2038977)

某些 rsyslog 优先级字符串无法正常工作

对于允许对加密进行精细控制的 imtcpGnuTLS 优先级字符串的支持并不完整。因此,以下优先级字符串无法在 rsyslog 中正常工作:

NONE:+VERS-ALL:-VERS-TLS1.3:+MAC-ALL:+DHE-RSA:+AES-256-GCM:+SIGN-RSA-SHA384:+COMP-ALL:+GROUP-ALL

要临时解决这个问题,请只使用正确的优先级字符串:

NONE:+VERS-ALL:-VERS-TLS1.3:+MAC-ALL:+ECDHE-RSA:+AES-128-CBC:+SIGN-RSA-SHA1:+COMP-ALL:+GROUP-ALL

因此,当前的配置必须仅限于可正常工作的字符串。

(BZ#1679512)

默认日志设置在性能上的负面影响

默认日志环境设置可能会消耗 4 GB 内存甚至更多,当 systemd-journald 使用 rsyslog 运行时,速率限制值的调整会很复杂。

如需更多信息,请参阅 RHEL 默认日志设置对性能的负面影响及环境方案

(JIRA:RHELPLAN-10431)

Ansible 补救需要额外的集合

使用 ansible-core 软件包替换 Ansible Engine 时,RHEL 订阅提供的 Ansible 模块列表会减少。因此,运行使用 scap-security-guide 软件包中包含的 Ansible 内容的补救需要来自 rhc-worker-playbook 软件包的集合。

对于 Ansible 补救,请执行以下步骤:

  1. 安装所需的软件包:

    # dnf install -y ansible-core scap-security-guide rhc-worker-playbook
  2. 进入 /usr/share/scap-security-guide/ansible 目录:

    # cd /usr/share/scap-security-guide/ansible
  3. 使用环境变量运行相关的 Ansible playbook,以定义到额外 Ansible 集合的路径:

    # ANSIBLE_COLLECTIONS_PATH=/usr/share/rhc-worker-playbook/ansible/collections/ansible_collections/ ansible-playbook -c local -i localhost, rhel9-playbook-cis_server_l1.yml

    cis_server_l1 替换为您要修复该系统的配置集 ID。

因此,Ansible 内容会被正确处理。

注意

rhc-worker-playbook 中提供的集合的支持仅限于启用 scap-security-guide 中的 Ansible 内容源。

(BZ#2114981)

10.7. 网络

nm-cloud-setup 服务从接口中删除手动配置的二级 IP 地址

根据云环境收到的信息,nm-cloud-setup 服务配置网络接口。禁用 nm-cloud-setup 以手动配置接口。然而,在某些情况下,主机上的其他服务也可以配置接口。例如,这些服务可以添加二级 IP 地址。为了避免 nm-cloud-setup 删除二级 IP 地址:

  1. 停止并禁用 nm-cloud-setup 服务和计时器:

    # systemctl disable --now nm-cloud-setup.service nm-cloud-setup.timer
  2. 显示可用的连接配置集:

    # nmcli connection show
  3. 被动受影响的连接配置集:

    # nmcli connection up "<profile_name>"

因此,该服务不再从接口中删除手动配置的二级 IP 地址。

(BZ#2132754)

启动了 Alibaba Cloud 中的 nm-cloud-setup 服务后,实例的主要 IP 地址会改变

启动了 Alibaba Cloud 中的实例后,nmn-cloud-setup 服务会将主 IP 地址分配给实例。但是,如果您为实例分配了多个次要 IP 地址,并启动了 nm-cloud-setup 服务,则以前的主 IP 地址会被已分配的次要 IP 地址之一替换。返回的元数据列表验证了这一点。要临时解决这个问题,请手动配置次要 IP 地址,以避免主 IP 地址被更改。因此,实例会同时保留 IP 地址和主 IP 地址不会改变。

(BZ#2079849)

NetworkManager 不支持以特定顺序激活绑定和团队端口

NetworkManager 按接口名称的字母顺序激活接口。但是,如果接口在启动过程中稍后出现,例如,由于内核需要更多时间发现它,NetworkManager 会稍后激活这个接口。NetworkManager 不支持对绑定和团队端口设置优先级。因此,NetworkManager 激活这些设备的端口的顺序始终无法预测。要临时解决这个问题,请编写一个调度程序脚本。

有关此类脚本的示例,请参阅问题单中相应的 注释

(BZ#1920398)

启用了 IPv6_rpfilter 选项的系统的网络吞吐量较低

firewalld.conf 文件中启用了 IPv6_rpfilter 选项的系统目前在高流量场景(如 100-Gbps 连接)中性能欠佳,网络吞吐量较低。要临时解决这个问题,请禁用 IPv6_rpfilter 选项。为此,请在 /etc/firewalld/firewalld.conf 文件中添加以下行:

IPv6_rpfilter=no

因此,系统性能更好,但安全性也有所降低。

(BZ#1871860)

RoCE 接口会因为网络接口名称意外更改而丢失其 IP 设置

如果满足这两个条件,通过 Converged Ethernet (RoCE)的 RDMA 接口会由于网络接口名称的意外更改而丢失其 IP 设置:

  • 用户从 RHEL 8.6 系统或更早版本升级。
  • RoCE 卡按 UID 枚举。

要临时解决这个问题:

  1. 使用以下内容创建 /etc/systemd/network/98-rhel87-s390x.link 文件:

    [Match]
    Architecture=s390x
    KernelCommandLine=!net.naming-scheme=rhel-8.7
    
    [Link]
    NamePolicy=kernel database slot path
    AlternativeNamesPolicy=database slot path
    MACAddressPolicy=persistent
  2. 重启系统以使更改生效。
  3. 升级到 RHEL 8.7 或更高版本。

请注意,由功能 ID (FID)枚举且非唯一的 RoCE 接口仍会使用无法预计的接口名称,除非您设置了 net.naming-scheme=rhel-8.7 内核参数。在这种情况下,RoCE 接口将切换到带有 "ens" 前缀的可预测的名称。

(BZ#2169382)

10.8. 内核

在 v1 模式下使用 net_prionet_cls 控制器会停用 cgroup-v2 层次结构的一些控制器

cgroup-v2 环境中,在 v1 模式下使用 net_prionet_cls 控制器会禁用套接字数据的层次结构跟踪。因此,套接字数据跟踪控制器的 cgroup-v2 层次结构没有处于活动状态,dmesg 命令会报告以下信息:

cgroup: cgroup: disabling cgroup2 socket matching due to net_prio or net_cls activation

(BZ#2046396)

在输入加密设备的密码短语后,Anaconda 会失败

如果在准备安装时 kdump 被禁用,且用户选择了加密的磁盘分区,则 Anaconda 安装程序会在输入加密设备的密码短语后失败,并会回溯。

要临时解决这个问题,请执行以下操作之一:

  • 在禁用 kdump 前创建加密的磁盘分区。
  • 在安装过程中保持 kdump 启用,并在安装过程完成后禁用它。

(BZ#2086100)

重新加载相同的崩溃扩展可能会导致分段错误

当加载已经载入的崩溃扩展文件的副本时,它可能会触发一个分段错误。目前,crash 工具会检测原始文件是否已被加载。因此,由于两个完全相同的文件在 crash 工具中并存,因此会发生命名空间冲突,这会触发 crash 工具,从而导致分段错误。

您可以通过只加载 crash 扩展文件一次来临时解决此问题。因此,在描述的场景中不再会出现分段错误。

(BZ#1906482)

内存热插拔操作后,vmcore 捕获会失败

执行内存热插拔操作后,会更新包含内存布局信息的设备树。因此,makedumpfile 实用程序会尝试访问不存在的物理地址。如果以下条件都满足,就会出现问题:

  • IBM Power System 的 little-endian 变体运行 RHEL 8。
  • 在系统中启用了 kdump 或者 fadump 服务。

因此,如果在内存 hot-plug 或 hot-unplug 操作后触发了内核崩溃,捕获内核将无法保存 vmcore

要临时解决这个问题,在 hot-plug 或 hot-unplug 后重启 kdump 服务:

# systemctl restart kdump.service

因此,vmcore 在上述场景中被成功保存。

(BZ#1793389)

在 RHEL 8 上,调试内核无法在崩溃捕获环境中引导

由于 调试内核的内存密集型特性,当调试内核在使用,且触发了内核 panic 时会出现问题。因此,调试内核无法作为捕获内核启动,而是生成堆栈跟踪。要临时解决这个问题,请根据需要增大崩溃内核内存。因此,调试内核会在崩溃捕获环境中成功引导。

(BZ#1659609)

在引导时分配崩溃内核内存失败

在某些 Ampere Altra 系统上,当 BIOS 设置中禁用了 32 位区域时,在引导过程中分配崩溃内核内存会失败。因此,kdump 服务无法启动。这是因为 4 GB 以下的内存碎片导致,没有足够大的碎片来包含崩溃内核内存。

要临时解决这个问题,请在 BIOS 中启用 32 位内存区域,如下所示:

  1. 在您的系统中打开 BIOS 设置。
  2. 打开 Chipset 菜单。
  3. Memory Configuration 下,启用 SSlave 32-bit 选项。

因此,在 32 位区域中的崩溃内核内存分配会成功,kdump 服务可以按预期工作。

(BZ#1940674)

内核 ACPI 驱动程序报告无法访问 PCIe ECAM 内存区域

固件提供的高级配置和电源接口(ACPI)表没有在 PCI 总线设备中定义内存区域。因此,在系统引导时会出现以下警告信息:

[    2.817152] acpi PNP0A08:00: [Firmware Bug]: ECAM area [mem 0x30000000-0x31ffffff] not reserved in ACPI namespace
[    2.827911] acpi PNP0A08:00: ECAM at [mem 0x30000000-0x31ffffff] for [bus 00-1f]

但是,内核仍然可以访问 0x30000000-0x31ffff 内存区域,并可以正确地将该内存区域分配给 PCI 增强配置访问机制(ECAM)。您可以通过以下输出通过 256 字节偏移访问 PCIe 配置空间来验证 PCI 是正常工作的:

03:00.0 Non-Volatile memory controller: Sandisk Corp WD Black 2018/PC SN720 NVMe SSD (prog-if 02 [NVM Express])
 ...
        Capabilities: [900 v1] L1 PM Substates
                L1SubCap: PCI-PM_L1.2- PCI-PM_L1.1- ASPM_L1.2+ ASPM_L1.1- L1_PM_Substates+
                          PortCommonModeRestoreTime=255us PortTPowerOnTime=10us
                L1SubCtl1: PCI-PM_L1.2- PCI-PM_L1.1- ASPM_L1.2- ASPM_L1.1-
                           T_CommonMode=0us LTR1.2_Threshold=0ns
                L1SubCtl2: T_PwrOn=10us

因此,您可以忽略警告信息。

有关此问题的详情,请参阅 "Firmware Bug: ECAM area mem 0x30000000-0x31ffffff not reserved in ACPI namespace" appears during system boot

(BZ#1868526)

tuned-adm profile powerave 命令会导致系统变得无响应

执行 tuned-adm profile powersave 命令会导致使用旧的Thunderx(CN88x)处理器的Penguin Valkyrie 2000 2-socket 系统处于无响应状态。因此,需要重启系统以便恢复工作。要临时解决这个问题,如果您的系统符合上述说明,请避免使用 powersave 配置集。

(BZ#1609288)

HP NMI 监视器并不总是生成崩溃转储

在某些情况下,HP NMI watchdog 的 hpwdt 驱动无法声明一个由 HPE watchdog timer 生成的不可屏蔽中断(NMI),因为 NMI 被 perfmon 驱动所消耗。

缺少的 NMI 是由以下两个条件之一引发的:

  1. Integrated Lights-Out (iLO) 服务器管理软件中的 Generate NMI 按钮。这个按钮由用户触发。
  2. hpwdt watchdog。默认过期会向服务器发送一个 NMI。

在系统无响应时通常会出现这两个序列。在一般情况下,用于这两种情况的 NMI 处理程序调用 kernel panic() 功能,如果配置了, kdump 服务会生成 vmcore 文件。

由于缺少 NMI,没有调用 kernel panic() 且不收集 vmcore

第一种情况(1.),如果系统不响应,它会一直处于这个状态。要临时解决这种情况,请使用虚拟 Power 按钮来重置或者启用服务器。

在第二个示例中(2.),缺少的 NMI 之后会在 9 秒后被自动系统恢复(ASR)重置。

HPE Gen9 服务器行以单位数字显示这个问题。Gen10 频率更小。

(BZ#1602962)

使用 irqpoll 会导致 vmcore 生成失败

由于在 Amazon Web Services Graviton 1 处理器上运行的 64 位 ARM 架构上的 nvme 驱动程序存在问题,因此导致在给第一个内核提供 irqpoll 内核命令行参数时 vmcore 生成失败。因此,当内核崩溃时,vmcore 文件不会在 /var/crash/ 目录中转储 。要临时解决这个问题:

  1. /etc/sysconfig/kdump 文件中,将 irqpoll 追加到 KDUMP_COMMANDLINE_REMOVE 变量中。

    # KDUMP_COMMANDLINE_REMOVE="hugepages hugepagesz slub_debug quiet log_buf_len swiotlb"
  2. 删除 /etc/sysconfig/kdump 文件中 KDUMP_COMMANDLINE_APPEND 变量中的 irqpoll

    # KDUMP_COMMANDLINE_APPEND="irqpoll nr_cpus=1 reset_devices cgroup_disable=memory udev.children-max=2 panic=10 swiotlb=noforce novmcoredd"
  3. 重启 kdump 服务:

    # systemctl restart kdump

因此,第一个内核会正确引导,在内核崩溃时可以捕获 vmcore 文件。

请注意,Amazon Web Services Graviton 2 和 Amazon Web Services Graviton 3 处理器不需要手动删除 /etc/sysconfig/kdump 文件中的 irqpoll 参数。

kdump 服务可能会使用大量崩溃内核内存来转储 vmcore 文件。确定捕获内核有足够的内存可用于 kdump 服务。

有关这个已知问题的详情,请查看文章 irqpoll 内核命令行参数可能会导致 vmcore 生成失败

(BZ#1654962)

将虚拟功能附加到虚拟机时连接会失败

使用传奇 ionic设备驱动程序的 Pensando 网卡会默默地接受 VLAN 标签配置请求,并在将网络虚拟功能(VF)附加到虚拟机(VM)上时尝试配置网络连接。这些网络连接会失败,因为卡的固件还没有支持这个功能。

(BZ#1930576)

OPEN MPI 库可能会使用默认 PML 的触发程序运行时失败

在 OPEN 消息密码界面(OPEN MPI)实现 4.0.x 系列中,Unified communicating X(UCX)是默认的点到点通信器(PML)。OPEN MPI 4.0.x 系列的后续版本弃用了 openib Byte Transfer Layer(BTL)。

但是,当OPEN MPI 在 同构 集群(与硬件和软件配置相同)上运行时,UCX 仍然使用openib BTL进行 MPI 单边操作。因此,这可能会导致触发器执行错误。要临时解决这个问题:

  • 使用以下参数运行 mpirun 命令:
-mca btl openib -mca pml ucx -x UCX_NET_DEVICES=mlx5_ib0

其中,

  • -mca btl openib 参数禁用 openib BTL
  • -mca pml ucx 参数将 OPEN MPI 配置为使用 ucx PML。
  • x UCX_NET_DEVICES= 参数限制 UCX 使用指定的设备

OPEN MPI 在使用 异构 集群(不同硬件和软件配置)中运行时,使用 UCX 作为默认的 PML。因此,这可能会导致 OPEN MPI 任务在运行时出现错误的性能、不响应性行为或崩溃问题。要临时解决这个问题,将 UCX 优先级设置为:

  • 使用以下参数运行 mpirun 命令:
-mca pml_ucx_priority 5

因此,OPEN MPI 库可以选择使用 UCX 的可替代传输层。

(BZ#1866402)

Solarflare 无法创建最大数量的虚拟函数(VF)

因为资源不足,Solarflare NIC 无法创建最大数量的 VF 。您可以检查 PCIe 设备可以在 /sys/bus/pci/devices/PCI_ID/sriov_totalvfs 文件中创建的 VF 的最大数量。要临时解决这个问题,您可以将 VF 的数量或 VF MSI 中断值调整为较低的值,可以在启动时从 Solarflare Boot Manager 调整或使用 Solarflare sfboot 工具调整。默认的 VF MSI 中断值为 8

  • 使用 sfboot 来调整 VF MSI 中断值:
# sfboot vf-msix-limit=2
注意

调整 VF MSI 中断值会影响 VF 性能。

有关调整的参数的更多信息,请参阅 Solarflare 服务器适配器用户指南

(BZ#1971506)

kdump 的内存分配在 64 位 ARM 构架上失败

在某些基于 64 位 ARM 的系统上,固件使用非连续内存分配方法,此方法在不同的分散位置随机保留内存。因此,由于连续内存块不可用,崩溃内核无法为 kdump 机制保留内存空间。

要临时解决这个问题,请安装 RHEL 8.8 及更新版本提供的内核版本。RHEL 的最新版本支持 fallback 转储捕获机制,其帮助在上述场景中找到一个合适的内存区域。

(BZ#2214235)

在具有大核数的系统上实时内核的硬件认证可能需要传递 skew-tick=1 引导参数以避免锁争用

具有大量插槽和大核数的大型或中型系统可能会因为在计时系统中使用的 xtime_lock 上的锁争用而遭遇延迟峰值。因此,在多处理系统中可能会发生硬件认证的延迟峰值和延迟。作为临时解决方案,您可以通过添加 skew_tick=1 引导参数,来偏移每个 CPU 的计时器刻度,以便在不同的时间启动。

要避免锁冲突,请启用 skew_tick=1

  1. 使用 grubby 启用 skew_tick=1 参数。

    # grubby --update-kernel=ALL --args="skew_tick=1"
  2. 重启以使更改生效。
  3. 运行 cat /proc/cmdline 命令来验证新设置。

请注意,启用 skew_tick=1 会导致功耗的大量增加,因此只有在您运行延迟敏感实时工作负载时才必须启用。

(BZ#2214508)

10.9. 文件系统和存储

LVM writecache 的限制

writecache LVM 缓存方法有以下限制,这些限制不会出现在 cache 方法中:

  • 使用 pvmove 命令时您无法命名 writecache 逻辑卷。
  • 您不能将带有 writecache 的逻辑卷与精简池或 VDO 结合使用。

以下限制也适用于 cache 方法:

  • 您不能在将 cachewritecache 附加到逻辑卷时重新定义大小。

(JIRA:RHELPLAN-27987、BZ#1798631、BZ#1808012)

XFS 配额警告经常被触发

使用配额计时器会导致配额警告的触发过于频繁,这导致软配额的强制执行的速度比应该执行的速度更快。要临时解决这个问题,请不要使用软配额,这会防止触发警告。因此,警告信息量将不再强制软配额限制,会尊重配置的超时时间。

(BZ#2059262)

保存一个 LUKS 卷的 LVM mirror 设备有时将变为无响应

在某些情况下,保存 LUKS 卷的片段类型的 mirror LVM 设备可能会变得无响应。无响应设备会拒绝所有 I/O 操作。

要解决这个问题,红帽建议在有弹性软件定义的存储之上使用带 raid1 的片段类型的 LVM RAID 1 设备而不是镜像( mirror )。

raid1 segment 类型是默认的 RAID 配置类型,它作为推荐的解决方案替换 mirror

要将 mirror 设备转换为 raid1,请参阅将镜像 LVM 设备转换为 RAID1 设备

(BZ#1730502)

无法将 /boot 文件系统放在 LVM 中

您不能将 /boot 文件系统放在 LVM 逻辑卷中。这种限制的原因如下:

  • 在 EFI 系统中,EFI 系统分区 通常充当 /boot 文件系统。uEFI 标准要求有特定的 GPT 分区类型和具体文件系统类型。
  • RHEL 8 在系统引导条目中使用 Boot Loader 规格 (BLS)。这个规格要求 /boot 文件系统可由平台固件可读。在 EFI 系统中,平台固件只能读取 uEFI 标准定义的 /boot 配置。
  • 在 GRUB 2 引导装载程序中不支持 LVM 逻辑卷。红帽没有计划进行改进,因为如 uEFI 和 BLS 的标准,这个功能的使用情况正在下降。

红帽不计划在 LVM 中支持 /boot。反之,红帽提供了管理系统快照和回滚的工具,这些工具不需要将 /boot 文件系统放在 LVM 逻辑卷中。

(BZ#1496229)

LVM 不再允许使用混合块大小创建卷组

LVM 工具(如 vgcreatevgextend)不再允许您创建有不同逻辑块大小的物理卷(PV)的卷组(VG)。LVM 启用了这个更改,因为如果您使用不同块大小的 PV 扩展了基本逻辑卷(LV),文件系统将无法挂载。

要重新创建带有混合块大小的 VG,在 lvm.conf 文件中设置 allow_mixed_block_sizes=1 选项。

(BZ#1768536)

使用带有 NVMe/TCP 驱动程序的设备映射器多路径会导致系统不稳定

NVMe/TCP 驱动程序不支持 DM 多路径。使用它会导致内核中的睡眠函数在原子上下文中被调用,从而导致系统不稳定。

要临时解决这个问题,请启用原生 NVMe 多路径。不要使用 DM 多路径工具。对于 RHEL 8,将 nvme_core.multipath=Y 选项添加到内核命令行。

(BZ#2022359)

blk-availability systemd 服务会停用复杂设备堆栈

systemd 中,默认的块停用代码并不总是正确处理虚拟块设备的复杂堆栈。在一些配置中,虚拟设备在关闭过程中可能无法被删除,这会导致记录错误信息。要临时解决这个问题,请执行以下命令来停用复杂块设备堆栈:

# systemctl enable --now blk-availability.service

因此,复杂虚拟设备堆栈会在关闭过程中被正确停用,且不会生成错误消息。

(BZ#2011699)

10.10. 动态编程语言、网页和数据库服务器

当有 32 位应用程序调用 getpwnam() 时,可能会失败

当 NIS 用户使用32 位应用程序调用 getpwnam() 函数时,如果没有 nss_nis.i686 软件包,则调用会失败。要临时解决这个问题,使用 yum install nss_nis.i686 手动安装缺少的软件包。

(BZ#1803161)

在启用 OQGraph 插件时,MariaDB 10.5 不会对删除不存在的表发出警告

OQGraph 存储引擎插件加载到 MariaDB 10.5 服务器 时,MariaDB 不会对删除不存在的表发出警告。特别是,当用户尝试使用DROP TABLEDROP TABLE IF EXISTSSQL命令删除不存在的表时,MariaDB不会返回错误信息,也不会记录警告。

请注意,OQGraph 插件由 mariadb-oqgraph-engine 软件包提供,该软件包默认情况下不会安装。

BZ#1944653

PAM 插件版本 1.0 在 MariaDB中无法正常工作

MariaDB 10.3 提供了可插拔验证模块(PAM)插件版本1.0 。MariaDB 10.5 提供插件版本 1.0 和 2.0,版本 2.0 是默认版本。

MariaDB PAM 插件版本 1.0 在 RHEL 8 中无法正常工作。要临时解决这个问题,请使用 mariadb:10.5 模块流提供的 PAM 插件版本 2.0。

BZ#1942330

OpenLDAP 库之间的符号冲突可能会导致 httpd崩溃

当 OpenLDAP 提供的 libldaplibldap_r 库在单个进程中加载并使用时,这些库之间可能会出现符号冲突。因此,如果mod_securitymod_auth_openidc 模块也被httpd配置加载 ,使用 PHP ldap 扩展的 Apache httpd子进程可能会意外终止。

从因为RHEL 8.3 更新到 Apache Portable Runtime(APR)库,您可以通过设置 APR_DEEPBIND 环境变量来临时解决这个问题,该变量在载入 httpd 模块时,允许使用 RTLD_DEEPBIND 动态链接器选项。当 APR_DEEPBIND 环境变量启用时,在加载冲突库的 httpd 配置中不再崩溃。

(BZ#1819607)

10.11. 身份管理

Windows Server 2008 R2 及更早版本不再被支持

在 RHEL 8.4 及之后的版本中,身份管理(IdM)不支持对带有运行 Windows Server 2008 R2 或更早版本的活动目录域的活动目录建立信任。RHEL IdM 现在在建立信任关系时需要 SMB 加密,这只在 Windows Server 2012 或更高版本中提供。

(BZ#1971061)

cert-fix 程序与 --agent-uid pkidbuser 选项一同使用会破坏证书系统

使用带有 --agent-uid pkidbuser 选项的 cert-fix 工具可破坏证书系统的 LDAP 配置。因此,,证系统可能会变得不稳定,需要手动步骤才能恢复该系统。

(BZ#1729215)

IdM 主机上的 /var/log/lastlog 稀疏文件可能会导致性能问题

在 IdM 安装过程中,从总计 10,000 个可能范围内会随机选择并分配一个 200,000 UID 范围。当您决定以后合并两个独立的 IdM 域时,以这种方法选择一个随机范围可显著降低冲突 ID 的可能性。

但是,大的UID可能会给 /var/log/lastlog 文件带来问题。例如,如果 UID 为 1280000008 的用户登录到 IdM 客户端,则本地的 /var/log/lastlog 文件大小会增加到近 400 GB。虽然实际文件是稀疏的,且没有使用所有空间,但某些应用程序默认不是为识别稀疏文件而设计的,且可能需要一个特定的选项来处理这些文件。例如,如果设置比较复杂,备份和复制应用程序无法正确处理稀疏文件,则该文件会像大小为 400 GB 一样被复制。这个行为可能会导致性能问题。

要临时解决这个问题:

  • 如果是标准软件包,请参考其文档来识别处理稀疏文件的选项。
  • 如果是自定义应用程序,请确保它能够正确管理稀疏文件,如 /var/log/lastlog

(JIRA:RHELPLAN-59111)

FIPS 模式不支持使用共享 secret 建立跨林信任

在 FIPS 模式中使用共享 secret 建立跨林信任会失败,因为 NTLMSSP 身份验证不兼容 FIPS。要临时解决这个问题,在启用了 FIPS 模式的 IdM 域和 AD 域间建立信任时,使用 Active Directory(AD)管理帐户进行身份验证。

BZ#1924707

FreeRADIUS 服务器无法在 FIPS 模式下运行

默认情况下,在 FIPS 模式下,OpenSSL 禁止使用 MD5 摘要算法。由于 RADIUS 协议需要 MD5 来在 RADIUS 客户端和 RADIUS 服务器之间加密 secret,因此这会导致 FreeRADIUS 服务器在 FIPS 模式下失败。

要临时解决这个问题,请遵循以下步骤:

流程

  1. radiusd 服务创建环境变量 RADIUS_MD5_FIPS_OVERRIDE

    systemctl edit radiusd
    
    [Service]
    Environment=RADIUS_MD5_FIPS_OVERRIDE=1
  2. 要应用这些更改,请重新加载 systemd 配置,并启动 radiusd 服务:

    # systemctl daemon-reload
    # systemctl start radiusd
  3. 要在调试模式下运行 FreeRADIUS:

    # RADIUS_MD5_FIPS_OVERRIDE=1 radiusd -X

请注意,虽然 FreeRADIUS 可以在 FIPS 模式下运行,但这并不意味着它符合 FIPS ,因为它在 FIPS 模式下使用弱密码和功能。

有关在 FIPS 模式下配置 FreeRADIUS 身份验证的更多信息,请参阅 在 FIPS 模式下如何配置 FreeRADIUS 身份验证

(BZ#1958979)

将 Samba 作为打印服务器运行,并从 RHEL 8.4 或更早版本更新时所需的操作

有了这个更新,samba 软件包不再创建 /var/spool/samba/ 目录。如果您将 Samba 用作打印服务器,并将 [printers] 共享中的 /var/spool/samba/ 用于假脱机打印作业,则SELinux 会阻止 Samba 用户在此目录中创建文件。因此,打印作业失败,auditd 服务会在 /var/log/audit/audit.log 中记录一跳 denied 消息。要在更新 8.4 及更早版本的系统后避免此问题:

  1. /etc/samba/smb.conf 文件中搜索 [printers] 共享。
  2. 如果共享定义包含 path = /var/spool/samba/,请更新设置,并将 path 参数设为 /var/tmp/
  3. 重启 smbd 服务:

    # systemctl restart smbd

如果在 RHEL 8.5 或更高版本上新安装了 Samba,则不需要任何操作。在本例中,samba-common 软件包提供的默认 /etc/samba/smb.conf 文件已将 /var/tmp/ 目录用于假脱机打印作业。

(BZ#2009213)

在 rebase 到版本 1.2.2 后,降级authselect会破坏系统身份验证

authselect 软件包已 rebase 到最新的上游版本 1.2.2。不支持降级 authselect,这会中断所有用户的系统身份验证,包括root用户。

如果您将authselect 软件包降级到 1.2.1 或更早版本,请执行以下步骤来解决这个问题:

  1. 在 GRUB 引导屏幕中,选择带有您要引导的内核版本的 Red Hat Enterprise Linux,然后按 e 编辑该条目。
  2. 在以 linux 开头的行的末尾输入 single 作为单独的单词,然后按 Ctrl+X 启动引导过程。
  3. 以单用户模式引导时,输入 root 密码。
  4. 使用以下命令恢复 authselect 配置:

    # authselect select sssd --force

(BZ#1892761)

NSS 中启用的密码的 default 关键字无法与其他密码一起使用

在目录服务器中,您可以使用 default 关键字来指向网络安全服务(NSS)中启用的默认密码。但是,如果您要使用命令行或 Web 控制台来启用默认的密码和附加密码,目录服务器将无法解析 default 关键字。因此,服务器只启用额外指定的密码,并记录以下错误:

Security Initialization - SSL alert: Failed to set SSL cipher preference information: invalid ciphers <default,+__cipher_name__>: format is +cipher1,-cipher2... (Netscape Portable Runtime error 0 - no error)

作为临时解决方案,指定 NSS 中默认启用的所有密码,包括您要额外启用的密码。

(BZ#1817505)

ldap_id_use_start_tls 选项使用默认值时的潜在风险

当使用没有 TLS 的 ldap:// 进行身份查找时,可能会带来攻击向量的风险。特别是中间人(MITM)攻击,其允许攻击者,例如通过更改 LDAP 搜索中返回的对象的 UID 或 GID 来冒充用户,。

目前,强制 TLS 的 SSSD 配置选项 ldap_id_use_start_tls 默认为 false。确保您的设置操作在可信环境中运行,并决定对 id_provider = ldap 使用未加密的通信是否是安全的。注意 id_provider = adid_provider = ipa 不受影响,因为它们使用 SASL 和 GSSAPI 保护的加密连接。

如果使用未加密的通信不安全,请在 /etc/sssd/sssd.conf 文件中将 ldap_id_use_start_tls 选项设置为 true 来强制使用 TLS。计划在以后的 RHEL 版本中更改的默认行为。

(JIRA:RHELPLAN-155168)

10.12. Desktop

无法从软件仓库中禁用 flatpak 程序库

目前,在 GNOME 软件工具中的软件程序库工具中无法禁用或删除 flatpak 程序库。

(BZ#1668760)

第二代 RHEL 8 虚拟机有时无法在 Hyper-V Server 2016 主机上引导

当使用 RHEL 8 作为在 Microsoft Hyper-V Server 2016 主机上运行的虚拟机(VM)中的客户机操作系统时,虚拟机在某些情况下无法引导,并返回到 GRUB 引导菜单。另外,会在 Hyper-V 事件日志中记录以下错误:

The guest operating system reported that it failed with the following error code: 0x1E

这个错误是由 Hyper-V 主机上的 UEFI 固件错误造成的。要临时解决这个问题,请将 Hyper-V Server 2019 或更高版本用作主机。

(BZ#1583445)

在桌面和应用程序间进行拖放操作无法正常工作

由于 gnome-shell-extensions 软件包中的一个 bug,drag-and-drop 功能目前在桌面和应用程序间无法正常工作。以后的发行版本中将重新添加对这个功能的支持。

(BZ#1717947)

10.13. 图形基础结构

radeon 无法正确重置硬件

radeon 内核驱动程序目前没有在 kexec 上下文中正确重置硬件。相反,radeon 无法工作,从而导致剩余的 kdump 服务失败。

要临时解决这个问题,在 kdump 中禁用 radeon,方法是在 /etc/kdump.conf 文件中添加以下行:

dracut_args --omit-drivers "radeon"
force_rebuild 1

重启机器和 kdump。启动 kdump 后,force_rebuild 1 行可能会从配置文件中删除 。

请注意,在这种情况下,kdump 不会提供图形,但 kdump 可成功运行。

(BZ#1694705)

多个 HDR 显示在单个 MST 拓扑上可能无法打开

在使用带有 nouveau 驱动程序的 NVIDIA Turing GPU 的系统上,使用DisplayPort 集线器(如笔记本电脑基座),该集线器上插有多个支持HDR的显示器,可能会导致其无法打开。这是因为系统错误地认为 hub 中没有足够的带宽来支持所有显示器。

(BZ#1812577)

ESXi 中的 GUI 可能会因为视频内存较低而崩溃

VMware ESXi 7.0.1 带有 vCenter Server 7.0.1 的 RHEL 虚拟机上的图形用户界面(GUI)需要一定的视频内存。如果您将多个控制台或高分辨率监控器连接到虚拟机,则 GUI 至少需要 16 MB 的视频内存。如果您使用较少的视频内存启动 GUI,则 GUI 可能会意外终止。

要临时解决这个问题,请配置虚拟机监控程序为虚拟机分配至少 16MB 视频内存。因此,虚拟机上的 GUI 不会崩溃。

如果您遇到这个问题,红帽建议您将其报告给 VMware。

另请参阅以下 VMware 文章:具有高分辨率 VM 控制台的虚拟机可能会在 ESXi 7.0.1(83194)上出现崩溃

(BZ#1910358)

VNC Viewer 显示在 IBM Z 中带有 16 位颜色深度的错误颜色

当您连接到带有 16 位色彩深度的 IBM Z 服务器上的 VNC 会话时,VNC Viewer 应用程序会显示错误的颜色。

要临时解决这个问题,请在 VNC 服务器中设置 24 位颜色深度。使用 Xvnc 服务器将 -depth 16 选项替换为 -depth 24 (在 Xvnc 配置中)。

因此,VNC 客户端会显示正确的颜色,但在服务器中使用更多的网络带宽。

(BZ#1886147)

无法使用 sudo 命令运行图形应用程序

当试图以具有更高权限的用户运行图形应用程序时,应用程序无法打开并带有一个出错信息。发生故障的原因是 XwaylandXauthority 文件限制,为使用常规用户凭证进行验证。

要临时解决这个问题,使用 sudo -E 命令以 root 用户运行图形程序。

(BZ#1673073)

ARM 不支持硬件加速

内置图形驱动程序不支持 64 位 ARM 架构中的硬件加速或 Vulkan API。

要启用硬件加速或者 ARM 上的 Vulkan,安装专有 Nvidia 驱动程序。

(JIRA:RHELPLAN-57914)

10.14. Web 控制台

使用 Web 控制台删除 USB 主机设备无法按预期工作

当您将 USB 设备附加到虚拟机时,USB 设备的设备号和总线号可能会在传递给虚拟机后发生更改。因此,使用 Web 控制台来删除这样的设备会失败,因为设备和总线号的关联不正确。要临时解决这个问题,请从虚拟机的 XML 配置中删除 USB 设备的 <hostdev> 部分。

(JIRA:RHELPLAN-109067)

使用 Web 控制台附加多个主机设备无法正常工作

当您使用 web 控制台选择多个设备附加到虚拟机(VM)时,只会附加一个设备,其它设备会被忽略。要临时解决这个问题,请一次只附加一个设备。

(JIRA:RHELPLAN-115603)

10.15. Red Hat Enterprise Linux System Roles

使用 playbook 或清单中的 localhost 主机名无法管理 localhost

在 RHEL 中包含 ansible-core 2.12 软件包,如果您在管理节点的同一主机上运行 Ansible,则无法使用 playbook 或清单中的 localhost 主机名来实现。这是因为 ansible-core 2.12 使用 python38 模块,且缺少许多库,如存储 角色的 blivet网络 角色的 gobject 。要临时解决这个问题,如果您已在 playbook 或清单中使用了 localhost 主机名,您可以使用 ansible_connection=local 来添加一个连接,或者使用 ansible_connection=local 选项创建一个列出 localhost 的清单文件。使用这种方式,您可以管理 localhost 上的资源。如需了解更多详细信息,请参阅文章 当在 localhost 上运行时,RHEL 系统角色 playbook 会失败

(BZ#2041997)

10.16. 虚拟化

虚拟机中的网络流量性能可能会降低

在某些情况下,RHEL 8.6 客户虚拟机(VM)在处理高级别的网络流量时性能会有所下降。

(BZ#2069047)

使用大量队列可能会导致 Windows 虚拟机失败

当启用了虚拟可信平台模块(vTPM)设备,且将 multi-queue virtio-net 功能配置为使用超过 250 个队列时,Windows 虚拟机(VM)可能会失败。

这个问题是由 vTPM 设备的限制造成的。vTPM 设备对于打开的文件描述符的最大数量有一个硬性的限制。因为会为每个新队列打开多个文件描述符,因此可能会超过内部 vTPM 的限值,从而导致虚拟机失败。

要临时解决这个问题,请选择以下两个选项之一:

  • 保持 vTPM 设备启用,但使用少于 250 个队列。
  • 禁用 vTPM 设备以使用超过 250 个队列。

(BZ#2020133)

带有故障转移 VF 的虚拟机的实时复制后迁移无法正常工作

目前,如果虚拟机使用启用了虚拟功能(VF)故障转移功能的设备,则试图对一个正在运行的虚拟机(VM)进行 post-copy 迁移会失败。要临时解决这个问题,请使用标准迁移类型,而不要使用 post-copy 迁移方式。

(BZ#2054656)

从早期的 RHEL 8 次版本将虚拟机迁移到 RHEL 8.6 Intel 主机无法正常工作

因为 Intel 事务同步扩展(TSX)功能已被弃用,Intel 硬件中的 RHEL 8.6 主机不再使用 hlertm CPU 标记。因此,如果源主机使用 RHEL 8.5 或 RHEL 8 的早期次版本,将虚拟机(VM)实时迁移到 RHEL 8.6 主机会失败。

有关 TSX 弃用的更多信息,请参阅红帽知识库

(BZ#2134184)

AMD Milan 系统上有时无法提供 Milan VM CPU 类型

在某些 AMD Milan 系统上,默认在 BIOS 中禁用了增强 REP MOVSB(erms)和 Fast Short REP MOVSB(fsrm)功能标记。因此,在这些系统上可能不提供"Milan"CPU 类型。另外,在具有不同功能标志设置的 Milan 主机之间的虚拟机实时迁移可能会失败。要临时解决这个问题,请在主机的 BIOS 中手动打开 ermsfsrm

(BZ#2077770)

使用 virtio-blk 将 LUN 设备附加到虚拟机中无法正常工作

q35 机器类型不支持 virtio 1.0 设备,因此 RHEL 8 不支持 virtio 1.0 中弃用的功能。特别是,RHEL 8 主机无法从 virtio-blk 设备发送 SCSI 命令。因此,使用 virtio-blk 控制器时,将物理磁盘作为 LUN 设备附加到虚拟机会失败。

请注意,物理磁盘仍可被传递给客户端操作系统,但应该使用 device='disk' 选项而不是 device='lun' 选项进行配置。

(BZ#1777138)

带有 iommu_platform=on 的虚拟机无法在 IBM POWER 上启动

RHEL 8 目前不支持 IBM POWER 系统上的虚拟机(VM)的 iommu_platform=on 参数。因此,在 IBM POWER 硬件上启动使用这个参数的虚拟机会导致虚拟机在引导过程中变得无响应。

BZ#1910848

当使用ibmvfc 驱动程序时,IBM POWER 主机可能会崩溃

当在 PowerVM 逻辑分区(LPAR)上运行 RHEL 8 时,目前可能会因为 ibmvfc 驱动程序的问题而发生各种错误。因此,在某些情况下主机的内核可能会出现 panic,例如:

  • 使用 Live Partition Mobility(LPM)功能
  • 重置主机适配器
  • 使用 SCSI 错误处理(SCSI EH)功能

(BZ#1961722)

在 IBM POWER 系统中使用 perf kvm record 可能会导致虚拟机崩溃

当在 IBM POWER 硬件的 little-endian 变体中使用 RHEL 8 主机时,使用 perf kvm record 命令为 KVM 虚拟机(VM)收集追踪事件样本会导致虚拟机变得没有响应。在以下情况下发生这种情况:

  • perf工具由非特权用户使用,-p 选项用来标识虚拟机 - 例如 perf kvm record -e trace_cycles -p 12345
  • 虚拟机是使用 virsh shell 启动的。

要临时解决这个问题,请使用带有-i选项的 perf kvm 工具来监控使用 virsh shell 创建的虚拟机。例如:

# perf kvm record -e trace_imc/trace_cycles/  -p <guest pid> -i

请注意,在使用 -i 选项时,子任务不会继承计数器,因此线程不会被监控。

(BZ#1924016)

带有启用 Hyper-V 的 Windows Server 2016 虚拟机无法引导

目前,无法引导使用 Windows Server 2016 作为客户端操作系统的虚拟机,它启用了 Hyper-V 角色,并使用以下 CPU 模型之一:

  • EPYC-IBPB
  • EPYC

要临时解决这个问题,使用 EPYC-v3 CPU 模型,或者为虚拟机手动启用 xsaves CPU 标记。

(BZ#1942888)

将 POWER9 客户端从 RHEL 7-ALT 主机迁移到 RHEL 8 会失败

目前,将 POWER9 虚拟机从 RHEL 7-ALT 主机系统迁移到 RHEL 8 会变得没有响应,显示Migration status: active状态)。

要临时解决这个问题,在 RHEL 7-ALT 主机上禁用 Transparent Huge Pages(THP),这样可使迁移成功完成。

(BZ#1741436)

使用 virt-customize 有时会导致 guestfs-firstboot 失败

使用 virt-customize 工具修改了虚拟机(VM)磁盘镜像后,guestfs-firstboot 服务在某些情况下会因为 SELinux 权限不正确而失败。这会导致虚拟机启动过程中出现各种问题,如创建用户失败或系统注册失败。

要避免这个问题,请在 virt-customize 命令中添加 --selinux-relabel 选项。

(BZ#1554735)

从 macvtap 虚拟网络中删除转发接口会重置这个网络的所有连接计数

目前,从带有多个转发接口的 macvtap 虚拟网络中删除一个转发接口也会重置网络的其他转发接口的连接状态。因此,实时网络 XML 中的连接信息是不正确的。但请注意,这不会影响虚拟网络的功能。要临时解决这个问题,请重启主机上的 libvirtd 服务。

(BZ#1332758)

带有 SLOF 的虚拟机无法在 netcat 界面中引导

当使用 netcat(nc)接口来访问当前在 Slimline Open Firmware(SLOF)提示符下等待的虚拟机控制台时,用户输入会被忽略,虚拟机仍无响应。要临时解决这个问题,请在连接虚拟机时使用 nc -C 选项,或者使用 telnet 接口。

(BZ#1974622)

在某些情况下,在 virt-manager 中将中介设备附加到虚拟机会失败

virt-manager 应用程序目前能够检测中介设备,但不能识别该设备是否处于活跃状态。因此,尝试使用 virt-manager 将不活跃的中介设备附加到正在运行的虚拟机(VM)会失败。同样,尝试使用不活跃的中介设备创建新虚拟机会失败,并显示 device not found 错误。

要临时解决这个问题,请使用 virsh nodedev-startmdevctl start 命令来激活中介设备,然后再在 virt-manager 中使用它。

(BZ#2026985)

RHEL 9 虚拟机无法在 POWER8 兼容模式下启动

目前,如果虚拟机也使用类似如下的 CPU 配置,启动将 RHEL 9 作为客户机操作系统来运行的虚拟机(VM)会失败:

  <cpu mode="host-model">
    <model>power8</model>
  </cpu>

要临时解决这个问题,请不要在 RHEL 9 虚拟机中使用 POWER8 兼容性模式。

另外,请注意,在 POWER8 主机上无法运行 RHEL 9 虚拟机。

(BZ#2035158)

当使用很多 virtio-blk 磁盘时,虚拟机有时无法启动

在虚拟机(VM)中添加大量 virtio-blk 设备可能会耗尽平台中可用的中断向量。如果发生了这种情况,VM 的客户机操作系统无法引导,并显示 dracut-initqueue[392]: Warning: Could not boot 错误。

(BZ#1719687)

在某些情况下,Windows Server 2022 虚拟机在 AMD Milan 上启动非常慢

使用 Windows Server 2022 客户机操作系统和 qemu64 CPU 型号的虚拟机(VM)当前在带有 AMD EPYC 7003 系列处理器(也称为 AMD Milan)的主机上需要很长时间才能启动。

要临时解决这个问题,请不要使用 qemu64 CPU 型号,因为对于 RHEL 8 中的虚拟机,它是不受支持的设置。例如,改为使用 host-model CPU。

(BZ#2012373)

当在 AMD EPYC 上使用主机透传模式时,虚拟机不会检测到 SMT CPU 拓扑

当在AMD EPYC 主机上以CPU主机直通模式引导虚拟机(VM)时,不会显示TOPOEXT CPU 功能标志。因此,虚拟机无法检测到每个内核有多个线程的虚拟 CPU 拓扑。要临时解决这个问题,使用 EPYC CPU 模型而不是主机透传引导虚拟机。

(BZ#1740002)

将虚拟机迁移到 RHEL 8.6 的更新的 z-stream 版本有时会失败

如果目标主机使用带有 qemu-kvm 软件包版本 6.2.0-11.module+el8.6.0+21121 及更新版本的 RHEL 8.6 版本,且源主机在 RHEL 8.6 上使用 qemu-kvm 版本 6.2.0-11.module+el8.6.0+21120 或更早版本,则尝试迁移虚拟机(VM)失败。

(JIRA:RHELDOCS-17666)

10.17. 云环境中的 RHEL

SR-IOV 在 Azure 上的 ARM 64 RHEL 8 虚拟机上性能欠佳

目前,SR-IOV 网络设备在 Microsoft Azure 平台上运行的 ARM 64 RHEL 8 虚拟机(VM)中具有明显低于预期的吞吐量和更高的延迟。

(BZ#2068429)

在 VMware 主机上的 RHEL 8 虚拟机中设置静态 IP 无法正常工作

目前,当在 VMware 主机上使用 RHEL 8 作为虚拟机(VM)的客户机操作系统时,DatasourceOVF 功能无法正常工作。因此,如果您使用 cloud-init 实用程序将虚拟机的网络设置为静态 IP,然后重启虚拟机,则虚拟机的网络将更改为 DHCP。

(BZ#1750862)

kdump 有时不会在 Azure 和 Hyper-V 上启动

在托管在 Microsoft Azure 或 Hyper-V hypervisor 上的 RHEL 8 客户机操作系统中,启动 kdump 内核在某些情况下会在启用执行后通知程序时失败。

要临时解决这个问题,请禁用 crash kexec post notifiers:

# echo N > /sys/module/kernel/parameters/crash_kexec_post_notifiers

(BZ#1865745)

当使用多个客户机磁盘引导 Hyper-V 虚拟机时,SCSI 主机地址有时会改变

目前,当在 Hyper-V hypervisor 上引导 RHEL 8 虚拟机时,主机部分的主机 、Bus、Target、Lun(HBTL)SCSI 地址在某些情况下发生了变化。因此,使用虚拟机中的 HBTL SCSI 识别或者设备节点设置的自动任务无法持续工作。如果虚拟机有多个磁盘,或者磁盘大小不同,会出现这种情况。

要临时解决这个问题,使用以下方法之一修改 kickstart 文件:

方法 1:对 SCSI 设备使用持久性标识符。

您可以使用以下 powershell 脚本来确定具体设备标识符:

# Output what the /dev/disk/by-id/<value> for the specified hyper-v virtual disk.
# Takes a single parameter which is the virtual disk file.
# Note: kickstart syntax works with and without the /dev/ prefix.
param (
    [Parameter(Mandatory=$true)][string]$virtualdisk
)

$what = Get-VHD -Path $virtualdisk
$part = $what.DiskIdentifier.ToLower().split('-')

$p = $part[0]
$s0 = $p[6] + $p[7] + $p[4] + $p[5] + $p[2] + $p[3] + $p[0] + $p[1]

$p = $part[1]
$s1 =  $p[2] + $p[3] + $p[0] + $p[1]

[string]::format("/dev/disk/by-id/wwn-0x60022480{0}{1}{2}", $s0, $s1, $part[4])

您可以在 hyper-v 主机上使用此脚本,如下所示:

PS C:\Users\Public\Documents\Hyper-V\Virtual hard disks> .\by-id.ps1 .\Testing_8\disk_3_8.vhdx
/dev/disk/by-id/wwn-0x60022480e00bc367d7fd902e8bf0d3b4
PS C:\Users\Public\Documents\Hyper-V\Virtual hard disks> .\by-id.ps1 .\Testing_8\disk_3_9.vhdx
/dev/disk/by-id/wwn-0x600224807270e09717645b1890f8a9a2

之后,可在 kickstart 文件中使用磁盘值,如下所示:

part / --fstype=xfs --grow --asprimary --size=8192 --ondisk=/dev/disk/by-id/wwn-0x600224807270e09717645b1890f8a9a2
part /home --fstype="xfs" --grow --ondisk=/dev/disk/by-id/wwn-0x60022480e00bc367d7fd902e8bf0d3b4

因为这些值特定于每个虚拟磁盘,因此需要为每个虚拟机实例进行配置。因此,使用 %include 语法将磁盘信息放在单独的文件中可能会很有用。

方法 2:按大小设置设备选择。

根据大小配置磁盘选择的 kickstart 文件必须包含类似如下的行:

...

# Disk partitioning information is supplied in a file to kick start
%include /tmp/disks

...

# Partition information is created during install using the %pre section
%pre --interpreter /bin/bash --log /tmp/ks_pre.log

	# Dump whole SCSI/IDE disks out sorted from smallest to largest ouputting
	# just the name
	disks=(`lsblk -n -o NAME -l -b -x SIZE -d -I 8,3`) || exit 1

	# We are assuming we have 3 disks which will be used
	# and we will create some variables to represent
	d0=${disks[0]}
	d1=${disks[1]}
	d2=${disks[2]}

	echo "part /home --fstype="xfs" --ondisk=$d2 --grow" >> /tmp/disks
	echo "part swap --fstype="swap" --ondisk=$d0 --size=4096" >> /tmp/disks
	echo "part / --fstype="xfs" --ondisk=$d1 --grow" >> /tmp/disks
	echo "part /boot --fstype="xfs" --ondisk=$d1 --size=1024" >> /tmp/disks

%end

(BZ#1906870)

在 AWS 上使用 cloud-init 启动 RHEL 8 虚拟机所花费的时间比预期的要长

目前,使用 cloud-init 服务在 Amazon Web Services(AWS)上初始化 RHEL 8 的 EC2 实例需要很长时间。要避免这个问题,请在将镜像上传到 AWS 之前,从您要用于创建虚拟机的镜像中删除 /etc/resolv.conf 文件。

(BZ#1862930)

10.18. 支持性

getattachment 命令无法下载多个附件

getattachment 命令只能下载一个附件,但无法下载多个附件。

作为临时解决方案,您可以通过在 getattachment 命令中传递每个附件的案例号和 UUID 来逐个下载多个附件。

(BZ#2064575)

redhat-support-tool 无法用于 FUTURE 加密策略

因为客户门户网站 API 中的证书使用的加密密钥不满足 FUTURE 系统范围的加密策略的要求,所以 redhat-support-tool 程序目前无法使用这个策略级别。

要临时解决这个问题,在连接到客户门户网站 API 时使用 DEFAULT 加密策略。

(BZ#1802026)

当在 IBM Power Systems,Little Endian 上运行 sos report 时会超时

当在具有带有数百或数千个 CPU 的 IBM Power Systems,Little Endian 上运行 sos report 命令时,处理器插件会在收集 /sys/devices/system/cpu 目录的大量内容时达到默认的 300 秒超时时间。作为临时解决方案,请相应地增加插件的超时时间:

  • 对于一次性设置,请运行:
# sos report -k processor.timeout=1800
  • 对于永久性更改,请编辑 /etc/sos/sos.conf 文件的 [plugin_options] 部分:
[plugin_options]
# Specify any plugin options and their values here. These options take the form
# plugin_name.option_name = value
#rpm.rpmva = off
processor.timeout = 1800

示例值设为 1800。特定的超时值高度依赖于特定的系统。要适当地设置插件超时,您可以首先通过运行以下命令来估算收集一个没有超时的插件所需的时间:

# time sos report -o processor -k processor.timeout=0 --batch --build

(BZ#2011413)

10.19. 容器

在较旧的容器镜像中运行 systemd 无法正常工作

在较旧的容器镜像(如 centos:7)中运行 systemd 将无法正常工作:

$ podman run --rm -ti centos:7 /usr/lib/systemd/systemd
 Storing signatures
 Failed to mount cgroup at /sys/fs/cgroup/systemd: Operation not permitted
 [!!!!!!] Failed to mount API filesystems, freezing.

要临时解决这个问题,请使用以下命令:

# mkdir /sys/fs/cgroup/systemd
# mount none -t cgroup -o none,name=systemd /sys/fs/cgroup/systemd
# podman run --runtime /usr/bin/crun --annotation=run.oci.systemd.force_cgroup_v1=/sys/fs/cgroup --rm -ti centos:7 /usr/lib/systemd/systemd

(JIRA:RHELPLAN-96940)

使用 Beta GPG 密钥签名的容器镜像无法拉取

目前,当您尝试拉取 RHEL Beta 容器镜像时,podman 会退出,并显示出错信息: Error: Source image rejected: None of the signatures were accepted。镜像因为当前构建被配置为不信任 RHEL Beta GPG 密钥而无法拉取。

作为临时解决方案,请确保红帽 Beta GPG 密钥保存在您的本地系统中,并使用针对适当的 beta 命名空间更新 podman image trust set 命令的现有信任范围。

如果您没有本地存储 Beta GPG 密钥,您可以通过运行以下命令来拉取它:

sudo wget -O /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-beta https://www.redhat.com/security/data/f21541eb.txt

要将 Beta GPG 密钥作为信任添加到命名空间中,请使用以下命令之一:

$ sudo podman image trust set -f /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-beta registry.access.redhat.com/namespace

$ sudo podman image trust set -f /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-beta registry.redhat.io/namespace

namespace 替换为 ubi9-betarhel9-beta

(BZ#2020301)

第 11 章 国际化

11.1. Red Hat Enterprise Linux 8 国际语言

Red Hat Enterprise Linux 8 支持多种语言的安装,并根据您的需要更改语言。

  • 东亚语言 - 日语、韩语、简体中文和繁体中文。
  • 欧洲语言 - 英语、德语、西班牙语、法语、意大利语、葡萄牙语和俄语。

下表列出了为各种主要语言提供的字体和输入法。

语言默认字体(字体软件包)输入法

English

dejavu-sans-fonts

 

法语

dejavu-sans-fonts

 

德语

dejavu-sans-fonts

 

意大利语

dejavu-sans-fonts

 

俄语

dejavu-sans-fonts

 

西班牙语

dejavu-sans-fonts

 

葡萄牙语

dejavu-sans-fonts

 

简体中文

google-noto-sans-cjk-ttc-fonts, google-noto-serif-cjk-ttc-fonts

ibus-libpinyin, libpinyin

繁体中文

google-noto-sans-cjk-ttc-fonts, google-noto-serif-cjk-ttc-fonts

ibus-libzhuyin, libzhuyin

日语

google-noto-sans-cjk-ttc-fonts, google-noto-serif-cjk-ttc-fonts

ibus-kkc, libkc

韩语

google-noto-sans-cjk-ttc-fonts, google-noto-serif-cjk-ttc-fonts

ibus-hangul, libhangul

11.2. RHEL 8 中国际化的显著变化

RHEL 8 与 RHEL 7 相比,对国际化进行了以下更改:

  • 添加了对 Unicode 11 计算行业标准的支持。
  • 国际化发布在多个软件包中,这样就可以进行较小的内存占用安装。如需更多信息,请参阅 使用语言包
  • 很多 glibc 区域已经与 Unicode Common Locale Data Repository(CLDR)同步。

附录 A. 按组件划分的问题单列表

Bugzilla 和 JIRA ID 列在本文档中以便参考。可公开访问的 Bugzilla 程序错误包括到 ticket 的链接。

组件票证

389-ds-base

BZ#2033398, BZ#2016014, BZ#1817505, BZ#1780842

NetworkManager

BZ#1996617,BZ#2001563,BZ#2079849,BZ#1920398

SLOF

BZ#1910848

accel-config

BZ#1843266

anaconda

BZ#1990145,BZ#2050140,BZ#1914955,BZ#1929105

ansible-collection-microsoft-sql

BZ#2038256,BZ#2057651

apr

BZ#1819607

audit

BZ#1906065, BZ#1939406, BZ#1921658, BZ#1927884

authselect

BZ#1892761

bind9.16

BZ#1873486

bind

BZ#2013993

brltty

BZ#2008197

certmonger

BZ#1577570

clevis

BZ#1949289, BZ#2018292

cloud-init

BZ#2023940, BZ#2026587, BZ#1750862

cockpit

BZ#1666722

coreutils

BZ#2030661

corosync-qdevice

BZ#1784200

crash

BZ#1906482

createrepo_c

BZ#1992209, BZ#1973588

crypto-policies

BZ#2020295, BZ#2023734, BZ#2023744,BZ#1919155,BZ#1660839

cups-container

BZ#1913715

cups

BZ#2032965

device-mapper-multipath

BZ#2008101, BZ#2009624, BZ#2011699

distribution

BZ#1657927

dmidecode

BZ#2027665

dnf-plugins-core

BZ#1868047

dnf

BZ#1986657

ec2-images

BZ#1862930

edk2

BZ#1741615, BZ#1935497

fapolicyd

BZ#1939379,BZ#2054741

fence-agents

BZ#1977588, BZ#1775847

fido-device-onboard

BZ#1989930

firewalld

BZ#1980206, BZ#1871860

freeradius

BZ#2030173, BZ#1958979

galera

BZ#2042306

gcc

BZ#1996862

gdb

BZ#2012818, BZ#1853140

glibc

BZ#1934162, BZ#2007327,BZ#2023420, BZ#1929928, BZ#2000374

gnome-shell-extensions

BZ#1751336,BZ#1717947

gnome-software

BZ#1668760

gnutls

BZ#1628553

golang

BZ#2014088

grafana-pcp

BZ#1993149

grafana

BZ#1993214

grub2

BZ#1583445

hostapd

BZ#2016946

initscripts

BZ#1875485

ipa

BZ#1731484, BZ#1924707, BZ#1664719, BZ#1664718

js-d3-flame-graph

BZ#1993194

kdump-anaconda-addon

BZ#2086100

内核

BZ#1953926, BZ#2068429, BZ#1910885, BZ#2040171, BZ#2022903, BZ#2036863, BZ#1979382, BZ#1949614, BZ#1983635, BZ#1964761, BZ#2069047, BZ#2054656, BZ#1868526, BZ#1694705, BZ#1730502, BZ#1609288, BZ#1602962, BZ#1865745, BZ#1906870, BZ#1924016, BZ#1942888, BZ#1812577, BZ#1910358, BZ#1930576, BZ#2046396, BZ#1793389, BZ#1654962, BZ#1940674, BZ#1971506, BZ#2022359, BZ#2059262, BZ#1605216, BZ#1519039, BZ#1627455, BZ#1501618, BZ#1633143, BZ#1814836, BZ#1696451, BZ#1348508, BZ#1837187, BZ#1904496, BZ#1660337, BZ#1905243, BZ#1878207, BZ#1665295, BZ#1871863, BZ#1569610, BZ#1794513

kexec-tools

BZ#2004000

krb5

BZ#1877991

libcap

BZ#1950187,BZ#2032813

libffi

BZ#1875340

libgnome-keyring

BZ#1607766

libguestfs

BZ#1554735

libreswan

BZ#2017352, BZ#1989050

libseccomp

BZ#2019893

libselinux-python-2.8-module

BZ#1666328

libssh

BZ#1896651

libvirt

BZ#2014369, BZ#1664592, BZ#1332758 , BZ#1528684

llvm-toolset

BZ#2001133

log4j-2-module

BZ#1937468

lsvpd

BZ#1993557

lvm2

BZ#1496229, BZ#1768536

make

BZ#2004246

mariadb

BZ#1944653,BZ#1942330

mesa

BZ#1886147

net-snmp

BZ#1908331

nfs-utils

BZ#1592011

nftables

BZ#2047821

nginx-1.20-module

BZ#1991787

nispor

BZ#1848817

nmstate

BZ#2003976,BZ#2004006

nss_nis

BZ#1803161

nss

BZ#1817533, BZ#1645153

opencryptoki

BZ#1984993

opencv

BZ#2007780,BZ#1886310

openmpi

BZ#1866402

opensc

BZ#1947025

openscap

BZ#1970529,BZ#2041781

openssh

BZ#1926103, BZ#2015828, BZ#2044354

openssl

BZ#1810911

osbuild-composer

BZ#1951936,BZ#2056451

oscap-anaconda-addon

BZ#1834716,BZ#2075508,BZ#1843932, BZ#1665082

pacemaker

BZ#1082146, BZ#1470834, BZ#1376538

pcp

BZ#1991763, BZ#1629455

pcs

BZ#1990784, BZ#1936833, BZ#1619620, BZ#1847102, BZ#1851335

pcsc-lite

BZ#1928154, BZ#2014641

Perl

BZ#2021471

php

BZ#1978356

pki-core

BZ#1729215, BZ#1628987

pmdk-1_fileformat_v6-module

BZ#2009889

podman

JIRA:RHELPLAN-92741, JIRA:RHELPLAN-108830, JIRA:RHELPLAN-77238

policycoreutils

BZ#1731501

postfix

BZ#1711885

powerpc-utils

BZ#2028690, BZ#2022225

pykickstart

BZ#1637872

qemu-kvm

BZ#1982993,BZ#2004416, BZ#1662007, BZ#2020133,BZ#2012373,BZ#1740002,BZ#1719687, BZ#1651994

rear

BZ#2048454, BZ#2049091,BZ#2035939, BZ#1868421, BZ#2083301

redhat-support-tool

BZ#2018194, BZ#2018195, BZ#1767195, BZ#2064575,BZ#1802026

restore

BZ#1997366

rhel-system-roles

BZ#1967321,BZ#2040038,BZ#2041627,BZ#2034908,BZ#1979714,BZ#2005727,BZ#2006231,BZ#2021678,BZ#2021683,BZ#2047504, BZ#2040812,BZ#2064388,BZ#2058655,BZ#2058772,BZ#2029605,BZ#2057172,BZ#2049747, BZ#1854988, BZ#1893743 , BZ#1993379,BZ#1993311,BZ#2021661,BZ#2016514,BZ#1985022,BZ#2016511,BZ#2010327,BZ#2012316,BZ#2031521,BZ#2054364,BZ#2054363,BZ#2008931, BZ#1695634, BZ#1897565,BZ#2054365,BZ#1932678,BZ#2057656,BZ#2022458,BZ#2057645,BZ#2057661,BZ#2021685,BZ#2006081

rig

BZ#1888705

rpm-ostree

BZ#2032594

rpm

BZ#1940895,BZ#1688849

rsyslog

BZ#1947907,BZ#1679512, JIRA:RHELPLAN-10431

rteval

BZ#2012285

rust-toolset

BZ#2002883

samba

BZ#2013596, BZ#2009213, JIRA:RHELPLAN-13195, Jira:RHELDOCS-16612

scap-security-guide

BZ#1983061,BZ#2053587,BZ#2023569, BZ#1990736, BZ#2002850,BZ#2000264,BZ#2058033,BZ#2030966,BZ#1884687,BZ#1993826, BZ#1956972,BZ#2014485,BZ#2021802,BZ#2028428,BZ#1858866,BZ#1750755,BZ#2038977

scap-workbench

BZ#2051890

selinux-policy

BZ#1860443, BZ#1461914

scs

BZ#1873185, BZ#2011413

spice

BZ#1849563

sssd

BZ#2015070, BZ#1947671

strace

BZ#2038992

subscription-manager

BZ#2000883,BZ#2049441

texinfo

BZ#2022201

udica

BZ#1763210

usbguard

BZ#2000000 ,BZ#1963271

vdo

BZ#1949163

virt-manager

BZ#1995125, BZ#2026985

wayland

BZ#1673073

xfsdump

BZ#2020494

xorg-x11-server

BZ#1698565

其他

BZ#1839151,BZ#1780124, BZ#2089409, JIRA:RHELPLAN-100359, JIRA:RHELPLAN-103147, JIRA:RHELPLAN-103146, JIRA:RHELPLAN-79161, BZ#2046325, JIRA:RHELPLAN-108438, JIRA:RHELPLAN-100175, BZ#2083036 , JIRA:RHELPLAN-102505, BZ#2062117, JIRA:RHELPLAN-75169, JIRA:RHELPLAN-100174, JIRA:RHELPLAN-101137, JIRA:RHELPLAN-57941, JIRA:RHELPLAN-101133, JIRA:RHELPLAN-101138, JIRA:RHELPLAN-95126, JIRA:RHELPLAN-103855, JIRA:RHELPLAN-103579, BZ#2025814, BZ#2077770, BZ#1777138, BZ#1640697, BZ#1697896, BZ#1971061, BZ#1959020, BZ#1961722, BZ#1659609, BZ#1687900, BZ#1757877, BZ#1741436, JIRA:RHELPLAN-59111, JIRA:RHELPLAN-27987, JIRA:RHELPLAN-34199, JIRA:RHELPLAN-57914, JIRA:RHELPLAN-96940, BZ#1974622, BZ#2020301, BZ#2028361, BZ#2041997,BZ#2035158, JIRA:RHELPLAN-109067, JIRA:RHELPLAN-115603, BZ#1690207, JIRA:RHELPLAN-1212, BZ#1559616, BZ#1889737, JIRA:RHELPLAN-14047, BZ#1769727, JIRA:RHELPLAN-27394, JIRA:RHELPLAN-27737, BZ#1906489, JIRA:RHELPLAN-100039, BZ#1642765, JIRA:RHELPLAN-10304, BZ#1646541, BZ#1647725, BZ#1932222,BZ#1686057,BZ#1748980, JIRA:RHELPLAN-71200, BZ#1827628, JIRA:RHELPLAN-45858, BZ#1871025,BZ#1871953, BZ#1874892, BZ#1916296, JIRA:RHELPLAN-100400, BZ#1926114, BZ#1904251, BZ#2011208, JIRA:RHELPLAN-59825, BZ#1920624, JIRA:RHELPLAN-70700, BZ#1929173, JIRA:RHELPLAN-85066, BZ#2006665, JIRA:RHELPLAN-98983, BZ#2009113, BZ#1958250,BZ#2038929,BZ#2029338,BZ#2061288,BZ#2060759, BZ#2055826, BZ#2059626

附录 B. 修改历史记录

0.3-3

2024 年 5 月 16 日星期四,Brian Angelica (bangelic@redhat.com)

0.3-2

2024 年 5 月 9 日星期四,Brian Angelica (bangelic@redhat.com)

0.3-1

2024 年 5 月 9 日星期四,Gabriela Fialova (gfialova@redhat.com)

  • 更新了一个已知问题 BZ#1730502(存储)。
0.2-9

2024 年 2 月 29 日星期四, Lucie Vařáková (lvarakova@redhat.com)

0.2-8

2024 年 2 月 13 日星期二, Lucie Vařáková (lvarakova@redhat.com)

0.2-7

2023 年 11 月 10 日星期五, Gabriela Fialová(gfialova@redhat.com)

  • 更新了对 RHEL 文档提供反馈的模块。
0.2-6

2023 年 10 月 13 日星期五, Gabriela Fialová(gfialova@redhat.com)

0.2-5

2023 年 9 月 8 日星期五, Lucie Vařáková (lvarakova@redhat.com)

0.2-4

2023 年 9 月 5 日星期二,Jaroslav Klech (jklech@redhat.com)

  • 修复了已知问题的一个有序列表 BZ#2169382(网络)。
0.2-3

2023 年 8 月 24 日星期四, Lucie Vaááková(lvarakova@redhat.com)

  • 添加了一个已知问题 BZ#2214508(内核)。
0.2-2

2023 年 8 月 4 日星期五,Lenka Špačková (lspackova@redhat.com)

0.2-1

2023 年 8 月 1 日星期二,Lenka Špačková (lspackova@redhat.com)

  • 添加了已弃用的功能 BZ#2225332
  • 改进了抽象。
0.2-0

2023 年 8 月 1 日星期二, Lucie Vařáková (lvarakova@redhat.com)

0.1-9

2023 年 6 月 29 日星期四, Marc Muehlfeld (mmuehlfeld@redhat.com)

  • 添加了一个技术预览 BZ#1570255 (内核)。
0.1-8

2023 年 6 月 16 日星期五, Lucie Vařáková (lvarakova@redhat.com)

  • 添加了一个已知问题 BZ#2214235(内核)。
0.1-7

2023 年 5 月 10 日星期三, Jaroslav Klech (jklech@redhat.com)

  • 添加了一个已知问题 BZ#2169382(网络)。
0.1-6

2023 年 4 月 27 日星期四, Gabriela Fialová(gfialova@redhat.com)

0.1-5

2023 年 4 月 13 日星期四, Gabriela Fialová (gfialova@redhat.com)

  • 修复了 DF 和 KI 中的 2 个坏掉的链接。
0.1-4

Thu Mar 2 2023, Lucie Vařáková (lvarakova@redhat.com)

  • 更新了一个新的功能 BZ#2089409 (内核)。
0.1-4

Tue Jan 24 2023, Lucie Varhacmáková(lvarakova@redhat.com)

  • 添加了一个已知问题BZ#2115791 (云环境中的RHEL)。
0.1-3

Thu Dec 08 2022, Marc Muehlfeld (mmuehlfeld@redhat.com)

  • 添加了一个已知问题 BZ#2132754 (网络)。
0.1-2

2022 年 11 月 8 日星期二, Lucie Vařáková (lvarakova@redhat.com)

0.1-1

Wed Sep 07 2022, Lucie Vařáková (lvarakova@redhat.com)

  • 添加了程序错误修复 BZ#2096256 (网络)。
  • 其他小更新。
0.1-0

Fri Aug 19 2022, Lucie Vařáková (lvarakova@redhat.com)

  • 添加了程序错误修复 BZ#2108316 (身份管理)。
0.0-9

Fri Aug 05 2022, Lucie Vařáková (lvarakova@redhat.com)

0.0-8

wed Aug 03 2022、Lenka cgiková(lspackova@redhat.com)

  • 添加了已知问题 BZ#2095764 (软件管理)。
0.0-7

2022 年 7 月 22 日 星期五, Lucie Vařáková (lvarakova@redhat.com)

  • 添加了程序错误修复 BZ#2020494 (文件系统和存储)。
  • 添加了已知问题 BZ#2054656 (虚拟化)。
  • 其他小更新。
0.0-6

2022 年 7 月 11 日 星期一,Lenka Špačková (lspackova@redhat.com)

  • 添加了 bug 修复 BZ#2056451 (安装程序和镜像创建)。
  • 添加了 bug 修复 BZ#2051890 (安全性)。
  • 其他小更新。
0.0-5

Jun 08 2022, Lucie Vařáková (lmanasko@redhat.com)

0.0-4

2022 年 5 月 31 日, Lucie Vařáková (lmanasko@redhat.com)

0.0-3

2022 年 5 月 18 日, Lucie Maňásková (lmanasko@redhat.com)

0.0-2

2022 年 5 月 16 日, Lucie Maňásková (lmanasko@redhat.com)

  • 添加了 bug 修复 BZ#2014369 (虚拟化)。
  • 添加了已知问题 BZ#1554735 (虚拟化)。
  • 其他小更新。
0.0-1

2022 年 5 月 11 日, Lucie Maňásková (lmanasko@redhat.com)

  • Red Hat Enterprise Linux 8.6 发行注记发布。
0.0-0

2022 年 3 月 30 日, Lucie Maňásková (lmanasko@redhat.com)

  • Red Hat Enterprise Linux 8.6 Beta 发行注记发布。

法律通告

Copyright © 2024 Red Hat, Inc.
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, the Red Hat logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.