Menu Close

8.5 发行注记

Red Hat Enterprise Linux 8

Red Hat Enterprise Linux 8.5 发行注记

摘要

本发行注记提供了在 Red Hat Enterprise Linux 8.5 中实施的改进和附加功能的高级信息,以及本版本中已知的问题,以及重要的程序错误修复、技术预览、已弃用的功能和其他详情。

使开源包含更多

红帽承诺替换我们的代码、文档和网页属性中存在问题的语言。我们从这四个术语开始: master、slave、blacklist 和 whitelist。这些更改将在即将发行的几个发行本中逐渐实施。详情请查看 CTO Chris Wright 的信息

对红帽文档提供反馈

我们感谢您对文档提供反馈信息。请让我们了解如何改进文档。要做到这一点:

  • 关于特定内容的简单评论,请确定您使用多页 HTML 格式查看文档。用鼠标指针高亮显示您想评论的文本部分。然后点击在高亮文本下面出现的 添加反馈,然后按照显示的步骤操作。
  • 要提交更复杂的反馈,请创建一个 Bugzilla ticket:

    1. 进入 Bugzilla 网站。
    2. 在 Component 中选择 Documentation
    3. Description 中输入您要提供的信息。包括文档相关部分的链接。
    4. Submit Bug

第 1 章 概述

1.1. RHEL 8.5 中的主要变化

安装程序和镜像创建

在 RHEL 8.5 中,Image Builder 支持以下功能:

  • 能够自定义文件系统配置.
  • 能够覆盖可用的官方存储库
  • 能够创建可引导安装程序镜像并将其安装到裸机系统中。

如需更多信息,请参阅 第 4.1 节 “安装程序和镜像创建”

RHEL for Edge

RHEL 8.5 引进了 RHEL for Edge 简化安装程序镜像,针对无人值守安装进行了优化,并将镜像置备到 RHEL for Edge 镜像。

如需更多信息,请参阅 第 4.2 节 “RHEL for Edge”

安全性

系统范围的 加密策略 支持自定义策略中的指令范围和通配符。现在,您可以为不同的后端启用不同的算法集。

Rsyslog 日志处理应用已更新至 8.2102.0-5 版本。这个版本引进了 OpenSSL 网络流驱动程序以及其他改进。这将 使用 OpenSSL 库实施受 TLS 保护的 传输到 Rsyslog。

SCAP 安全指南 项目现在包含几个新的配置集和现有配置集的改进:

  • 新的概况表与澳大利亚网络安全中心信息安全手册(ACSC ISM)保持一致。
  • Internet 安全中心(CIS)配置文件划分成四个不同的配置文件(工作站级别 1、工作站级别 2、服务器级别 1、服务器级别 2)。
  • 安全技术实施指南(STIG)安全配置集更新至 V1R3 版本。
  • 新的 STIG 配置集与 Server 与 GUI 安装兼容。
  • 新的法国国家安全局(ANSSI)高级配置文件,完成《 SCAP 安全指南 》中所有 ANSSI-BP-028 v1.2 强化级别的配置文件。

通过这些增强功能,您可以安装符合其中一个安全基准的系统,并使用 OpenSCAP 套件来检查安全合规性和补救方法,使用基于风险的方法检查相关机构定义的安全措施。

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

新的 RHEL VPN 系统角色 使得在大量主机上设置安全且正确配置的 IPsec 隧道和虚拟专用网络(VPN)解决方案变得更加简单。如需更多信息,请参阅 新功能 - Red Hat Enterprise Linux 系统角色

网络

NetworkManager 现在支持将设备配置为接受所有流量。您可以使用 nmcli 实用程序来配置此功能。

firewalld 服务支持在区内的不同接口或源之间转发流量。

firewalld 服务支持过滤在区域间转发的流量。

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

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

  • Ruby 3.0
  • nginx 1.20
  • Node.js 16

以下组件已升级:

  • PHP 到版本 7.4.19
  • Squid 升级到 4.15 版本
  • mutt 到 2.0.7 版本

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

编译器和开发工具

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

  • GCC Toolset 11
  • LLVM Toolset 12.0.1
  • Rust Toolset 1.54.0
  • Go Toolset 1.16.7

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

OpenJDK 更新
  • Open Java Development Kit 17(OpenJDK 17)现已推出。有关本发行版本中引入的功能以及现有功能更改的更多信息,请参阅 OpenJDK 功能
  • OpenJDK 11 已更新至版本 11.0.13。有关本发行版本中引入的功能以及现有功能更改的更多信息,请参阅 OpenJDK 11.0.13 的发行注记
  • OpenJDK 8 已更新至 8.0.312 版本。有关本发行版本中引入的功能以及现有功能更改的更多信息,请参阅 OpenJDK 8.0.312 的发行注记

Red Hat Enterprise Linux 系统角色

Postfix RHEL 系统角色 被完全支持。

Network Time Security(NTS)选项现在添加到 Timesync RHEL 系统角色 中。

Storage RHEL 系统角色 现在支持 LVM VDO 卷,并以百分比的形式表达卷大小。

新的 RHEL VPN 系统角色 使得在大量主机上设置安全且正确配置的 IPsec 隧道和虚拟专用网络(VPN)解决方案变得更加简单。

高可用性集群 RHEL 系统角色 是 8.5 GA 版本的技术预览。

如需更多信息,请参阅 Red Hat Enterprise Linux 系统角色技术预览 - Red Hat Enterprise Linux 系统角色

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

RHEL 7 原位升级到 RHEL 8

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

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

要确保您的系统在升级到 RHEL 8.4 后仍然被支持,请升级到最新的 RHEL 8.5 版本,或者确保启用了 RHEL 8.4 Extended Update Support(EUS)软件仓库。在带有 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

主要改进包括:

  • 现在,借助红帽更新基础架构(RHUI),可以在 AWS 上通过 SAP HANA 在 Pay-As-You-Go 实例上执行原位升级。
  • 现在,可以在原位升级过程中启用 EUS 或 E4S 软件仓库。
  • 现在可以使用 yum install leapp-upgrade 命令安装 Leapp。作为这个更改的一部分,leapp-repositoryleapp-repository-deps RPM 软件包已重命名为 leapp-upgrade-el7toel8leapp-upgrade-el7toel8-deps。如果系统上已安装旧软件包,当运行 yum update 时,新软件包将自动替换它们。
  • LeApp 报告、日志和其他生成的文档使用英语,无论语言配置如何。
  • 升级后,必须先从 /etc/dnf/dnf.conf 配置文件的 exclude 列表中手动删除 leftover Leapp 软件包,然后才能将其从系统中删除。
  • repomap.csv 文件位于 the leapp-data15.tar.gz 归档中,已弃用,并替换为 repomap.json 文件。弃用的文件将一直可用,直到 2022 年 3 月为止。
  • IBM POWER 9(little endian)和 IBM Z(Structure A)架构已达到使用寿命。原位升级的后续版本(包括新的升级路径、功能和漏洞修复)将不会包括这些架构。

从 RHEL 6 原位升级到 RHEL 8

要从 RHEL 6.10 升级到 RHEL 8.4,请参阅从 RHEL 6 升级到 RHEL 8 部分

从不同的 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 实用程序。有关不支持的转换的更多信息,请参阅 如何从 RHEL 派生的 Linux 发行版本到 RHEL

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

1.3. 红帽客户门户网站 Labs

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

1.4. 其它资源

第 2 章 构架

Red Hat Enterprise Linux 8.5 带有内核版本 4.18.0-348,它支持以下构架:

  • 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.5 中引入的新功能和主要增强。

4.1. 安装程序和镜像创建

RHEL for Edge 现在支持 Simplified Installer

在这个版本中,Image Builder 可以构建 RHEL for Edge Simplified Installer(edge-simplified-installer)和 RHEL for Edge Raw Images(edge-raw-image)。

RHEL for Edge 简化安装程序可让您指定新的蓝图选项 installation_device,从而对设备执行无人值守安装。若要创建原始镜像,您必须提供现有的 OSTree 提交。它将生成一个原始镜像,其中已部署的现有提交。安装程序会将这个原始映像用于指定的安装设备。

另外,您还可以使用 Image Builder 构建 RHEL for Edge Raw Images。这些是压缩的原始镜像,其中包含了在其中现有部署的 OSTree 提交的分区布局。您可以在硬盘上安装 RHEL for Edge Raw Images 闪存,或在虚拟机中引导。

(BZ#1937854)

已弃用内核引导参数的警告

在没有 inst. 前缀(如 ksstage2repo 等)的情况下,Anaconda 启动参数已弃用,启动 RHEL7。这些参数将在下一个主 RHEL 发行版本中删除。

在这个版本中,当在没有 inst 前缀的情况下使用引导参数时,会显示适当的警告信息。引导安装时,以及安装程序在终端启动时,dracut 会显示警告信息。

以下是在终端中显示的示例警告信息:

弃用的引导参数 ks 必须与 inst. 前缀一起使用。请改为使用 inst.ks。没有 inst. 前缀的 Anaconda 启动参数已弃用,并将在以后的主发行版本中删除。

以下是显示在 dracut 中的警告信息示例:

ks 已被弃用。所有没有 inst. 前缀的 Anaconda 引导参数都已弃用,并将在以后的主发行版本中删除。请改为使用 inst.ks

(BZ#1897657)

Red Hat Connector 现在被完全支持

您可以使用 Red Hat Connector(rhc)连接系统。Red Hat Connector 由一个命令行界面和一个守护进程组成,允许用户在智能分析工具(console.redhat.com)的 Web 用户界面中直接在其主机上执行智能分析工具修复 playbook。Red Hat Connector 在 RHEL 8.4 中作为技术预览提供,从 RHEL 8.5 开始被完全支持。

如需更多信息,请参阅红帽连接器配置指南

BZ#1957316

能够覆盖可用的官方存储库

默认情况下,osbuild-composer backend 有自己的一组官方存储库在 /usr/share/osbuild-composer/repositories 目录中定义。因此,它不会继承位于 /etc/yum.repos.d/ 目录中的系统存储库。您现在可以覆盖官方存储库。为此,请在 /etc/osbuild-composer/repositories 中定义覆盖,因此,位于其中的文件优先于 /usr 目录中的文件。

(BZ#1915351)

镜像构建器现在支持文件系统配置

在这个版本中,您可以在蓝图中指定自定义文件系统配置,您可以使用所需的磁盘布局创建镜像。因此,通过具有非默认布局,您可以受益于安全基准、与现有设置保持一致性、性能和防止磁盘外错误。

要在蓝图中自定义文件系统配置,请设置以下自定义:

[[customizations.filesystem]]
mountpoint = "MOUNTPOINT"
size = MINIMUM-PARTITION-SIZE

(BZ#2011448)

镜像构建器现在支持创建可引导安装程序镜像

在这个版本中,您可以使用 Image Builder 创建由 tarball 文件组成的可引导 ISO 镜像,其中包含根文件系统。因此,您可以使用可引导 ISO 镜像将 tarball 文件系统安装到裸机系统中。

(BZ#2019318)

4.2. RHEL for Edge

Greenboot 服务现在默认启用

在以前的版本中,greenboot 服务不存在于默认预集中,因此当安装 greenboot 软件包时,用户必须手动启用这些 greenboot 服务。在这个版本中,greenboot 服务出现在默认预设置配置中,用户不再需要手动启用它。

(BZ#1935177)

4.3. 软件管理

RPM 现在对 sqlite 数据库后端有只读支持

检查其他根目录(如容器)时,可能需要基于 sqlite 查询 RPM 数据库的功能。此更新添加了对 RPM sqlite 数据库后端的只读支持。现在,可以从主机 RHEL 8 查询在 UBI 9 或 Fedora 容器中安装的软件包。使用 Podman 执行此操作:

  1. 使用 podman mount 命令挂载 容器的文件系统。
  2. 使用 --root 选项运行 rpm -qa 命令,以指向挂载的位置。

请注意,RHEL 8 上的 RPM 仍然使用 BerkeleyDB 数据库(bdb)后端。

(BZ#1938928)

libmodulemd rebase 到版本 2.12.1

libmodulemd 软件包已更新到 2.12.1 版本。主要变更包括:

  • 添加了对 模块 1 版本 1 的支持, 它提供了删除另一个流或到达其生命周期结束的流的信息。
  • 添加了对 modulemd-packager 文档类型版本 3 的支持,它为模块构建系统提供了模块流内容的打包程序描述。
  • 添加了对版本 2 模块文件类型static_context 属性的支持。因此,模块上下文现在由打包程序定义,而不是由模块构建系统生成。
  • 现在,模块流值始终以带引号的字符串序列化。

(BZ#1894573)

libmodulemd rebase 到版本 2.13.0

libmodulemd 软件包被更新到版本 2.13.0,它与之前的版本相比有以下显著变化:

  • 添加了对从模块中删除演示软件包的支持。
  • 添加了对使用 modulemd-packager-v3 文档 使用 modulemd-validator 工具的新 --type 选项进行验证的支持。
  • 派生解析整数.
  • 修复了各种 模块验证器 问题。

(BZ#1984402)

sslverifystatus 已添加到 dnf 配置

在这个版本中,当启用 sslverifystatus 选项时,dnf 会使用 Certificate Status Request Request TLS 扩展(OCSP 交换)检查每个服务器证书撤销状态。因此,当遇到撤销的证书时,dnf 会拒绝从其服务器下载。

(BZ#1814383)

4.4. Shell 和命令行工具

rear 已更新至 2.6 版本

relax-and-Recover(ReaR)已更新至 2.6 版本。重要的程序错误修复和增强包括:

  • 添加了对 eMMC 设备的支持。
  • 默认情况下,所有内核模块都包含在救援系统中。要包含特定的模块,请将 配置文件中的 MODULES 数组变量设置为:MODULES=(mod1 mod2)
  • 在 AMD 和 Intel 64 位架构以及 IBM Power Systems Little Endian 上,引入了一个新的配置变量 GRUB2_INSTALL_DEVICES 来控制引导装载程序安装的位置。详情请查看 /usr/share/rear/conf/default.conf 中的描述。
  • 改进了多路径设备的备份。
  • /media/run/mnt/tmp 下的文件会自动从备份中排除,因为这些目录已知包含可移动介质或临时文件。请参阅 /usr/share/rear/conf/default.conf 中 AUTOEXCLUDE_PATH 变量的说明。
  • CLONE_ALL_USERS_GROUPS=true 现在是默认设置。详情请查看 /usr/share/rear/conf/default.conf 中的描述。

(BZ#1988493)

modulemd-tools 软件包现已可用

在这个版本中,增加了 modulemd-tools 软件包,它提供了用于解析和生成 模块 YAML 文件的工具。

要安装 modulemd-tools,请使用:

# yum install modulemd-tools

(BZ#1924850)

openCryptoki rebase 到版本 3.16.0

openCryptoki 升级至 3.16.0 版本。重要的程序错误修复和增强包括:

  • 改进了 protected-key 选项,并且支持 EP11 核心处理器中的 属性绑定密钥
  • 改进了在 loop -count-accurate (CCA)处理器中安全密钥对象的导入和导出。

(BZ#1919223)

lsvpd rebase 到版本 1.7.12

lsvpd 已升级到 1.7.12 版本。重要的程序错误修复和增强包括:

  • sysvpd 中添加了 UUID 属性。
  • 改进了 NVMe 固件版本。
  • 修复了 PCI 设备制造商解析逻辑。
  • lsvpd 配置文件中添加了推荐 子句。

(BZ#1844428)

ppc64-diag rebase 到 2.7.7 版本

ppc64-diag 已升级到 2.7.7 版本。重要的程序错误修复和增强包括:

  • 改进了单元测试案例.
  • sysvpd 中添加了 UUID 属性。
  • The rtas_errd 服务不在 Linux 容器中运行。
  • systemd 服务文件中不再提供过时的日志记录选项。

(BZ#1779206)

ipmi_poweripmi_boot 模块在 redhat.rhel_mgmt Collection 中可用

在这个版本中,支持 Intelligent Platform Management Interface(IPMI)Ansible 模块。IPMI 是一组管理接口的规范,用于与基板管理控制器(BMC)设备通信。redhat.rhel _mgmt Collection 中提供了 IPMI 模块 ipmi_power 和 ipmi_ boot -,您可以通过安装 ansible-collection-redhat-rhel_mgmt 软件包来获取这些模块。

(BZ#1843859)

现在,在 RHEL 中添加了 udftools 2.3

udftools 软件包提供用于管理通用磁盘格式(UDF)文件系统的用户空间实用程序。在这个版本中,ud ftools 提供了以下一组工具:

  • cdrwtool - 它执行类似空白、格式化、快速设置和写入 DVD-R/CD-R/CD-RW 介质的操作。
  • mkfs.udfmkudffs - 创建了通用磁盘格式(UDF)文件系统。
  • pktsetup - 它设置并分解数据包设备。
  • udfinfo - 显示有关通用磁盘格式(UDF)文件系统的信息。
  • udflabel - 显示或更改通用磁盘格式(UDF)文件系统标签。
  • wrudf - 在现有通用磁盘格式(UDF)文件系统上提供一个包含 cprm mk dir、rmdir、lscd 操作的交互式 shell。

(BZ#1882531)

Tesseract 4.1.1 现在包括在 RHEL 8.5 中

Tesseract 是一个开源 OCR(虚拟字符读取)引擎,具有以下特性:

  • tesseract 版本 4 开始,字符识别基于长期 Short-Term Memory(LSTM)neural 网络。
  • 支持 UTF-8。
  • 支持纯文本、hOCR(HTML)、PDF 和 TSV 输出格式。

(BZ#1826085)

使用精简池恢复 LVM 时不再出现错误

在这个版本中,ReaR 会检测何时使用内核元数据(如 RAID 和缓存)的精简池和其他逻辑卷类型,并使用 lvcreate 命令切换到 VG 中重新创建所有逻辑卷(LV)的模式。因此,带有精简池的 LVM 不会有任何错误。

注意

这个新方法不会保留所有 LV 属性,例如 LVM UUID。在 Production 环境中使用 ReaR 之前,应先测试备份中的恢复,以确定重新创建的存储布局是否与要求相符。

(BZ#1747468)

net-SNMP 现在检测到 RSA 和 ECC 证书

在以前的版本中,Net-Simple Network Management Protocol(Net-SNMP)只检测到 Rivest、Shamir、Adleman(RSA)证书。此增强添加了对 Elliptic Curve Curve Cryptography(ECC)的支持。因此,Net-SNMP 现在检测到 RSA 和 ECC 证书。

(BZ#1919714)

FCoE 选项被改为 rd.fcoe

在以前的版本中,man page for dracut.cmdline 记录了 rd.nofcoe=0 作为在以太网(FCoE)关闭光纤通道的命令。

在这个版本中,命令被更改为 rd.fcoe。若要禁用 FCoE,请运行 command rd.fcoe=0

有关 FCoE 的详情,请参考 通过以太网配置光纤通道

(BZ#1929201)

4.5. 基础架构服务

linuxptp rebase 到版本 3.1

linuxptp 软件包已更新至版本 3.1。重要的程序错误修复和增强包括:

  • 添加了用于同步 Precision Time Protocol(PTP)硬件时钟的 ts2phc 程序到 Pulse Per second(PPS)信号。
  • 添加了对汽车配置集的支持。
  • 添加了对客户端事件监控的支持。

(BZ#1895005)

Chrony rebase 到版本 4.1

Chrony 已更新至版本 4.1。重要的程序错误修复和增强包括:

  • 添加了对网络时间安全(NTS)身份验证的支持。如需更多信息,请参阅 chrony 中的网络时间协议(NTS)概述
  • 默认情况下,通过非身份验证的 NTP 源信任经过身份验证的网络时间协议(NTP)源。在 chrony.conf 文件中添加 autselectmode ignore 参数来恢复原始行为。
  • 支持使用 RIPEMD 密钥进行身份验证 - RMD128、RMD160RMD256RMD320 不再可用。
  • 不再支持 NTPv4 数据包中的长期非标准 MAC。如果您使用 chrony 2.x非MD5/SHA1 密钥,则需要使用 版本 3 选项配置 chrony

(BZ#1895003)

powertop rebase 到版本 2.14

powertop 已升级至 2.14 版本。这是添加 Alder Lake、Sapphire 快速和 Rocket Lake 平台支持的更新。

(BZ#1834722)

tuned 现在将不必要的 IRQ 移到内处理 CPU

i40e、iavfmlx5 等网络设备驱动程序评估在线 CPU,以确定队列数量,从而确定要创建的 MSIX 向量。

在有大量隔离且日常维护 CPU 的低延迟环境中,当 TuneD 尝试将这些设备 IRQ 移到内务 CPU 中时,由于每个 CPU 量限制,它失败。

在这个版本中,TuneD 会根据日常任务 CPU 明确调整网络设备通道(以及 MSIX 向量)的数量。因此,所有设备 IRQ 现在可以在内务 CPU 上移动,以实现低延迟。

(BZ#1951992)

4.6. 安全性

libreswan rebase 到 4.4

libreswan 软件包已升级到上游版本 4.4,它引进了许多改进和程序错误修复。最值得注意的是:

  • IKEv2 协议:

    • 引入了 传输模式和主机到主机 连接中的 TCP 封装修复。
    • ipsec whack 命令 中添加了 --globalstatus 选项,用于显示重定向统计信息。
    • ipsec.conf 配置文件中的 vhostvnet 值不再允许 IKEv2 连接。
  • pluto IKE 守护进程:

    • 引入了使用非标准 IKE 端口的主机到主机连接的修复。
    • 添加了对等 ID(IKEv2 IDr 或 IKEv1 Aggr),以选择最佳的初始连接。
    • 禁用 interface-ip= 选项,因为 Libreswan 尚未提供对应的功能。
    • 修复了 ipsec__updown 脚本中的 PLUTO_PEER_CLIENT 变量,用于 传输模式的 NAT。
    • PLUTO_CONNECTION_TYPE 变量设置为 传输隧道
    • 非模板通配符 ID 连接现在可以匹配。

(BZ#1958968)

gnutls rebase 到 3.6.16

The gnutls 软件包已更新至版本 3.6.16。重要的程序错误修复和增强包括:

  • 当成功时,The gnutls_x509_crt_export2() 函数现在返回 0,而不是内部 base64 blob 的大小。这与 gnutls_x509_crt_export2(3) man page 中的文档一致。
  • 现在,由于在线证书状态协议(OCSP)不遵循的证书验证失败,GNUTLS_CERT_INVALID 标志被正确标记。
  • 在以前的版本中,当通过 -VERS-TLS1.2 选项显式禁用 TLS 1.2 时,如果启用了 TLS 1.3,服务器仍然会提供 TLS 1.2。现在,版本协商已被修复,TLS 1.2 现在可以被正确禁用。

(BZ#1956783)

socat rebase 到 1.7.4

socat 软件包已从 1.7.3 版本升级到 1.7.4,它提供了很多程序错误修复和改进。最值得注意的是:

  • GOPENUNIX-CLIENT 地址现在支持 SEQPACKET 套接字。
  • 通用的 setsockopt-int 和相关选项在侦听或接受地址时适用于连接的套接字。要在侦听套接字上启用设置选项,现在可以使用 setsockopt-listen 选项。
  • 向文件中添加了 -r-R 选项,用于原始转储传输的数据。
  • 添加了 ip-transparent 选项IP_TRANSPARENT 套接字选项。
  • OPENSSL-CONNECT 现在自动使用 SNI 功能,openssl-no-sni 选项可关闭 SNI。The openssl-snihost 选项覆盖 openssl-commonname 选项的值或服务器名称。
  • 添加了 accept-timeoutlisten-timeout 选项。
  • 添加了 ip-add-source-membership 选项。
  • 现在 ,UDP-DATAGRAM 地址不会象在 1.7.3 中一样检查对等回复端口。如果您的场景需要之前的行为,请使用 sourceport optioon。
  • 新的 proxy-authorization-file 选项从文件中读取 PROXY-CONNECT 凭据,并允许从进程表中隐藏此数据。
  • 添加了对 VS OCK -CONNECT 和 VSOCK- LISTEN 地址的 AF_VS OCK K 支持。

(BZ#1947338)

crypto-policies rebase 到 20210617

crypto-policies 软件包已升级到上游版本 20210617,它与之前的版本相比提供了很多改进和程序错误修复,最重要的是:

  • 现在,您可以使用作用域策略为不同的后端启用不同的算法集。现在,每个配置指令都可以仅限于特定的协议、库或服务。有关可用范围的完整列表和新语法的详情,请查看 crypto-policies(7) man page。例如,以下指令允许将 AES-256-CBC 密码与 SSH 协议搭配使用,从而影响 libssh 库和 OpenSSH 套件:

    cipher@SSH = AES-256-CBC+
  • 指令现在可以使用星号来使用通配符指定多个值。例如,以下指令使用 libssh 为应用程序禁用所有 CBC 模式密码:

    cipher@libssh = -*-CBC

    请注意,将来的更新可以引入与当前通配符匹配的新算法。

(BZ#1960266)

crypto-policies 现在在自定义策略中支持 AES-192 密码

系统范围的加密策略现在支持自定义策略和子策略中的 密码 选项的以下值:AES-192-GCMAES-192-CCMAES-192-CTRAES-192-CBC.因此,您可以为 Libreswan 应用程序和 AES-192- CBC 密码启用 AES-192- GCMAES-192-CTRAES-192-CBC 密码,用于 libssh 库和 OpenSSH 套件 的 crypto-policies

(BZ#1876846)

FUTURE 加密策略中禁用的 CBC 密码

这个 crypto-policies 软件包更新禁用在 FUTURE 策略中使用密码块链(CBC)模式的密码。FUTURE 中的设置应经受最近的将来攻击,这种改变反映了当前的进度。因此,当 FUTURE 策略活跃时 ,与 crypto-policies 相关的系统组件无法使用 CBC 模式。

(BZ#1933016)

添加新内核 AVC 追踪点

在这个版本中,添加了一个新的 avc:selinux_audited 内核追踪点,在要审核 SELinux 拒绝时会触发该触发器。此功能允许更方便地对 SELinux 拒绝进行低级调试。新的追踪点可用于 perf 等工具

(BZ#1954024)

SCAP 安全指南中新的 ACSC ISM 配置集

scap-security-guide 软件包现在提供澳大利亚网络安全中心(ACSC)信息安全手册(ISM)合规性配置集和相应的 Kickstart 文件。在这个版本中,您可以安装一个符合此安全基准的系统,并使用 OpenSCAP 套件来检查安全合规性并使用基于风险的 ACSC 定义的安全控制方法进行补救。

(BZ#1955373)

SCAP 安全指南 rebase 到 0.1.57

scap-security-guide 软件包已更新到上游版本 0.1.57,它提供一些程序错误修复和改进。最值得注意的是:

  • 推出了澳大利亚网络安全中心(ACSC)信息安全手册(ISM)简介。该配置集扩展了 Essential Eight 配置集,并添加了 ISM 中定义的更多安全控制。
  • 互联网安全中心(CIS)配置集被划分为四个不同的配置集,这些配置集与 CIS 官方基准中定义的强化级别和系统类型(服务器和工作站)不同。
  • 安全技术实施指南(STIG)安全配置集已更新,并实施最近发布的 V1R3 版的规则。
  • 介绍了带有 GUI 的安全技术实施指南(带有 GUI 的 STIG)安全配置集。该配置集从 STIG 配置集衍生而来,并与选择 Server with GUI 软件包选择的 RHEL 安装兼容。
  • ANSSI 高级概况表基于法国国家安全局(ANSSI)的 ANSSI BP-028 建议,已介绍。这包括实施高强化级别的配置集。

(BZ#1966577)

OpenSCAP rebase 到 1.3.5

OpenSCAP 软件包已更新到上游版本 1.3.5。重要的修复和增强包括:

  • 默认为 ovalxccdf 模块的 validate 命令启用基于 Schematron 的验证。
  • 添加了 SCAP 1.3 源数据流 Schematron。
  • 添加了 XML 签名验证。
  • 允许清理 mtime 到 SOURCE_DATE_EPOCH.
  • 添加了 严重性角色 属性。
  • 支持规则和组(XCCDF)中的 需要 和冲突 元素。
  • HTML 报告中的 Kubernetes 修复。
  • 以非本地方式处理 gpfsprocsysfs 文件系统.
  • 修复了常见选项处理风格为 --arg=val
  • 修复了 StateType 操作器的行为。
  • XPath 表达式(xmlfilecontent)中忽略的命名空间,以允许不完整的 XPath 查询。
  • 修复了导致模糊数据存在警告的问题。
  • 修复了 --stig-viewer 功能中的多个 seg faults 和一个损坏的测试。
  • 修复了 TestResult/benchmark/@href 属性。
  • 修复了许多内存管理问题。
  • 修复了许多内存泄漏的问题。

(BZ#1953092)

验证数字签名的 SCAP 源数据流

为满足安全内容自动化协议(SCAP)1.3 规范,OpenSCAP 现在验证数字签名 SCAP 源数据流的数字签名。因此,当评估数字签名的 SCAP 源数据流时,OpenSCAP 会验证数字签名。签名验证会在加载文件时自动执行。带有无效签名的数据流被拒绝,OpenSCAP 不会评估其内容。OpenSCAP 使用 XML 安全库和 OpenSSL 加密库来验证数字签名。

您可以通过在 oscap xccdf eval 命令中添加 --skip-signature-validation 选项来跳过签名验证。

重要

OpenSCAP 不解决作为 KeyInfo 签名元素一部分且用于验证签名的证书或公钥的信任性。您应该根据自己的密钥进行验证,以防止评估已被错误参与者修改和签名的数据流。

(BZ#1966612)

新的 DISA STIG 配置集与 Server with GUI 安装兼容

SCAP 安全指南 中添加了新的配置集 DISA STIG 和 GUI。这个配置集源自 DISA STIG 配置集,并与选择 Server with GUI 软件包组的 RHEL 安装兼容。以前存在的 stig 配置集与 Server with GUI 不兼容,因为 DISA STIG 需要卸载任何图形用户界面。但是,如果在评估期间由安全官正确记录,则可能会覆盖此错误。因此,新配置集有助于将 RHEL 系统安装为与 DISA STIG 配置集一致的 GUI 服务器

(BZ#1970137)

STIG 安全配置集更新至版本 V1R3

SCAP 安全指南中的 DISA STIG for Red Hat Enterprise Linux 8 配置集已更新,以与最新版本 V1R3 保持一致。现在,这个配置集也更加稳定,并与 Defense 信息系统(DISA)提供的 RHEL 8 STIG(安全技术实施指南)手动基准兼容。

第二次迭代带来了大约 90% 的覆盖范围。您应该只使用这个配置集的当前版本,因为旧版本已不再有效。

警告

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

(BZ#1993056)

SCAP 安全指南中的三个新的 CIS 配置集

SCAP 安全指南介绍了三个与互联网安全中心(CIS)Red Hat Enterprise Linux 8 Benchmark 一致的新合规性配置集。CIS RHEL 8 Benchmark 为"服务器"和"Workstation"部署提供了不同的配置建议,并为每个部署定义了两个级别的配置:"级别 1"和"级别 2"。以前在 RHEL8 中提供的 CIS 配置集只代表 "Server Level 2"。三个新配置集完成了 CIS RHEL8 Benchmark 配置集的范围,现在您可以更轻松地根据 CIS 建议评估您的系统。

所有当前可用的 CIS RHEL 8 配置集都是:

工作站级别 1

xccdf_org.ssgproject.content_profile_cis_workstation_l1

工作站级别 2

xccdf_org.ssgproject.content_profile_cis_workstation_l2

服务器级别 1

xccdf_org.ssgproject.content_profile_cis_server_l1

服务器级别 2

xccdf_org.ssgproject.content_profile_cis

(BZ#1993197)

通过对类似的系统调用分组来改进审计的补救性能

在以前的版本中,审计补救会针对配置集审计的每个系统调用生成单个规则。这会导致大量审计规则降低性能。在这个版本中,Audit 的补救可将具有相同字段的类似系统调用的规则分组到一条规则中,从而提高性能。

系统调用示例分组在一起:

-a always, exit -F arch=b32 -S chown, fchown, fchownat, lchown -F auid>=1000 -F auid!=unset -F key=perm_mod
-a always, exit -F arch=b32 -S unlink, unlinkat, rename, renameat, rmdir -F auid>=1000 -F auid!=unset -F key=delete
-a always, exit -F arch=b32 -S chown, fchown, fchownat, lchown -F exit=-EACCES -F auid>=1000 -F auid!=unset -F key=unsuccesful-perm-change
-a always, exit -F arch=b32 -S unlink, unlinkat, rename, renameat -F auid>=1000 -F auid!=unset -F exit=-EACCES -F auid>=1000 -F auid!=unset -F key=unsuccessful-delete

(BZ#1876483)

添加了 ANSSI-BP-028 High 级别的配置集

根据法国国家安全局(ANSSI)的 ANSSI BP-028 建议,推出了 ANSSI 高级配置文件。这会完成 SCAP 安全指南中 所有 ANSSI-BP-028 v1.2 强化级别的配置集的可用性。使用新的配置集,您可以在高强化级别将系统强化为来自 GNU/Linux Systems 的 ANSSI 的建议。因此,您可以使用 ANSSI Ansible Playbook 和 ANSSI SCAP 配置集将 RHEL 8 系统合规性配置和自动执行到最严格的级别。

(BZ#1955183)

添加了用于加密 Rsyslog TCP 和 RELP 流量的 OpenSSL

OpenSSL 网络流驱动程序已添加到 Rsyslog 中。此驱动程序使用 OpenSSL 库实施受 TLS 保护的传输。与使用 GnuTLS 库的流驱动程序相比,这提供了额外的功能。现在,您可以使用 OpenSSL 或 GnuTLS 作为 Rsyslog 网络流驱动程序。

(BZ#1891458)

rsyslog rebase 到 8.2102.0-5

rsyslog 软件包被更新到上游版本 8.2102.0-5,它与上一版本相比提供了以下显著变化:

  • 添加了 exists() 脚本函数,以检查变量是否存在,如 $!path!var
  • 添加了对使用 the omrelp 和 imrelp 模块的新配置参数 tls.tlscfgcmd 设置 OpenSSL 配置命令的支持。
  • omfwd 模块中添加了新的 rate-limit 选项,用于发送到远程服务器的速率限制 syslog 信息:

    • ratelimit.interval 指定速率限制间隔(以秒为单位)。
    • ratelimit.burst 指定消息数中速率限制突发。
  • 通过各种改进重写 标记 模块。
  • imptcp 模块中添加 max sessions 配置参数。最大值是针对每个实例测量的,而不是在所有实例间进行全局测量。
  • 添加了 rsyslog-openssl 子软件包;此网络流驱动程序使用 OpenSSL 库实施受 TLS 保护的传输。
  • 使用 MaxBytesPerMinute 和 MaxLinesPerMinute 选项为 imfile 模块添加每分钟的速率限制。这些选项接受整数值,并限制一分钟内可以发送的字节数或行数。
  • 添加了对 imtcp and omfwd 模块的支持,以使用 streamdriver.TlsVerifyDepth 选项为证书链验证配置最大深度。

(BZ#1932795)

4.7. 网络

支持在 NetworkManager 中暂停 ethtool 参数

在某些情况下,需要在特定网络接口上明确设置非自动暂停参数。在以前的版本中,NetworkManager 无法在 nmstate 中暂停 ethtool 的控制流参数。要禁用 pause 参数的自动协商并明确启用 RX/TX 暂停支持,请使用以下命令:

# nmcli connection modify enp1s0 ethtool.pause-autoneg no ethtool.pause-rx true ethtool.pause-tx true

(BZ#1899372)

NetworkManager 中的新属性,用于在混杂模式下设置物理和虚拟接口

在这个版本中,在 NetworkManager 中添加了 802-3-ethernet.accept-all-mac-addresses 属性,以接受所有 MAC 地址 模式设置物理和虚拟接口。在这个版本中,内核可以接受 以接受所有 MAC 地址模式针对当前接口 MAC 地址 的网络软件包。要在 eth1 中启用 接受所有 MAC 地址 模式,请使用以下命令:

$ sudo nmcli c add type ethernet  ifname eth1 connection.id eth1  802-3-ethernet.accept-all-mac-addresses true

(BZ#1942331)

NetworkManager rebase 到版本 1.32.10

NetworkManager 软件包已升级到上游版本 1.32.10,它提供了很多改进和程序错误修复。

有关显著变化的更多信息,请阅读此版本的 上游发行注记

(BZ#1934465)

NetworkManager 现在支持 nftables 作为防火墙后端

此增强为 NetworkManager 添加了对 nftables 防火墙框架的支持。将默认后端从 iptables 切换到 nftables

  1. 使用以下内容创建 /etc/NetworkManager/conf.d/99-firewall-backend.conf 文件:

    [main]
    firewall-backend=nftables
  2. 重新加载 NetworkManager 服务。

    # systemctl reload NetworkManager

(BZ#1548825)

firewalld 被 rebase 到版本 0.9.3

firewalld 软件包已升级到上游版本 0.9.3,它提供了很多改进和程序错误修复。

详情请查看上游发行注记:

(BZ#1872702)

firewalld 策略对象功能现已可用

在以前的版本中,您无法使用 firewalld 来过滤虚拟机、容器和区域之间的流量流。在这个版本中,增加了 firewalld 策略对象功能,它在 firewalld 中提供转发和输出过滤。

(BZ#1492722)

现在完全支持多路径 TCP

从 RHEL 8.5 开始,完全支持多路径 TCP(MPTCP)。MPTCP 改进了网络中的资源使用量以及网络故障的恢复能力。例如:在 RHEL 服务器中使用多路径 TCP,启用了 MPTCP v1 的智能手机可以连接到服务器上运行的应用程序,并在 Wi-Fi 和手机网络间切换,而不会中断到服务器的连接。

RHEL 8.5 引入了额外的功能,例如:

  • 多个并发活跃子流
  • 支持 active-backup
  • 改进了流性能
  • 更好的内存利用率,以及 receivesend 缓冲区自动调整
  • SYN cookie 支持

请注意,在服务器中运行的应用程序必须原生支持 MPTCP 或管理员必须在内核中载入 eBPF 程序,以便动态地将 IPPROTO_TCP 改为 IPPROTO_MPTCP

详情请查看 多路径 TCP 入门

(JIRA:RHELPLAN-57712)

4.8. 内核

RHEL 8.5 中的内核版本

Red Hat Enterprise Linux 8.5 带有内核版本 4.18.0-348。

BZ#1839151

现在支持 EDAC for Intel Sapphire 快速处理器

此增强为 Intel Sapphire 快速处理器提供错误检测和 Correction(EDAC)设备支持。EDAC 主要处理 Error Code Correction(ECC)内存,并检测和报告 PCI 总线奇偶校验错误。

(BZ#1837389)

bpftrace 软件包被 rebase 到版本 0.12.1

bpftrace 软件包已升级到 0.12.1 版本,提供多个程序错误修复和增强。与之前版本相比的显著变化包括:

  • 添加了新的 内置 路径,这是一种新的可靠方法,用于显示路径结构的完整路径。
  • 添加了对 kfunc 探测 和追踪点 类别的通配符支持。

(BZ#1944716)

vmcore 捕获在 CPU hot-add 或 hot-removal 操作后按预期工作

在以前的版本中,在 IBM POWER 系统中,在每个 CPU 或内存热插拔或删除操作后,设备树中的 CPU 数据会变得过时,除非重新 载入 kdump.service。要重新加载最新的 CPU 信息,kdump.service 通过设备节点解析来获取 CPU 信息。但是,某些 CPU 节点已在其热移动期间丢失。因此, kdump.service reload 和 CPU hot-removal 间的竞争条件同时发生,这会导致转储失败。然后,后续的崩溃可能不会捕获 vmcore 文件。

这个版本不需要在 CPU 热插拔后重新载入 kdump.service,且 vmcore 捕获可以按预期工作。

注:对于固件辅助转储(fadump),这个增强功能可以正常工作。对于标准 kdump,kdump .service reload 会在 热插拔 操作中发生。

(BZ#1922951)

kdumpctl 命令现在支持新的 kdumpctl 估算 工具

kdumpctl 命令现在支持 kdumpctl 估算 程序。根据现有的 kdump 配置,kdump ctl 估算kdump 内存分配显示合适的估算值。

崩溃内核的最小大小可能因硬件和机器规格而异。因此,之前很难估算准确的 crashkernel= 值。

在这个版本中,kdump ctl 估算 工具提供了一个估算值。这个值是推荐的最佳估计值,可以作为配置可行 崩溃内核= 值的良好参考。

(BZ#1879558)

IBM TSS 2.0 软件包被 rebase 到 1.6.0

IBM 的受信任计算组(TCG)软件堆栈(TSS)2.0 二进制软件包已升级到 1.6.0。在这个版本中,AMD64 和 Intel 64 架构增加了 IBM TSS 2.0 支持。

它是受信任的平台模块(TPM)2.0 的用户空间 TSS,通过更简单的接口实施与 TCG TSS TSS 增强型系统应用程序接口(ESAPI)、系统应用程序接口(SAPI)和 TPM 命令传输接口(TCTI)API 等效的功能。

它是一种安全中间件,允许应用程序和平台共享 TPM 并将其集成到安全应用程序中。

与之前的版本相比,这个 rebase 提供了很多程序错误修复和增强。最显著的更改包括以下新属性:

  • tsscertifyx509: 验证 x509 证书
  • tssgetcryptolibrary: 显示当前的加密库
  • tssprintattr :将 TPM 属性打印为文本
  • tsspublicname :计算实体的公共名称
  • tsssetcommandcodeauditstatus: clears 或 set code via TPM2_SetCommandCodeAuditStatus
  • tsstpmcmd: 发送带内 TPM 模拟器信号

(BZ#1822073)

The schedutil CPU 频率调控器现在包括在 RHEL 8 中

The schedutil CPU 调控器使用 CPU scheduler. schedutil 上可用的 CPU 使用率数据是 CPU 调度程序的一部分,它可以直接访问调度程序的内部 数据结构。schedutil 控制 CPU 如何提高并降低响应系统负载的频率。您必须手动选择 schedutil 频率调控器,因为它没有启用为默认值。

每个 CPU. schedutil 有一个 policyX 目录,它位于内核中现有 CPUFreq 调控器的 policy X/scaling_governors 列表中,并附加到 /sys/devices/system/cpu/cpufreq/policyx 策略。可以覆盖策略文件以对其进行更改。

请注意,在使用 intel_pstate 扩展驱动程序时,可能需要为 intel_pstate=passive 命令行参数配置 intel_pstate 以便可用并由调控商列出。intel_pstate 是 Intel 硬件上具有任何现代 CPU 的默认设置。

(BZ#1938339)

rt-tests 套件 rebase 到 rt-tests-2.1 上游版本

The rt-tests 套件已 rebase tort -tests-2.1 版本,提供多个程序错误修复和增强。与之前版本相比的显著变化包括:

  • rt-tests 套件中的各种程序进行修复。
  • 通过常见选项集使程序更加一致,例如: soslat 程序的选项 -t --runtime 选项被重命名为 -D,以指定与套件其余部分匹配的运行持续时间。
  • 实施一个新功能,以 json 格式输出数据。

(BZ#1954387)

Intel® QuickAssist Technology Library(QATlib)被 rebase 到版本 21.05

qatlib 软件包已更新至版本 21.05,它提供多个程序错误修复和增强。主要变更包括:

  • 添加对几个加密算法的支持:

    • AES-CCM 192/256
    • ChaCha20-Poly1305
    • PKE 8K (RSA, DH, ModExp, ModInv)
  • 修复不同节点上的设备枚举
  • Fixing pci_vfio_set_command for 32 位构建

有关 QATlib 安装的更多信息,请检查 确保 Intel® QuickAssist 技术堆栈在 RHEL 8 上正常工作

(BZ#1920237)

4.9. 文件系统和存储

现在,当指定了多个配额类型时,xfs _quota 状态 命令会输出所有宽限期

xfs_quota 状态 命令现在为命令行中指定的多个配额类型输出宽限期。在以前的版本中,即使指定了 -g、-p 或 - u 中的多个,也只会显示一个。

(BZ#1949743)

-h 选项 添加到 rpc.gsd 守护进程和 set-home 选项添加到 /etc/nfs.conf 文件中

此补丁将 -H 选项添加到 rpc.gssdset-home 选项到 /etc/nfs.conf,但不更改默认行为。

默认情况下,rpc.gsd$HOME 设置为 /,以避免当用户主目录位于具有 Kerberos 安全性的 NFS 共享上时可能会出现死锁。如果将 -H 选项添加到 / rpc.gssdset-home=0,则添加到 /etc/nfs.conf,rpc.gssd 没有将 $HOME 设置为 /

这些选项允许您在 $HOME/.k5identity 中使用 Kerberos k5identity 文件,并且假设 NFS 主目录不在具有 Kerberos 安全性的 NFS 共享上。这些选项仅用于特定环境,例如 k5identity 文件的需求。如需更多信息,请参阅 k5identity man page。

(BZ#1868087)

存储 RHEL 系统角色现在支持 LVM VDO 卷

虚拟数据优化器(VDO)有助于优化存储卷的使用。在这个版本中,管理员可以使用 存储系统 角色来管理逻辑卷(LVM)VDO 卷上的 压缩 和重复数据删除

(BZ#1882475)

4.10. 高可用性和集群

现在完全支持 pcs cluster setup 命令的本地模式版本

默认情况下, pcs cluster setup 命令会自动将所有配置文件与集群节点同步。从 RHEL 8.3 开始,pcs cluster setup 命令作为技术预览提供了 --corosync-conf 选项。现在,RHEL 8.5 完全支持这个功能。指定这个选项可将命令切换到 本地 模式。在此模式中,pc s 命令行界面会创建一个 corosync.conf 文件,并将其仅保存到本地节点的指定文件中,而不与任何其他节点通信。这可让您在脚本中创建 corosync.conf 文件,并使用脚本处理该文件。

(BZ#1839637)

在集群节点子集上配置仅监视 SBD 的功能

在以前的版本中,要使用仅限 watchdog 的 SBD 配置,集群中的所有节点都必须使用 SBD。这会阻止在一个支持 SBD 的集群中使用 SBD,但其他节点(通常是远程节点)需要某种其他形式的隔离。用户现在可以使用新的 fence_watchdog 代理配置仅监视 SBD 设置,该代理允许群集配置,其中只有某些节点使用监视的 SBD 进行隔离,而其他节点则使用其他隔离类型。个群集可能只有一个这样的设备,它必须命名为 watchdog

(BZ#1443666)

新的 pcs 命令更新 SCSI 隔离设备,而不会重启所有其他资源

使用 pcs stonith update 命令更新 SCSI 隔离设备会导致重启在运行 stonith 资源的同一节点上运行的所有资源。新的 pcs stonith update-scsi-devices 命令允许您更新 SCSI 设备,而不会导致其他群集资源的重启。

(BZ#1872378)

pcs resource secure-disable 命令增加了减少的输出显示选项

pcs resource secure-disablepcs resource disable --safe 命令在错误报告后显示冗长的模拟结果。现在,您可以为那些命令指定 --brief 选项,以仅打印错误。错误报告现在始终包含受影响资源的资源 ID。

(BZ#1909901)

pcs 现在接受 PromotedUnpromoted 作为角色名称

pcs 命令行界面现在接受 PromotedUnpromoted 角色在 Pacemaker 配置中指定。这些角色名称的功能等同于 MasterSlave Pacemaker 角色。MasterSlave 会在配置中显示这些角色的名称,并帮助文本。

(BZ#1885293)

新的 pcs resource status display 命令

pcs resource statuspcs stonith status 命令现在支持以下选项:

  • 您可以使用 pcs resource status node= node_id命令显示在特定节点上配置的资源状态,以及 pcs stonith status node=node_id 命令。您可以使用这些命令在集群和远程节点上显示资源的状态。
  • 您可以使用 pcs resource status resource _id 和 pcs stonith status resource_ id 命令显示单个资源的状态。
  • 您可以使用 pcs resource status tag _id 和 pcs stonith status tag_id 命令显示带有指定标签的所有资源的状态。

(BZ#1290830, BZ#1285269)

新的 LVM 卷组标记来控制自动激活

LVM 卷组现在支持 setautoactivation 标记,该标记 可控制您从卷组创建的逻辑卷在启动时是否自动激活。在创建将由群集中 Pacemaker 管理的卷组时,请使用卷组 vg create --setautoactivation n 命令将此标记设置为 n,以防止可能的数据损坏。如果您在 Pacemaker 群集中使用了现有卷组,请使用 vgchange --setautoactivation n 设置 标志。

(BZ#1899214)

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

现在完全支持 nodejs:16 模块流

nodejs:16 模块流以前作为技术预览提供,在 RHSA-2021:5171 公告中被完全支持。nodejs:16 模块流现在提供 Node.js 16.13.1,它是一个长期支持(LTS)版本。

从 RHEL 8.3 开始,Node .js 16 包括在 RHEL 8.5 中,与 Node.js 14 提供了大量新功能、程序错误和安全修复。

主要变更包括:

  • V8 引擎已升级到 9.4 版本。
  • npm 软件包管理器已升级到 8.1.2 版本。
  • 新的 Timers Promises API 提供了一组替代的计时器函数,可返回 Promise 对象。
  • Node.js 现在提供了一个新的实验性 Web Streams API。
  • Node.js 现在包含 Corepack,这是一个实验性工具,可让您使用给定项目中配置的软件包管理器,而无需手动安装它们。
  • Node.js 现在提供了一个实验性的 ECMAScript 模块(ESM)加载程序 API,它整合了 ESM 加载器 hook。

要安装 nodejs:16 模块流,请使用:

# yum module install nodejs:16

如果要从 nodejs:14 流升级,请参阅切换到更新的流

(BZ#1953991, BZ#2027610)

新模块流: ruby:3.0

RHEL 8.5 在新的 ruby:3.0 模块流中引入了 Ruby 3.0.2。与 RHEL 8.3 提供的 Ruby 2.7 相比,这个版本提供了很多性能改进、程序错误和安全修复以及新功能。

主要改进包括:

  • 并发和并行功能:

    • Ractor 是提供线程安全并行执行的 Actor-model 抽象,作为实验性功能提供。
    • 光纤调度程序 已作为实验性功能推出。光纤调度程序截获 阻止操作,这样便无需更改现有代码,即可实现轻量并发。
  • 静态分析功能:

    • 引入了 RBS 语言,它描述了 Ruby 程序的结构。添加了 The rbs gem 来解析 RBS 编写的类型定义。
    • 引进了 TypeProf 实用程序,它是 Ruby 代码的类型分析工具。
  • case/in 表达式的 模式匹配不再是实验性的。
  • 重新设计了单行模式匹配(一种实验功能)。
  • find 模式已添加为实验性功能。

改进的性能:

  • 现在,将长代码粘贴到 交互式 Ruby Shell(IRB) 的速度要快得多。
  • 测量结果 命令已添加到 IRB 中以测量时间。

其他显著变化包括:

  • 关键字参数已与其他参数分隔。
  • 用户安装的 gems 的默认目录现在是 $HOME/.local/share/gem/,除非 $HOME/.gem/ 目录已经存在。

要安装 ruby:3.0 模块流,请使用:

# yum module install ruby:3.0

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

(BZ#1938942)

Python urllib 解析功能的默认分隔符更改

为缓解 Python urllib 库中的 Web Cache Poisoning CVE-2021-23336urllib.parse.parse_qslurllib.parse.parse_qs 功能的默认分隔符将从 & 和分号(;)改为只使用 &。

这个变化是在 Python 3.6 中在 RHEL 8.4 中实施的,现在被向后移植到 Python 3.8 和 Python 2.7。

默认分隔符的更改可能会向后不兼容,因此红帽提供了一种方法来配置 Python 软件包中修改了默认分隔符的行为。此外,如果受影响的 urllib 解析功能检测到客户的应用受到更改的影响,则发出警告。

如需更多信息,请参阅 Python urllib 库(CVE-2021-23336)知识库中的 Web Cache Poisoning 的 Mitigation

Python 3.9 不受影响,并且已经包含新的默认分隔符(&),其只能在调用 由Python 代码编写的 urllib.parse.parse_qslurllib.parse.parse_qs 函数时传递 separator 参数来进行修改。

(BZ#1935686, BZ#1931555, BZ#1969517)

Python ipaddress 模块不再允许 IPv4 地址中的零

为缓解 CVE-2021-29921,Python ipaddress 模块现在拒绝带有 AddressValueError 的前导零的 IPv4 地址:不允许前导零 错误。

python38 和 python 39 模块中引入了这个变化。RHEL 中发布的早期 Python 版本不受 CVE-2021-29921 的影响。

依赖之前行为的客户可以预先处理其 IPv4 地址输入,从而去除前导零。例如:

>>> def reformat_ip(address): return '.'.join(part.lstrip('0') if part != '0' else part for part in address.split('.'))
>>> reformat_ip('0127.0.0.1')
'127.0.0.1'

要使用显式循环剥离前导零以提高可读性,请使用:

def reformat_ip(address):
    parts = []
    for part in address.split('.'):
        if part != "0":
            part = part.lstrip('0')
        parts.append(part)
    return '.'.join(parts)

(BZ#1986007, BZ#1970504, BZ#1970505)

php:7.4 模块流被 rebase 到版本 7.4.19

php:7.4 模块流提供的 PHP 脚本语言已从 7.4.6 升级到版本 7.4.19。这个版本提供了多个安全和程序错误修复。

(BZ#1944110)

新软件包: pg_repack

new pg_repack 软件包已添加到 postgresql:12postgresql:13 模块流中。The pg_repack 软件包提供了一个 PostgreSQL 扩展,可让您从表和索引中删除 bloat,也可以恢复集群索引的物理顺序。

(BZ#1967193,BZ#1935889)

新模块流: nginx:1.20

nginx 1.20 web 和代理服务器现在作为 nginx:1.20 模块流提供。与之前发布的 1.18 版本相比,这个版本提供了很多程序错误修复、安全修复、新功能以及改进。

新特性:

  • nginx 现在支持使用在线证书状态协议(OCSP)的客户端 SSL 证书验证。
  • nginx 现在支持根据最小可用空间清除缓存。此支持作为 proxy_cache _path 指令的 min_ free 参数实施。
  • 添加了一个新的 ngx_stream_set_module 模块,它可让您为变量设置值。

增强的指令:

  • 现在提供了多个新指令,如 ssl_conf_commandssl_reject_handshake
  • proxy_cookie_flags 指令现在支持变量。

改进了对 HTTP/2 的支持:

  • ngx_http_v2 模块现在包含 lingering _close、ling ering_time、lingering_timeout 指令。
  • HTTP/2 中的连接处理与 HTTP/1.x 一致。从 nginx 1.20,使用 keepalive_timeoutkeepalive_requests 指令,而不是删除的 http2_recv_timeouthttp2_idle_timeouthttp2_max_requests 指令。

要安装 nginx:1.20 流,请使用:

# yum module install nginx:1.20

如果要从 nginx:1.20 流升级,请参阅切换到更新的流

(BZ#1945671)

squid:4 模块流 rebase 到版本 4.15

Squid 代理服务器(位于 squid:4 模块流中)已从 4.11 升级到 4.15 版本。这个版本提供了各种程序错误和安全修复。

(BZ#1964384)

配额 现在支持 HPE XFS

配额 实用程序现在提供对 HPE XFS 文件系统的支持。因此,HPE XFS 用户可以通过 配额 实用程序监控和管理磁盘使用情况。

(BZ#1945408)

mutt rebase 到版本 2.0.7

Mutt 电子邮件客户端已更新至 2.0.7 版本,提供一些增强和程序错误修复。

主要变更包括:

  • mutt 现在使用 XOAUTH2 机制提供对 OAuth 2.0 授权协议的支持。mutt 现在还支持用于 IMAP、POP 和 SMTP 协议的 OAUTHBEARER 验证机制。基于 OAuth 的功能通过外部脚本提供。因此,您可以使用身份验证令牌将 Mutt 与各种云电子邮件提供商连接,如 Gmail。有关如何使用 OAuth 支持设置 Mutt 的更多信息,请参阅 如何使用 OAuth2 身份验证使用 Gmail 设置 Mutt
  • mutt 添加了对域字面电子邮件地址的支持,例如 user@[IPv6:fcXX:…​].
  • 新的 $ssl_use_tlsv1_3 配置变量允许 TLS 1.3 连接(如果电子邮件服务器支持)。此变量默认为启用。
  • 新的 $imap_deflate 变量添加了对 COMPRESS=DEFLATE 压缩的支持。变量默认为禁用。
  • $ssl_starttls 变量不再控制未加密 IMAP PREAUTH 连接。如果您依赖 STARTTLS 进程,则改为使用 $ssl_force_tls 变量。

请注意,即使更新到新的 Mutt 版本,ssl_force_tls 配置变量仍默认为 no,以防止 RHEL 用户在现有环境中遇到问题。在 Mutt 的上游版本中,ssl_force_tls 现在被默认启用。

(BZ#1912614, BZ#1890084)

4.12. 编译器和开发工具

Go Toolset rebase 到版本 1.16.7

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

  • 现在,GO111MODULE 环境变量默认设置为 on。要恢复此设置,请将 GO111MODULE 更改为 auto
  • Go linker 现在使用较少的资源,提高了代码的稳健性和可维护性。这适用于所有支持的体系结构和操作系统。
  • 使用新的 嵌入 软件包,您可以在编译程序的同时访问嵌入的文件。
  • io/ioutil 软件包的所有功能都已移到 io and os 软件包中。虽然您仍然可以使用 io/ioutil,但 io and os 软件包提供更好的定义。
  • Delve 调试器已被 rebase 到 1.6.0,现在支持 Go 1.16.7 Toolset。

如需更多信息,请参阅 使用 Go Toolset

(BZ#1938071)

Rust Toolset rebase 到版本 1.54.0

Rust Toolset 已更新至 1.54.0 版本。主要变更包括:

  • Rust 标准库现在可用于 is m32-unknown-unknown 目标。在这个版本中,您可以生成 WebAssembly 二进制文件,包括新稳定的内部。
  • Rust 现在包括数组的 IntoIterator 实施。在这个版本中,您可以使用 IntoIterator 特征按值迭代数组并将数组传递给方法。但是,array.into_iter() 仍会通过引用来迭代值,直到 2021 版 Rust。
  • 或 模式的语法现在允许在 模式 中的任何位置嵌套。例如:Pattern(1|2) 而不是 Pattern(1)|Pattern(2)
  • Unicode 标识符现在可以包含 Unicode 标准 #31 中定义的所有有效标识符字符。
  • 方法和特征实施已经稳定。
  • 默认重新启用增量编译。

如需更多信息,请参阅使用 Rust Toolset

(BZ#1945805)

LLVM Toolset rebase 到版本 12.0.1

LLVM Toolset 已升级到 12.0.1 版本。主要变更包括:

  • 添加了新编译器标志 -march=x86-64-v[234]
  • Clang 编译器的编译器标志 -fasynchronous-unwind-tables 现在是 Linux AArch64/PowerPC 中的默认设置。
  • Clang 编译器现在支持 C++20 可能属性 [[类似]] 和 [[notlikely]]。
  • 添加了新函数属性 tune-cpu。它允许独立于 target-cpu 属性或 TargetMachine CPU 应用微架构优化。
  • 新的 sanitizer -fsanitize=unsigned-shift-base 已添加到整数 sanitizer -fsanitize=integer 以提高 安全性。
  • PowerPC 目标上的代码生成已被优化。
  • WebAssembly 后端现在在 LLVM 中启用。在这个版本中,您可以使用 LLVM 和 Clang 生成 WebAsembly 二进制文件。

如需更多信息,请参阅使用 LLVM Toolset

(BZ#1927937)

CMake rebase 到版本 3.20.2

CMake 从 3.18.2 改为 3.20.2。要在需要 3.20.2 或更少版本的项目上使用 CMake,请使用命令 cmake_minimum_required(版本 3.20.2)。

主要变更包括:

  • C++23 编译器模式现在可以使用目标属性 CXX_STANDARDCUDA_STANDARDOBJCXX_STANDARD 或使用编译功能中的 cxx_std_23 元功能来指定。
  • CUDA 语言支持现在允许 NVIDIA CUDA 编译器成为符号链接。
  • 现在,Intel 1API NextGen LLVM 编译器被 IntelLLVM 编译器 ID 支持。
  • CMake 现在通过与 Android NDK 的工具链文件合并,促进 Android 的交叉编译。
  • 当运行 cmake(1) 以生成项目构建系统时,未知的命令行参数以连字符开头现在将被拒绝。

有关新功能和已弃用功能的更多信息,请参阅 CMake 发行注记

(BZ#1957947)

新的 GCC 工具集 11

GCC 工具集 11 是提供开发工具最新版本的编译器工具集。它以 AppStream 存储库中的 Software Collection 的形式作为 Application Stream 提供。

从 GCC Toolset 10 开始,以下组件被 rebase:

  • GCC 到版本 11.2
  • GDB 到版本 10.2
  • Valgrind 到版本 3.17.0
  • SystemTap 到版本 4.5
  • Binutils 到 2.36 版本
  • elfutils 到版本 0.185
  • dwz 到版本 0.14
  • annobin 到版本 9.85

有关组件的完整列表,请参阅 GCC Toolset 11

要安装 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 版本的容器镜像已弃用。

(BZ#1953094)

.NET 更新至 6.0 版本

Red Hat Enterprise Linux 8.5 带有 .NET 版本 6.0。主要改进包括:

  • 支持 64 位 Arm(aarch64)
  • 支持 IBM Z 和 LinuxONE(s390x)

如需更多信息,请参阅 .NET 6.0 RPM 软件包 的发行说明和 .NET 6.0 容器 的发行注记。

(BZ#2022794)

GCC Toolset 11:GCC rebase 到版本 11.2

在 GCC Toolset 11 中,GCC 软件包已更新至版本 11.2。重要的程序错误修复和增强包括:

常规改进

  • GCC 现在默认为 DWARF Version 5 调试格式。
  • 诊断中显示的列号默认代表实际列号,并遵循多列字符。
  • 直线代码向量化时会考虑整个函数。
  • 如果匹配同一变量的系列条件表达式各自包含比较表达式,则可以转换为 switch 语句。
  • 流程优化改进:

    • 新的 IPA-modref 直通由 -fipa-modref 选项控制,可跟踪函数调用的副作用,并提高点分析的准确性。
    • 相同的代码折叠通过由 -fipa-icf 选项控制,极大改进,以增加统一功能的数量并减少编译时间内存使用。
  • 链接时间优化改进:

    • 改进了链接期间的内存分配,以减少峰值内存使用。
  • 通过使用 IDE 中的新 GCC_EXTRA_DIAGNOSTIC_OUTPUT 环境变量,您可以在不调整构建标志的情况下请求机器可读的"fix-it hints"。
  • 静态分析器通过 -fanalyzer 选项运行,提供的很多程序错误修复和增强功能得到了显著改进。

特定于语言的改进

c 系列

  • C 和 C++ 编译器支持 OpenMP 结构中的非循环嵌套以及 OpenMP 5.0 规范的分配器例程。
  • 属性:

    • 新的 no_stack_protector 属性标记不应通过堆栈保护来检测的功能(-fstack-protector)。
    • 改进后的 malloc 属性可用于识别分配器和经销商 API 对。
  • 新警告:

    • -Wsizeof-array-div-Wall 选项启用,当第一个 运算符应用到数组时,会警告对两个大小 运算符的划分,并且 devisor 不等于数组元素的大小。
    • -Wstringop-overread (默认启用)会警告对字符串函数的调用,这些函数试图读过作为参数传递给它们的阵列的末尾。
  • 增强的警告:

    • -Wfree-nonheap-object 使用从动态内存分配功能返回的指针检测更多调用功能实例。
    • -Wmaybe-uninitialized 将指针的传递和引用未初始化内存的传递诊断为采用 const-qualified 参数的功能。
    • -Wuninitialized 检测来自未初始化动态分配的内存的读取。

C

  • 通过 -std=c2x 和 -std=c2x 和 -std=gnu2x 选项支持即将推出的 ISO C2 X 标准中的几个新功能。例如:

    • 标准属性被支持。
    • 支持 __has_c_attribute 预处理器运算符。
    • 标签可能会在声明之前和复合语句的末尾出现。

C++

  • 默认模式更改为 -std=gnu++17
  • C++ 库 libstdc++ 现在改进了 C++17 支持。
  • 实施了几个新的 C++20 功能。请注意,C++20 支持是实验性的。

    有关功能的更多信息,请参阅 C++20 语言功能

  • C++ 前端对即将到来的 C++23 草案功能具有实验性支持。
  • 新警告:

    • -Wctad-maybe-unsupported, 默认禁用,警告在类型上执行类模板参数,且无滥用指南。
    • 当基于范围的 for 循环创建不必要的和资源低效副本时,由 -Wall 启用的 - Wrange-loop-construct 将发出警告。
    • -Wmismatched-new-delete-Wall 启用,警告有关使用从不匹配运算符的新形式的返回或从其他不匹配分配功能返回的调用 operator 删除的指针。
    • -Wvexing-parse 默认启用,警告大多数 vexing 解析规则:当声明看起来类似于变量定义时,但 C++ 语言要求将它解释为函数声明。

特定于架构的改进

64 位 ARM 架构

  • Armv8-R 架构通过 -march=armv8-r 选项受到支持
  • GCC 可在复杂数字上自动执行添加、减法、乘法和累积变量和减去变体。

AMD 和 Intel 64 位构架

  • 支持以下 Intel CPU:sapphire 快速、Alder Lake 和 Rocket Lake.
  • 添加了 Intel AVX-VNNI 的新 ISA 扩展支持。-mavxvnni 编译器交换机控制 AVX-VNNI 内部。
  • 新的 -march=znver3 选项支持基于 znver3 核心的 AMD CPU。
  • x86-64 psABI 补充 中定义的三个微架构级别受全新 -march=x86-64-v2、- march=x86-64-v3-march=x86-64-v4 选项的支持。

(BZ#1946782)

GCC Toolset 11: dwz 现在支持 DWARF 5

在 GCC Toolset 11 中,sdwz 工具现在支持 DWARF 版本 5 调试格式。

(BZ#1948709)

GCC Toolset 11:GCC 现在支持 AIA 用户中断

在 GCC Toolset 11 中,GCC 现在支持加速器交互架构(AIA)用户中断。

(BZ#1927516)

GCC Toolset 11:改进了通用 SVE 调整默认值

在 GCC Toolset 11 中,在 64 位 ARM 架构中改进了通用 SVE 调优默认值。

(BZ#1979715)

SystemTap rebase 到版本 4.5

SystemTap 软件包已更新至版本 4.5。重要的程序错误修复和增强包括:

  • 32 位浮点变量自动转换为双变量,因此可作为 $context 变量直接访问。
  • 数值 可以作为 $context 变量访问。
  • BPF uconversions tapset 已扩展,包含更多 tapset 功能来访问用户空间中的值,如 user_long_error( )。
  • 并发控制得到了显著改进,以在大型服务器上提供稳定的操作。

如需更多信息,请参阅上游 SystemTap 4.5 发行注记

(BZ#1933889)

elfutils rebase 到版本 0.185

The elfutils 软件包已更新至版本 0.185。重要的程序错误修复和增强包括:

  • The eu-elflint and eu-readelf 工具现在识别和显示 ELF 部分上的 SHF_GNU _RETAIN 和 SHT_X86_64_UNWIND 标志。
  • DEBUGINFOD_SONAME 宏已添加到 debuginfod.h。此宏可与 dlopen 功能一起使用,以从应用程序动态加载 libdebuginfod.so 库。
  • debuginfod -client 库中添加了新的功能 debuginfod _set_verbose_fd。此功能通过将详细输出重定向到单独的文件来增强 debuginfod_find_* 查询功能。
  • 设置 DEBUGINFOD_VERBOSE 环境变量现在显示有关 调试信息客户端 连接到哪些服务器以及这些服务器的 HTTP 响应的更多信息。
  • debuginfod 服务器提供了一个新的 thread-busy 指标和更详细的错误指标,以便更轻松地检查 debuginfod 服务器上运行的进程。
  • libdw 库现在透明地处理 DW_FORM_indirect 位置值,以便 dwarf_whatform 函数返回属性的实际 FORM。
  • 为减少网络流量,debug infod-client 库在缓存中存储负结果,客户端对象可以重复使用现有连接。

(BZ#1933890)

Valgrind 被 rebase 到版本 3.17.0

Valgrind 软件包已更新至版本 3.17.0。重要的程序错误修复和增强包括:

  • Valgrind 可以读取 DWARF 版本 5 调试格式。
  • Valgrind 支持对 debuginfod 服务器的调试查询。
  • ARMv8.2 处理器说明受到部分支持。
  • POWER10 处理器上的 Power ISA v.3.1 指令被部分支持。
  • 支持 IBM z14 处理器说明。
  • 大多数 IBM z15 指令都受到支持。Valgrind 工具套件支持用于 IBM z15 处理器的多路结构工具 3 和向量增强功能 2。因此,Valgrind 运行使用 GCC -march=z15 编译的程序,并改进性能和调试体验。
  • --track-fds=yes 选项练习 -q (--quiet),并且默认忽略标准文件描述符 stdinstdout stderr。要跟踪标准文件描述符,请使用 --track-fds=all 选项。
  • DHAT 工具有两种新的操作模式:-- mode=copy--mode=ad-hoc

(BZ#1933891)

Dyninst rebase 到版本 11.0.0

Dyninst 软件包已更新至版本 11.0.0。重要的程序错误修复和增强包括:

  • 支持 debuginfod 服务器以及获取单独的 debuginfo 文件。
  • 改进了对过程表(PLT)存根的间接调用的检测。
  • 改进了 C++ 名称解译.
  • 修复了代码发送过程中内存泄漏的问题。

(BZ#1933893)

IBM POWER10 上的 GDB 改进了 DAWR 功能

在这个版本中,为 IBM POWER10 处理器中的 GDB 启用新的硬件监视器功能。例如,添加了一组新的 DAWR/DAWRX 寄存器。

(BZ#1854784)

GCC Toolset 11:GDB rebase 到版本 10.2

在 GCC Toolset 11 中,GDB 软件包已更新至版本 10.2。重要的程序错误修复和增强包括:

新特性

  • 在支持此功能的架构上默认启用多线程符号加载。这一更改为带有许多符号的程序提供更好的性能。
  • 文本用户界面(TUI)窗口可以水平排列。
  • GDB 支持同时调试多个目标连接,但这种支持是实验性的且有限的。例如,您可以将每个低端连接到另一台计算机上运行的不同远程服务器,也可以使用一个低端调试本地原生进程、核心转储或某些其他进程。

新的改进的命令

  • new tui new-layout name 窗口权重 [窗口 weight…] 命令 创建一个新的文本用户界面(TUI)布局,您也可以指定布局名称和显示窗口。
  • 改进的 别名 [-a] [--] alias = command [default-args] 命令可以在创建新别名时指定默认参数。
  • set exec-file-mismatchshow exec-file-mismatch 命令集,并显示新的 exec-file-mismatch 选项。当 GDB 附加到正在运行的进程时,此选项控制 GDB 如何响应 GDB 检测到当前由 GDB 加载的可执行文件和用于启动该进程的可执行文件不匹配的情况。

Python API

  • gdb.register_window_type 功能在 Python 中实施新的 TUI 窗口。
  • 现在,您可以查询动态类型。gdb.Type 类的实例可以具有新的布尔值属性 动态gdb.Type.sizeof 属性的值则可为动态类型提供 None。如果 Type.fields() 返回动态类型字段,则其 bitpos 属性的值可以是 None
  • 新的 gdb.COMMAND_TUI 常量注册 Python 命令作为 TUI 帮助类命令的成员。
  • 新的 gdb.PendingFrame.architecture() 方法检索待处理帧的架构。
  • 新的 gdb.Architecture.registers 方法返回 gdb.RegisterDescriptorIterator 对象,后者是返回 gdb.RegisterDescriptor 对象的迭代 器。此类对象不提供寄存器的值,但可帮助了解哪些寄存器可用于某一架构。
  • 新的 gdb.Architecture.register_groups 方法返回 gdb.RegisterGroupIterator 对象,这是返回 gdb.RegisterGroup 对象的迭代 器。此类对象有助于了解哪些寄存器组可用于某一架构。

(BZ#1954332)

GCC Toolset 11:SystemTap rebase 到版本 4.5

在 GCC Toolset 11 中,SystemTap 软件包已更新至版本 4.5。重要的程序错误修复和增强包括:

  • 32 位浮点变量现在自动转换为双变量,因此可以作为 $context 变量直接访问。
  • 现在可以作为 $context 变量访问 枚举 值。
  • BPF uconversions tapset 已扩展,现在包括更多 tapset 功能来访问用户空间中的值,如 user_long_error( )。
  • 并发控制得到了显著改进,以在大型服务器上提供稳定的操作。

如需更多信息,请参阅上游 SystemTap 4.5 发行注记

(BZ#1957944)

GCC Toolset 11: elfutils rebase 到版本 0.185

在 GCC Toolset 11 中,elfutils 软件包已更新至版本 0.185。重要的程序错误修复和增强包括:

  • The eu-elflint and eu-readelf 工具现在识别和显示 ELF 部分上的 SHF_GNU _RETAIN 和 SHT_X86_64_UNWIND 标志。
  • DEBUGINFOD_SONAME 宏已添加到 debuginfod.h。此宏可与 dlopen 功能一起使用,以从应用程序动态加载 libdebuginfod.so 库。
  • debuginfod -client 库中添加了新的功能 debuginfod _set_verbose_fd。此功能通过将详细输出重定向到单独的文件来增强 debuginfod_find_* 查询功能。
  • 设置 DEBUGINFOD_VERBOSE 环境变量现在显示有关 调试信息客户端 连接到哪些服务器以及这些服务器的 HTTP 响应的更多信息。
  • debuginfod 服务器提供了一个新的 thread-busy 指标和更详细的错误指标,以便更轻松地检查 debuginfod 服务器上运行的进程。
  • libdw 库现在透明地处理 DW_FORM_indirect 位置值,以便 dwarf_whatform 函数返回属性的实际 FORM。
  • debuginfod-client 库现在在缓存中存储负结果,客户端对象可以重复使用现有连接。这样,在使用库时不必要的网络流量会被阻止。

(BZ#1957225)

GCC Toolset 11:Valgrind 被 rebase 到版本 3.17.0

在 GCC Toolset 11 中,Valgrind 软件包已更新至 3.17.0 版本。重要的程序错误修复和增强包括:

  • Valgrind 现在可读取 DWARF Version 5 调试格式。
  • Valgrind 现在支持对 debuginfod 服务器的调试查询。
  • Valgrind 现在部分支持 ARMv8.2 处理器指令。
  • Valgrind 现在支持 IBM z14 处理器指令。
  • Valgrind 现在部分支持 POWER10 处理器上的 Power ISA v.3.1 指令。
  • --track-fds=yes 选项 现在遵循 -q (--quiet),并默认忽略标准文件描述符 stdinstdout stderr。要跟踪标准文件描述符,请使用 --track-fds=all 选项。
  • DHAT 工具现在有两种新的操作模式:-- mode=copy--mode=ad-hoc

(BZ#1957226)

GCC Toolset 11:Dyninst rebase 到版本 11.0.0

在 GCC Toolset 11 中,Dyninst 软件包已更新至版本 11.0.0。重要的程序错误修复和增强包括:

  • 支持 debuginfod 服务器以及获取单独的 debuginfo 文件。
  • 改进了对过程表(PLT)存根的间接调用的检测。
  • 改进了 C++ 名称解译.
  • 修复了代码发送过程中内存泄漏的问题。

(BZ#1957942)

添加了对 Fujitsu A64FX 的 PAPI 库支持

添加了对 Fujitsu A64FX 的 PAPI 库支持。通过此功能,开发人员可以收集硬件统计信息。

(BZ#1908126)

PCP 软件包被 rebase 到 5.3.1

Performance Co-Pilot(PCP)软件包已更新至版本 5.3.1。此发行版本包括程序错误修正、增强功能和新功能。主要变更包括:

  • 可扩展性改进,现在支持为数百台主机(pmlogger 场)集中记录性能指标,并使用性能规则(pmie 场)自动监控。
  • 解决了 pmproxy 服务和 libpcp_web API 库中的内存泄漏,并为 pmproxy 添加了工具和新指标
  • 新的 pcp-ss 工具,用于历史套接字统计信息。
  • pcp-htop 工具的改进.
  • 扩展到 over-wire PCP 协议,现在支持更高的分辨率时间戳。

(BZ#1922040)

The grafana 软件包被 rebase 到版本 7.5.9

The grafana 软件包已更新至 7.5.9 版本。主要变更包括:

  • 新时间序列面板(beta)
  • 新饼图面板(beta)
  • 警报支持 Loki
  • 多个新的查询转换

如需更多信息,请参阅 Grafana v7.4 中的新功能,Grafana v7.5 中的新功能

(BZ#1921191)

The grafana-pcp 软件包被 rebase 到 3.1.0

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

  • Performance Co-Pilot(PCP)Vector Checklist 仪表板使用新的时间序列面板,以图形显示单位并包含更新的帮助文本。
  • pmproxy URL 和 hostspec 变量添加到 PCP Vector Host Overview 和 PCP Checklist 仪表板.
  • 所有控制面板都显示数据源选择。
  • 将所有包含的仪表板标记为只读。
  • 添加与 Grafana 8 的兼容性。

(BZ#1921190)

grafana-container rebase 到版本 7.5.9

rhel8/grafana 容器镜像提供 Grafana。主要变更包括:

  • The grafana 软件包现在更新至 7.5.9 版本。
  • The grafana-pcp 软件包现在更新至 3.1.0 版本。
  • 容器现在支持 GF_INSTALL_PLUGINS 环境变量在容器启动时安装自定义 Grafana 插件

rebase 更新 Red Hat Container Registry 中的 rhel8/grafana 镜像。

要拉取此容器镜像,请执行以下命令:

# podman pull registry.redhat.io/rhel8/grafana

(BZ#1971557)

pcp-container rebase 到版本 5.3.1

rhel8/pcp 容器镜像提供 Performance Co-Pilot。pcp-container 软件包已升级到 5.3.1 版本。主要变更包括:

  • pcp 软件包现在更新至版本 5.3.1。

rebase 更新 Red Hat Container Registry 中的 rhel8/pcp 镜像。

要拉取此容器镜像,请执行以下命令:

# podman pull registry.redhat.io/rhel8/pcp

(BZ#1974912)

新的 pcp-ss PCP 工具现在可用

pcp-ss PCP 实用程序报告由 pmdasockets(1) PMDA 收集的套接字统计信息。命令与许多 ss 命令行选项和报告格式兼容。它还提供了实时模式和历史重播中本地或远程监控的优势,以及之前记录的 PCP 存档的优势。

(BZ#1879350)

PCP 中现在提供了功耗指标

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

  • 基于运行平均电源限制(RAPL)读数的消耗指标,可在最新的 Intel CPU 上使用
  • 基于电池的消费指标,可在有电池的系统上使用

(BZ#1629455)

4.13. Identity Management

IdM 现在支持新的密码策略选项

在这个版本中,Identity Management(IdM)支持额外的 libpwquality 库选项:

--maxrepeat
指定序列中相同字符的最大数量。
--maxsequence
指定单例字符序列的最大长度 (abcd)。
--dictcheck
检查密码是否为字典里的单词。
--usercheck
检查密码是否包含用户名。

使用 ipa pwpolicy-mod 命令应用这些选项。例如,要将用户名检查应用到 managers 组中用户建议的所有新密码:

*$ ipa pwpolicy-mod --usercheck=True managers*

如果设置了任何新密码策略选项,则密码的最小长度为 6 个字符,无论 --minlength 选项的值为何。新密码策略设置仅应用到新密码。

在使用 RHEL 7 和 RHEL 8 服务器的混合环境中,新的密码策略设置仅在在 RHEL 8.4 及更新版本上运行的服务器中强制实施。如果用户登录到 IdM 客户端,并且 IdM 客户端与在 RHEL 8.3 或更早版本上运行的 IdM 服务器通信,则系统管理员设置的新密码策略要求不会被应用。为确保行为一致,请将所有服务器升级或更新至 RHEL 8.4 及更新的版本。

(JIRA:RHELPLAN-89566)

通过为每个请求添加唯一标识符标签改进了 SSSD 调试日志

因为 SSSD 会异步处理请求,因此由于来自不同请求的消息添加到同一日志文件中,因此无法轻松跟踪后端日志中个别请求的日志条目。为了提高 debug 日志的可读性,现在在日志消息中添加了一个唯一请求标识符(以 RID#<integer> 的形式)。这可让您隔离与单个请求相关的日志,您可以从多个 SSSD 组件跟踪日志文件中的请求。

例如,SSSD 日志文件的输出示例显示了两个不同请求的唯一标识符 RID#3 和 RID#4:

(2021-07-26 18:26:37): [be[testidm.com]] [dp_req_destructor] (0x0400): RID#3 Number of active DP request: 0
(2021-07-26 18:26:37): [be[testidm.com]] [dp_req_reply_std] (0x1000): RID#3 DP Request AccountDomain #3: Returning [Internal Error]: 3,1432158301,GetAccountDomain() not supported
(2021-07-26 18:26:37): [be[testidm.com]] [dp_attach_req] (0x0400): RID#4 DP Request Account #4: REQ_TRACE: New request. sssd.nss CID #1 Flags [0x0001].
(2021-07-26 18:26:37): [be[testidm.com]] [dp_attach_req] (0x0400): RID#4 Number of active DP request: 1

(JIRA:RHELPLAN-92473)

IdM 现在支持 automemberserver Ansible 模块

在这个版本中,ansible -freeipa 软件包包含 ipaautomemberipaserver 模块:

  • 使用 ipaautomember 模块时,您可以添加、删除和修改自动成员规则和条件。因此,满足条件的未来 IdM 用户和主机将自动分配给 IdM 组。
  • 使用 ipaserver 模块,您可以确保 IdM 拓扑中存在或不存在服务器的各种参数。您还可以确保一个副本是隐藏的或可见的。

(JIRA:RHELPLAN-96640)

IdM 性能基准

在这个版本中,测试了具有 4 个 CPU 和 8GB RAM 的 RHEL 8.5 IdM 服务器,以便同时成功注册 130 个 IdM 客户端。

(JIRA:RHELPLAN-97145)

改进了 SSSD Kerberos 缓存性能

系统安全服务守护进程(SSSD)Kerberos 缓存管理器(KCM)服务现在包含新的 KCM_GET_CRED_LIST。这个增强功能减少了迭代凭证缓存时的输入和输出操作数量,提高了 KCM 的性能。

(BZ#1956388)

SSSD 现在默认日志回溯追踪

在这个版本中,SSSD 将详细的调试日志存储在内存中缓冲区中,并在发生故障时将它们附加到日志文件中。默认情况下,以下错误级别会触发回溯追踪:

  • 级别 0:严重失败
  • 第 1 级:严重故障
  • 第 2 级:严重故障

您可以通过设置 sssd.conf 配置文件对应部分的 debug_level 选项来为每个 SSSD 进程修改此行为:

  • 如果将调试级别设置为 0,则只有级别 0 的事件会触发回溯追踪。
  • 如果将调试级别设置为 1,级别 0 和 1 将触发回溯追踪。
  • 如果您将调试级别设置为 2 或更高,则级别 0 到 2 的事件会触发回溯追踪。

您可以通过在 sssd.conf 的对应部分将 debug_backtrace_enabled 选项设置为 false 来禁用 SSSD 进程的此功能:

[sssd]
debug_backtrace_enabled = true
debug_level=0
...

[nss]
debug_backtrace_enabled = false
...

[domain/idm.example.com]
debug_backtrace_enabled = true
debug_level=2
...

...

(BZ#1949149)

SSSD KCM 现在支持自动续订 ticket 授予票据

在这个版本中,您可以将系统安全服务守护进程(SSSD)KSSD 缓存管理器(KCM)服务配置为自动更新的票据(TGT)存储在身份管理(IdM)服务器上的 KCM 凭证缓存中。只有在达到一半的票据生命周期时才尝试续订。要使用自动续订,必须将 IdM 服务器上的密钥分发中心(KDC)配置为支持可续订的 Kerberos 票据。

您可以通过修改 /etc/sssd/sssd.conf 文件的 [kcm] 部分来启用 TGT 自动续订。例如,您可以将 SSSD 配置为每 60 分钟检查是否重新生成 KCM 存储的 TGT,并在达到 ticket 生命周期的一半时尝试自动续订,方法是在文件中添加以下选项:

[kcm]
tgt_renewal = true
krb5_renew_interval = 60m

另外,您可以将 SSSD 配置为继承 krb5 选项以从现有域继承 krb5 选项:

[kcm]
tgt_renewal = true
tgt_renewal_inherit = domain-name

如需更多信息,请参阅 sssd-kcm man page 中的 续订 部分。

(BZ#1627112)

Samba rebase 到版本 4.14.4

samba 软件包已升级到上游版本 4.14.4,它提供程序错误修正和增强:

  • 在 Active Directory(AD)中发布打印机提高了可靠性,并将其他打印机功能添加到 AD 中发布的信息中。另外,Samba 现在支持 ARM64 架构的 Windows 驱动程序。
  • ctdb isnotrecmaster 命令已被移除。或者,使用 ctdb pnctdb recmaster 命令。
  • 集群的普通数据库(CTDB) ctdb natgw masterslave-only 参数已重命名为 ctdb natgw leader只关注者

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

更新 Samba 后,使用 testparm 实用程序验证 /etc/samba/smb.conf 文件。

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

(BZ#1944657)

dnaInterval 配置属性现在被支持

在这个版本中,红帽目录服务器支持设置 cn=<_config_entry>,cn=config 条目中的 Distributed Numeric Assignment(cri)插件的 dnaInterval 属性。DNA 插件为指定的属性生成唯一值。在复制环境中,服务器可以共享相同的范围。为避免在不同服务器上出现重叠,您可以设置 dnaInterval 属性来跳过某些值。例如,如果间隔为 3,并且范围中的第一个数字是 1,则该范围中使用的下一个数字为 4,然后是 7,然后是 10

详情请查看 dnaInterval 参数描述。

(BZ#1938239)

目录服务器被 rebase 到版本 1.4.3.27

389-ds-base 软件包已升级到上游版本 1.4.3.27,与之前的版本相比,它提供了一些程序错误修复和增强。如需显著变化的完整列表,请在更新前阅读上游发行注记:

(BZ#1947044)

目录服务器现在支持临时密码

此增强功能使管理员能够在全局和本地密码策略中配置临时密码规则。借助这些规则,您可以配置,当管理员重置用户的密码时,密码是临时的,且仅在特定时间有效,并且仅对指定次数的尝试有效。另外,您可以配置在管理员更改密码时不会直接启动过期时间。因此,目录服务器仅允许用户在有限时间内使用临时密码进行身份验证。用户验证成功后,目录服务器仅允许此用户更改其密码。

(BZ#1626633)

目录服务器提供监控设置,可防止锁定耗尽导致的数据库损坏

在这个版本中,向 cn=b db,cn=config,cn=ldbm database,cn=plugins,cn=config 条目添加 thensslapd-db -locks-monitoring-enable 参数。如果启用(默认),Directory 服务器会中止所有搜索(如果活跃的数据库锁定的数量大于配置的 in nsslapd-db-locks-monitoring-threshold )的百分比阈值。如果遇到问题,管理员可以在 cn=b db,cn=config 条目中的 thensslapd-db-locks 参数中增加数据库 锁定的数量。这可以防止数据崩溃。另外,管理员现在可以设置线程在检查之间休眠的时间间隔,以毫秒为单位。

详情请查看 红帽目录服务器配置、命令和文件参考 中的参数描述。

(BZ#1812286)

目录服务器可以从 retro changelog 数据库排除属性和后缀

此增强为 Directory 服务器添加了 thensslapd-exclude-attrs 和nsslapd-exclude-suffix 参数。您可以在 cn=Retro Changelog 插件,cn=plugins,cn=config 条目中设置这些参数,以从 retro changelog 数据库排除某些属性或后缀。

(BZ#1850664)

目录服务器支持 entryUUID 属性

在这个版本中,Directory 服务器支持 entryUUID 属性与 RFC 4530 兼容。例如,在支持 entryUUID 时,从 OpenLDAP 的迁移变得更加简单。默认情况下,Directory 服务器仅将 entryUUID 属性添加到新条目。要手动将其添加到现有条目中,请使用 dsconf <instance_name> 插件条目uuid 修复命令

(BZ#1944494)

添加了一个新消息,以帮助设置 up nsSSLPersonalitySSL

在以前的版本中,如果 TLS 证书 nickname 与配置参数 nsSSLPersonalitySSL 的值不匹配,则 RHDS 实例无法启动。当客户从以前的实例复制 NSS 数据库或导出证书的数据时,会出现这种不匹配,但忘记相应地设置 then sSSLPersonalitySSL 值。在这个版本中,您可以看到一个附加信息,它可以帮助用户正确设置 up nsSSLPersonalitySSL

(BZ#1895460)

4.14. Desktop

现在您可以在登录屏幕中连接到网络

在这个版本中,您可以连接到您的网络并在 GNOME 显示管理器(GDM)登录屏幕中配置某些网络选项。因此,您可以以企业用户身份登录,其主目录存储在远程服务器上。

登录屏幕支持以下网络选项:

  • 有线网络
  • 无线网络,包括受密码保护的网络
  • 虚拟专用网络(VPN)

登录屏幕无法打开窗口以进行其他网络配置。因此,您无法在登录屏幕中使用以下网络选项:

  • 打开抢占门户的网络
  • modem 连接
  • 具有尚未预配置的企业级 WPA 或 WPA2 加密的无线网络

登录屏幕中的网络选项默认为禁用。要启用网络设置,请使用以下步骤:

  1. 使用以下内容创建 /etc/polkit-1/rules.d/org.gnome.gdm.rules 文件:

    polkit.addRule(function(action, subject) {
        if (action.id == "org.freedesktop.NetworkManager.network-control" &&
            subject.user == "gdm") {
                return polkit.Result.YES;
        }
    
        return polkit.Result.NOT_HANDLED;
    });
  2. 重启 GDM:

    # systemctl restart gdm
    警告

    重启 GDM 会终止所有图形用户会话。

  3. 在登录屏幕中,访问顶部面板右侧菜单中的网络设置。

(BZ#1935261)

登录时显示系统安全分类

现在,您可以配置 GNOME 显示管理器(GDM)登录屏幕,以显示包含预定义消息的覆盖横幅。这可用于在登录前需要用户读取系统安全分类的部署。

要启用覆盖横幅并配置安全分类信息,请使用以下步骤:

  1. 安装 gnome-shell-extension-heads-up-display 软件包:

    # yum install gnome-shell-extension-heads-up-display
  2. 使用以下内容创建 /etc/dconf/db/gdm.d/99-hud-message 文件:

    [org/gnome/shell]
    enabled-extensions=['heads-up-display@gnome-shell-extensions.gcampax.github.com']
    
    [org/gnome/shell/extensions/heads-up-display]
    message-heading="Security classification title"
    message-body="Security classification description"

    使用描述系统安全分类的文本替换以下值:

    安全分类标题
    标识安全分类的简短标题。
    安全分类描述
    提供额外详情的较长消息,例如引用各种指南。
  3. 更新 dconf 数据库:

    # dconf update
  4. 重启系统。

(BZ#1651378)

flicker free boot 可用

现在,您可以在您的系统中启用 flicker free boot。启用 flicker free boot 后,它会消除系统引导过程中的突然图形转换,且显示不会在启动过程中短暂关闭。

要启用 flicker 可用引导,请使用以下步骤:

  1. 将引导装载程序菜单配置为默认隐藏:

    # grub2-editenv - set menu_auto_hide=1
  2. 更新引导装载程序配置:

    • 在 UEFI 系统中:

      # grub2-mkconfig -o /etc/grub2-efi.cfg
    • 在旧的 BIOS 系统中:

      # grub2-mkconfig -o /etc/grub2.cfg
  3. 重启系统。

因此,引导装载程序菜单在系统引导过程中不会显示,引导过程也图形顺利。

要访问启动加载器菜单,请在打开系统后重复按 Esc

(JIRA:RHELPLAN-99148)

更新对 emoji 的支持

此发行版本更新了 emoji 标准版本 11 到版本 13 的 Unicode emoji 字符支持。现在,您可以在 RHEL 中使用更多 emoji 字符。

以下提供 emoji 功能的软件包被 rebase:

软件包以前的版本rebase 到版本

cldr-emoji-annotation

33.1.0

38

google-noto-emoji-fonts

20180508

20200723

unicode-emoji

10.90.20180207

13.0

(JIRA:RHELPLAN-61867)

您可以为所有用户设置默认桌面会话

在这个版本中,您可以为尚未登录的所有用户预先选择默认桌面会话。

如果用户使用不同于默认会话登录,则他们的选择会保留在其下一次登录中。

要配置默认会话,请使用以下步骤:

  1. 复制配置文件模板:

    # cp /usr/share/accountsservice/user-templates/standard \
         /etc/accountsservice/user-templates/standard
  2. 编辑新的 /etc/accountsservice/user-templates/standard 文件。在 Session=gnome 行中,将 gnome 替换为您要设置为默认值的会话。
  3. 可选:要为特定用户配置默认会话异常,请按照以下步骤执行:

    1. 将模板文件复制到 /var/lib/AccountsService/users/user-name

      # cp /usr/share/accountsservice/user-templates/standard \
           /var/lib/AccountsService/users/user-name
    2. 在新文件中,将 ${USER} 和 ${ID} 等变量替换为用户值。
    3. 编辑 Session 值。

(BZ#1812788)

4.15. 图形基础结构

支持新 GPU

现在支持以下新 GPU。

Intel 图形:

  • alder Lake-S(ADL-S)

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

    i915.force_probe=PCI_ID

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

  • Elkhart Lake(EHL)
  • 使用 TGP 平台控制器枢纽(PCH)立即 Lake Refresh(CML-R)

AMD 图形:

  • Cezzane 和 Barcelo
  • Sienna Cichlid
  • Dimgrey Cavefish

(JIRA:RHELPLAN-99040, BZ#1784132, BZ#1784136, BZ#1838558)

Wayland 会话可用于专有 NVIDIA 驱动程序

专有 NVIDIA 驱动程序现在支持 Xwayland 中的硬件加速 OpenGL 和 Vulkan 渲染。现在,您可以使用专有 NVIDIA 驱动程序启用 GNOME Wayland 会话。在以前的版本中,只有旧的 X11 会话与驱动程序一同可用。X11 保留为默认会话,以避免从以前的 RHEL 版本更新时造成干扰。

要使用 NVIDIA 专有驱动程序启用 Wayland,请使用以下步骤:

  1. 通过在内核命令行中添加以下选项,启用 Direct Rendering Manager(DRM)内核模式设置:

    nvidia-drm.modeset=1

    有关启用内核选项的详情,请参阅配置内核命令行参数

  2. 重启系统。

    Wayland 会话现在可在登录屏幕中找到。

  3. 可选:为避免在暂停或休眠系统时丢失视频分配,请使用驱动程序启用电源管理选项。详情请参阅 配置电源管理支持

有关在专有 NVIDIA 驱动程序中使用 DRM 内核模式设置的限制,请参阅 Direct Rendering Manager Kernel Modesetting(DRM KMS)。

(JIRA:RHELPLAN-99049)

GPU 支持改进

现在启用了以下新的 GPU 功能:

  • 现在,Intel Tiger Lake 和后续图形启用了面板自刷新(PSR),这提高了功耗。
  • Intel Tiger Lake、Ice Lake 及更新的图形现在可以使用带 DisplayPort 多流传输(DP-MST)传输方法的 High Bit Rate 3(HBR3)模式。这启用了对特定显示功能的支持。
  • Modesetting 现在在 NVIDIA Ampere GPU 上启用。这包括以下模型:GA102、GA104 和 GA107,包括混合图形系统.
  • 现在,带有 Intel 集成图形和 NVIDIA Ampere GPU 的大多数笔记本电脑都可以使用任一 GPU 输出到外部显示。

(JIRA:RHELPLAN-99043)

更新了图形驱动程序

以下图形驱动程序已被更新:

  • amdgpu
  • ast
  • i915
  • mgag2000
  • nouveau
  • vmwgfx
  • vmwgfx
  • Mesa 库
  • vulkan 软件包

(JIRA:RHELPLAN-99044)

完全支持 Intel Tiger Lake 图形

Intel Tiger Lake UP3 和 UP4 Xe graphics(以前作为技术预览提供)现已获得全面支持。这些 GPU 上默认启用硬件加速。

(BZ#1783396)

4.16. Red Hat Enterprise Linux 系统角色

用户可以使用 timesync_max_distance 参数配置最大根距离

在这个版本中,time sync RHEL 系统角色可以使用新的 timesync _max_ distance 参数将 配置为 ntpd max distance 和 chronyd 服务的 maxdistance 参数timesync_max_distance 参数配置从网络时间协议(NTP)服务器接受测量的最大根距离。默认值为 0,它会保留特定于提供程序的默认值。

(BZ#1938016)

Elasticsearch 现在可以接受服务器列表

在以前的版本中,日志记录 RHEL 系统角色的 Elasticsearch 输出中的 server_host 参数只接受单个主机的字符串值。在这个版本中,它还接受字符串列表来支持多个主机。现在,您可以在一个 Elasticsearch 输出字典中配置多个 Elasticsearch 主机。

(BZ#1986463)

添加到 timesync RHEL 系统角色中的网络时间安全(NTS)选项

The nts 选项已添加到 timesync RHEL 系统角色中,以在客户端服务器上启用 NTS。NTS 是为网络时间协议(NTP)指定的新安全机制,可以安全地同步 NTP 客户端而无需特定于客户端的配置,并且可以扩展到大量客户端。在 4.0 及更新版本中,只有 chrony NTP 供应商才支持 The NTS 选项。

(BZ#1970664)

SSHD RHEL 系统角色现在支持非独占配置片断

使用此功能,您可以通过不同的角色和 playbook 配置 SSHD,而不必使用命名空间重写以前的配置。命名空间与置入目录类似,并为 SSHD 定义非独占配置代码段。因此,如果您只需要配置配置的一小部分,而不是整个配置文件,您可以使用来自不同角色的 SSHD RHEL 系统角色。

(BZ#1970642)

SELinux 角色现在可以管理 SELinux 模块

SElinux RHEL 系统角色能够管理 SELinux 模块。在这个版本中,用户可以从. pp.cil 文件提供自己的自定义模块,这些文件允许更灵活的 SELinux 策略管理。

(BZ#1848683)

用户可以管理 chrony 交集模式、NTP 过滤和硬件时间戳

在这个版本中,time sync RHEL 系统角色可让您配置网络时间 协议(NTP)交集模式、NTP 测量的额外过滤以及硬件时间戳。版本 4.0 的 chrony 软件包添加了对这些功能的支持,以实现本地网络中时钟的高度准确和稳定同步。

  • 要启用 NTP 交集模式,请确保服务器支持此功能,并将 timesync_ntp_servers 列表中服务器的 xleave 选项设置为 yes。默认值为 no
  • 要设置每个时钟更新的 NTP 测量数量,请为您配置的 NTP 服务器设置 filter 选项。默认值为 1
  • 要设置 NTP 应该启用了硬件时间戳的接口列表,请使用 timesync_ntp_hwts_interfaces 参数。特殊值 ["*"] 在支持它的所有接口中启用时间戳。默认值为 []

(BZ#1938020)

timesync 角色为 chrony 启用自定义设置

在以前的版本中,无法使用 timesync 角色提供自定义 chrony 配置。在这个版本中增加了 timesync_chrony_custom_settings 参数,它允许用户为 chrony 提供自定义设置,例如:

timesync_chrony_custom_settings:
  - "logdir /var/log/chrony"
  - "log measurements statistics tracking"

(BZ#1938023)

timesync 角色支持混合端到端延迟机制

在这个版本中,您可以在 timesync_ptp _domains 中使用新的 hybrid_ e2e 选项timesync 角色中启用混合端到端的延迟机制。混合端到端延迟机制使用单播延迟请求,这对于减少大型网络中多播流量非常有用。

(BZ#1957849)

ethtool 现在支持降低数据包丢失率和延迟

TX 或 Rx 缓冲是由网络适配器分配的内存空间来处理流量突发。正确管理这些缓冲区的大小对于降低数据包丢失率并实现可接受的网络延迟至关重要。

ethtool 工具现在通过配置指定网络设备的 ring 选项来降低数据包丢失率或延迟。

支持的 ring 参数列表为:

  • rx - 更改 Rx 环的 ring 条目数。
  • rx-jumbo - 更改 Rx Jumbo ring 的环条目数。
  • rx-mini - 更改 Rx Mini 环的环条目数。
  • T X - 更改 Tx 环的环条目数量。

(BZ#1959649)

New ipv6_disabled 参数现已正式发布

在这个版本中,您可以在配置地址时使用 ipv6_disabled 参数禁用 ipv6。

(BZ#1939711)

RHEL 系统角色现在支持 VPN 管理

在以前的版本中,很难在 Linux 上设置安全且正确配置的 IPsec 隧道和虚拟专用网络(VPN)解决方案。在这个版本中,您可以使用 VPN RHEL 系统角色为主机到主机和网格连接设置并配置 VPN 隧道,以便跨大量主机更轻松地设置和配置 VPN 隧道。因此,您可以在 RHEL 系统角色项目中为 VPN 和 IPsec 隧道配置有一个一致且稳定的配置接口。

(BZ#1943679)

存储 RHEL 系统角色现在支持 文件系统 重新标记

在以前的版本中,存储 角色不支持重新标记。在这个版本中解决了这个问题,提供了重新标记 文件系统 标签的支持。为此,请将新标签字符串设置为 storage _volumes 中的 fs_ label 参数。

(BZ#1876315)

存储 系统角色中提供对以百分比表示的卷大小的支持

这个增强添加了对 存储 RHEL 系统角色的支持,以便以池总大小的百分比来表达 LVM 卷大小。您可以将 LVM 卷的大小指定为池/VG 大小的百分比,例如:50% 除文件系统的人类可读大小外,例如 10g50 GiB

(BZ#1894642)

Microsoft SQL Server Management 的新 Ansible 角色

新的 microsoft.sql.server 角色旨在帮助 IT 和数据库管理员实现红帽企业 Linux 上的 SQL Server 设置、配置和性能调优的自动化流程。

(BZ#2013853)

RHEL 系统角色不支持 Ansible 2.8

在这个版本中,不再支持 Ansible 2.8,因为版本已超过产品生命周期的末尾。RHEL 系统角色支持 Ansible 2.9。

(BZ#1989199)

RHEL 系统角色的 postfix 角色被完全支持

Red Hat Enterprise Linux 系统角色为 Red Hat Enterprise Linux 子系统提供了一个配置界面,这有助于通过包含 Ansible 角色来简化系统配置。这个界面支持在多个 Red Hat Enterprise Linux 版本间管理系统配置,并使用新的主发行版本。

rhel-system-roles 软件包通过 AppStream 软件仓库发布。

从 RHEL 8.5 开始,postfix 角色被完全支持。

如需更多信息,请参阅有关 RHEL 系统角色的知识库文章

(BZ#1812552)

4.17. 虚拟化

在 web 控制台中管理虚拟机的增强

RHEL 8 web 控制台的虚拟机(VM)部分已被重新设计,以提供更好的用户体验。另外,还引进了以下变更和功能:

  • 单个页面现在包含所有相关虚拟机信息,如虚拟机状态、磁盘、网络或控制台信息。
  • 现在,您可以使用 web 控制台实时迁移虚拟机
  • Web 控制台现在允许编辑虚拟机网络接口的 MAC 地址
  • 您可以使用 Web 控制台查看附加到虚拟机的主机设备列表

(JIRA:RHELPLAN-79074)

zPCI 设备分配

现在,可以将 zPCI 设备作为 mediated 设备附加到在 IBM Z 硬件上运行的 RHEL 8 中托管的虚拟机(VM)。例如,thís 允许在虚拟机中使用 NVMe 闪存驱动器。

(JIRA:RHELPLAN-59528)

4.18. 支持性

SOS rebase 到 版本 4.1

sos 软件包升级至版本 4.1,提供多个程序错误修复和增强。主要改进包括:

  • 红帽更新基础架构(RHUI)插件现在在 sos 软件包中原生实施。使用 rhui-debug.py python 二进制文件,因此可以从 RHUI 收集报告,包括主配置文件、rhui-manager 日志文件或安装配置。
  • SOS 引入了 --cmd-timeout 全局选项,它为命令执行手动设置超时。默认值(-1)会延迟到常规命令超时,即 300 秒。

(BZ#1928679)

4.19. 容器

现在提供了默认的容器镜像签名验证

在以前的版本中,必须在 /etc/containers/registries.d/ 目录中手动创建 Red Hat Container Registries 的策略 YAML 文件。现在,registry.access.redhat.com.yamlregistry.redhat.io.yaml 文件包括在 containers-common 软件包中。现在,您可以使用 podman image trust 命令验证 RHEL 上的容器镜像签名。

(JIRA:RHELPLAN-75166)

container-tools:rhel8 模块已被更新

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

(JIRA:RHELPLAN-76515)

containers-common 软件包现在可用

containers-common 软件包已添加到 container-tools:rhel8 模块中。containers-common 软件包包含通用配置文件和容器工具生态系统的文档,如 Podman、Buildah 和 Skopeo。

(JIRA:RHELPLAN-77542)

现在,内核中的原生覆盖文件系统支持可用

现在,可从内核 5.11 获得覆盖文件系统支持。即使以 root 身份运行 root,非 root 用户也将具有原生覆盖性能。因此,这个增强功能可以为希望使用 overlayfs 的非 root 用户提供更好的性能,而无需绑定挂载。

(JIRA:RHELPLAN-77241)

podman 容器镜像现在可用

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

(JIRA:RHELPLAN-57941)

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

在以前的版本中,通用基础镜像只在红帽容器目录中可用。现在,Docker Hub 也提供了通用基础镜像。

如需更多信息,请参阅 将 Red Hat Universal Base Image 添加到 Docker Hub

(JIRA:RHELPLAN-85064)

Podman 中的 CNI 插件现在可用

CNI 插件现在可以在 Podman rootless 模式中使用。无根网络命令现在可以正常工作,无需系统的任何其他要求。

(BZ#1934480)

Podman 已更新至 3.3.1 版本

Podman 实用程序已更新至 3.3.1 版本。主要改进包括:

  • Podman 现在支持重启系统重启后通过 --restart 选项创建的容器。
  • podman 容器检查点podman 容器恢复命令现在支持检查并恢复 pod 中的容器,并将这些容器恢复到 pod 中。另外,podman container restore 命令现在支持 --publish 选项更改转发到从导出检查点中恢复的容器的端口。

(JIRA:RHELPLAN-87877)

crun OCI 运行时现在可用

crun OCI 运行时现在可用于 container-tools:rhel8 模块。crun 容器运行时支持注解,使容器能够访问无根用户的额外组。当在设置了 setgid 的目录中挂载卷时,或者用户仅具有组访问权限时,这对容器操作非常有用。

(JIRA:RHELPLAN-75164)

podman UBI 镜像现在可用

registry.access.redhat.com/ubi8/podman 现在作为 UBI 的一部分提供。

(JIRA:RHELPLAN-77489)

container-tools:rhel8 模块已被更新

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

如需了解更多详细信息,请参阅 RHEA-2021:85361-01

(BZ#2009153)

现在完全支持 The ubi8/nodejs-16 andubi8/nodejs-16-minimal 容器镜像

RHBA -2021:5260 公告中完全支持 The ubi8/nodejs-16 and ubi8/nodejs-16-minimal 容器镜像( 以前作为技术预览)。这些容器镜像包括 Node.js 16.13,这是一个长期支持(LTS)版本。

(BZ#2001020)

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

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

新内核参数

idxd.sva = [HW]

格式: <bool>

使用这个参数,您可以强制禁用对 idxd 内核模块的共享虚拟内存(SVA)支持。

默认值为 true( 1)

lsm.debug = [SECURITY]
使用这个参数,您可以启用 Linux 安全模块(LSM)初始化调试输出。
lm = lsm1,…​,lsmN [SECURITY]

使用这个参数,您可以选择 Linux Security 模块(LSM)初始化顺序。

此参数覆盖 CONFIG_LSM 选项和 security= 参数。

rcutree.qovld = [KNL]

使用这个参数,您可以设置排队的 Read-copy-update(RCU)回调的阈值。除这个阈值外,RCU 的 force-quiescent-state 扫描将积极采纳 cond_resched() 系统调用的帮助,并调度 IPI,以帮助 CPU 更快地到达静默状态。

您可以将此参数设置为小于零的值,以便在引导时根据 rcutree.qhimark 参数设置此参数。或者,将此参数设置为零,以禁用更积极的帮助加入。

rcutree.rcu_unlock_delay = [KNL]

使用这个参数,您可以在将配置布尔值设置为 CONFIG _RCU_STRICT_GRACE_PERIOD=y 的内核中指定 rcu_read_unlock() -time delay。

默认值为 0。

更大的延迟会增加捕获 Read-copy-update(RCU)指针泄漏的可能性。这是相关的 rcu_read_unlock() 完成后 RCU 保护指针有缺陷的使用。

rcutorture.irqreader = [KNL]
使用这个参数,您可以从 Interrupt 请求(IRQ)处理程序或计时器处理程序中运行 Read-copy-update(RCU)读取器。
rcutorture.leakpointer = [KNL]
使用这个参数,您可以将 Read-copy-update(RCU)受保护的指针泄露出读取器。这可能会导致 splats,并旨在测试 CONFIG_RCU_STRICT_GRACE_PERIOD=y 等配置的能力来检测此类泄漏。
rcutorture.read_exit = [KNL]
使用这个参数,您可以设置 read-then-exit kthreads 的数量,以测试 Read-copy-update(RCU)更新器和 task-exit 处理的交互。
rcutorture.read_exit_burst = [KNL]
使用这个参数,您可以在给定的 read-then-exit 集中指定生成一组 read-then-exit kthreads 的次数。
rcutorture.read_exit_delay = [KNL]
使用这个参数,您可以指定连续的读-then-exit 测试集之间的延迟(以秒为单位)。
rcutorture.stall_cpu_block = [KNL]
使用这个参数,您可以在阻塞时设置睡眠状态。因此,除了其它与停滞相关的活动外,还会出现来自抢占的 Read-copy-update(RCU)的警告。
rcutorture.stall_gp_kthread = [KNL]

使用这个参数,您可以指定 Read-copy-update(RCU)gate-period kthread 中强制睡眠的持续时间(以秒为单位)来测试 RCU CPU 停滞警告。

将此参数设置为零可禁用功能。

如果同时指定了 stall_cpustall_gp_kthread 参数,则 kthread 首先会耗尽,然后是 CPU。

rcupdate.rcu_cpu_stall_suppress_at_boot = [KNL]
使用这个参数,您可以阻止 RCU CPU 停止警告信息并阻止在早期引导过程中发生 rcutorture 写卡警告。这是生成 init 任务之前的时间。
rcupdate.rcu_task_ipi_delay = [KNL]

使用这个参数,您可以设置 jiffies 的时间,其中 Read-copy-update(RCU)任务避免发送 IPI,从给定宽限期的开头开始。

设置大量数字可避免干扰实时工作负载,但会延长宽限期。

refscale.holdoff = [KNL]
使用这个参数,您可以设置 test-start Holoff 周期。此参数的目的是将测试的开始延迟到启动完成,以避免干扰。
refscale.loops = [KNL]

使用这个参数,您可以在测试时设置同步原语的循环数量。增加这个数量可减少因为循环启动/结束开销而导致的空出。

在 2020 年 x86 笔记本电脑中,默认值已减少为每被动的几秒钟。

refscale.nreaders = [KNL]

使用这个参数,您可以设置读取器的数量。

默认值为 -1,其中 N 是 CPU 数量大约 75%。

refscale.nruns = [KNL]
通过这个参数,您可以设置运行数量,每个都转储到控制台日志中。
refscale.readdelay = [KNL]
使用这个参数,您可以设置只读关键部分持续时间,以微秒为单位。
refscale.scale_type = [KNL]
使用这个参数,您可以指定要测试的读保护实现。
refscale.shutdown = [KNL]

通过这个参数,您可以在性能测试结束时关闭系统。

默认值为 1,它会关闭系统 - refscale 内置在内核中。

值 0 并使系统保持运行 - refscale 将作为模块构建。

refscale.verbose = [KNL]
使用这个参数,您可以启用额外的 printk() 语句。
scftorture.holdoff = [KNL]

使用这个参数,您可以指定开始测试前要保留的秒数。

模块插入时,paramter 默认为零,内置 smp_call_function() 测试时则默认为 10 秒。

scftorture.longwait = [KNL]

使用这个参数,您可以请求非常长的等待时间,这些等待会随机选择达到所选的限制(以秒为单位)。

默认值为零,它禁用了此功能。

请注意,请求少量非零秒数可能导致读-copy-update(RCU)CPU 停滞警告,以及软锁定投诉等。

scftorture.nthreads = [KNL]

使用这个参数,您可以指定要生成的 kthreads 数来调用 smp_call_function() 函数系列。

默认值 -1 指定等于 CPU 数量的 kthreads 数。

scftorture.onoff_holdoff = [KNL]
使用这个参数,您可以指定在启动 CPU-hotplug 操作前测试开始后等待的秒数。
scftorture.onoff_interval = [KNL]

使用这个参数,您可以指定连续 CPU-hotplug 操作之间等待的秒数。

默认值为零,它禁用了 CPU-hotplug 操作。

scftorture.shutdown_secs = [KNL]

使用这个参数,您可以指定测试开始后的秒数。测试后,系统关闭。

如果默认值为零,您可以避免关闭系统。非零值对自动测试很有用。

scftorture.stat_interval = [KNL]

使用这个参数,您可以指定输出当前测试统计信息到控制台之间的秒数。

值为零可禁用统计输出。

scftorture.stutter_cpus = [KNL]
使用这个参数,您可以指定要在每次更改到正在测试的 CPU 集合之间等待的 jiffies 数量。
scftorture.use_cpus_read_lock = [KNL]
使用这个参数,您可以在调用其中一个 smp _call_function*()功能时,使用 use_cpus_read_lock ()系统调用来禁用默认的 preempt_disable () 系统调用。
scftorture.verbose = [KNL]
使用这个参数,您可以启用额外的 printk() 语句。
scftorture.weight_single = [KNL]

这个参数指定 smp_call_function_single() 函数使用零"wait"参数的可能性权重。

如果所有其他权重均为 -1,则值为 -1 选择默认值。但是,如果至少一个权重具有其他值,则值为 -1 时选择 0 权重。

scftorture.weight_single_wait = [KNL]
这个参数指定 smp_call_function_single() 函数使用非零 "wait" 参数的可能性权重。如需更多信息,请参阅 weight_single
scftorture.weight_many = [KNL]

这个参数指定 smp_call_function_many() 函数使用零"wait"参数的可能性权重。

请注意,为这种权重设置高的可能性可能会给系统带来严重的进程间中断(IPI)负载。

如需更多信息,请参阅 weight_single

scftorture.weight_many_wait = [KNL]

这个参数指定 smp_call_function_many() 函数使用非零 "wait" 参数的可能性权重。

如需更多信息,请参阅 weight_singleweight_many

scftorture.weight_all = [KNL]

这个参数指定对 smp_call_function_all() 函数使用零"wait"参数的可能性权重。

如需更多信息,请参阅 weight_singleweight_many

scftorture.weight_all_wait = [KNL]

这个参数指定 smp_call_function_all() 函数使用非零 "wait" 参数的可能性权重。

如需更多信息,请参阅 weight_singleweight_many

torture.disable_onoff_at_boot = [KNL]
使用这个参数,您可以防止在 init 任务生成前进行入侵的 CPU-hotplug 组件。
torture.ftrace_dump_at_shutdown = [KNL]

通过这个参数,您可以在组群-test 关闭时转储 ftrace 缓冲区,即使没有错误也是如此。

当许多测试同时运行时,这可能会非常昂贵,特别是在有旋转规则存储的系统上。

更新的内核参数

IOMMU.forcedac = [ARM64, X86]

使用这个参数,您可以控制 PCI 设备的输入输出虚拟地址(IOVA)分配。

格式:{ 0 | 1 }

  • 0 - 若有需要,先尝试分配 32 位直接内存访问(DMA)地址,然后再回退到完整范围。
  • 1 - 从所有可用范围直接分配.选项强制为 PCI 卡(支持大于 32 位寻址)的双地址周期。
page_poison = [KNL]

通过这个 boot-time 参数,您可以更改 buddy 分配器上的投毒状态,并附带 CONFIG_PAGE_POISONING=y 配置。

  • off :关闭投毒(默认)
  • 开启 :打开投毒
rcuscale.gp_async = [KNL]
通过这个参数,您可以测量异步宽松(prima-period )原语的性能,如 call_rcu( )。
rcuscale.gp_async_max = [KNL]
使用这个参数,您可以指定每个作者线程的最大未完成的回调数。当写入器线程超过这个限制时,它会调用对应的 rcu_barrier() 类别,以允许之前发布的回调排空。
rcuscale.gp_exp = [KNL]
通过此参数,您可以测量加速宽限期原语的性能。
rcuscale.holdoff = [KNL]
使用这个参数,您可以设置 test-start Holoff 周期。此参数的目的是将测试的开始延迟到启动完成,以避免干扰。
rcuscale.kfree_rcu_test = [KNL]
通过这个参数,您可以测量 kfree_rcu() 填充的性能。
rcuscale.kfree_nthreads = [KNL]
使用这个参数,您可以指定 kfree_rcu() 函数运行循环的线程数量。
rcuscale.kfree_alloc_num = [KNL]
使用这个参数,您可以指定分配数量并在迭代中释放。
rcuscale.kfree_loops = [KNL]
使用这个参数,您可以指定 rcuscale.kfree_alloc_num 分配和释放的循环数量。
rcuscale.nreaders = [KNL]

使用这个参数,您可以设置 Read-copy-update(RCU)读取器的数量。

值 -1 选择 N,其中 N 是 CPU 的数量。

rcuscale.nwriters = [KNL]

使用这个参数,您可以设置 Read-copy-update(RCU)作者数量。

值的工作方式与 rcuscale.nreaders=N 相同,其中 N 是 CPU 的数量。

rcuscale.perf_type = [KNL]
使用这个参数,您可以指定要测试的 Read-copy-update(RCU)实现。
rcuscale.shutdown = [KNL]
使用这个参数,您可以在性能测试完成后关闭系统。这对实机自动测试非常有用。
rcuscale.verbose = [KNL]
使用这个参数,您可以启用额外的 printk() 语句。
rcuscale.writer_holdoff = [KNL]

使用这个参数,您可以以微秒为单位在宽限期间进行写操作。

默认值为零,表示"无暂停"。

安全性 = [SECURITY]

使用这个参数,您可以选择要在启动时启用的一个传统的"major"安全模块。

这已被 lsm 参数弃用。

split_lock_detect = [X86]

使用这个参数,您可以启用分割锁定检测或总线锁定检测。

启用后,如果存在硬件支持,则通过原子指令访问缓存线之间的数据将产生:

  • 分割锁定检测的校对检查异常
  • 总线锁定检测的 debug 异常

    可能的值:

  • off - 不启用此功能
  • warn - 内核发送有关应用程序的速率限制警告,并触发 #AC 异常或 #DB 异常。这个模式是支持分割锁定检测或总线锁定检测的 CPU 的默认模式。如果在硬件中启用了两个功能,则默认行为是 #AC。
  • fatal - 内核向触发 #AC 异常或 #DB 异常的应用程序发送 SIGBUS 信号。如果在硬件中启用了两个功能,则默认行为是 #AC。
  • ratelimit:N - 为总线锁定检测将系统宽速率限制设置为每秒 N 总线锁(0 < N › 1000)。无用于拆分锁定检测.

    如果 #AC 异常在内核中或固件中发生(例如,在用户模式中执行时没有),则内核将在 警告致命 模式下出现 oops。

    只有在 CPL > 0 时才会触发总线锁定的 #DB 异常。

usb-storage.quirks =
k = NO_SAME(请勿使用 WRITE_SAME,仅 UAS)

第 6 章 设备驱动程序

6.1. 新驱动程序

网络驱动程序

  • SYNOPSYS DESIGNWARE Ethernet XPCS 驱动程序(pcs-xpcs.ko.xz)
  • INTEL 10/100/1000 Ethernet PCI driver(dwmac-intel.ko.xz)
  • STMMAC 10/100/1000 以太网设备驱动程序(stmmac.ko.xz)
  • Chelsio Terminator 卡的加密 IPSEC。(ch_ipsec.ko.xz):1.0.0.
  • Chelsio NIC TLS ULD driver(ch_ktls.ko.xz):1.0.0.
  • Microsoft Azure Network Adapter driver(mana.ko.xz)
  • Qualcomm Atheros 802.11ax 无线 LAN 卡的核心模块(ath11k.ko.xz)
  • 对 Qualcomm Technologies 802.11ax WLAN PCIe 设备的驱动程序支持(ath11k_pci.ko.xz)
  • MAC 到可选 PHY 连接(phylink.ko.xz)

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

  • 使用 In-Band ECC(igen6_edac.ko.xz)为 Intel 客户端 SoC 的 MC Driver
  • Regmap SoundWire MBQ Module (regmap-sdw-mbq.ko.xz)
  • Intel Platform Monitoring Technology PMT driver(intel_pmt.ko.xz)
  • Intel PMT Crashlog driver(intel_pmt_crashlog.ko.xz)
  • UV 系统的 sysfs 结构(uv_sysfs.ko.xz)
  • Intel PMT Telemetry 驱动程序(intel_pmt_telemetry.ko.xz)
  • Intel PMT Class driver(intel_pmt_class.ko.xz)
  • AMD PMC Driver (amd-pmc.ko.xz)
  • MHI Host Interface(mhi.ko.xz)
  • modem Host Interface(MHI)PCI controller driver(mhi_pci_generic.ko.xz)
  • 块设备的 VDPA Device Simulator(vdpa_sim_blk.ko.xz):0.1
  • 用于网络设备的 VDPA Device Simulator(vdpa_sim_net.ko.xz):0.1
  • vp-vdpa (vp_vdpa.ko.xz):1
  • Mellanox VDPA driver(mlx5_vdpa.ko.xz)
  • 基本 STM 框架协议驱动程序(stm_p_basic.ko.xz)
  • MIPI SyS-T STM framing 协议驱动程序(stm_p_sys-t.ko.xz)
  • QMI encoder/decoder helper(qmi_helpers.ko.xz)
  • ACPI DPTF 平台电源驱动程序(dptf_power.ko.xz)
  • ACPI Platform profile sysfs 接口(platform_profile.ko.xz)
  • Intel Emmitsburg PCH pinctrl/GPIO 驱动程序(pinctrl-emmitsburg.ko.xz)
  • Intel Alder Lake PCH pinctrl/GPIO driver(pinctrl-alderlake.ko.xz)
  • MPI3 Storage Controller Device Driver(mpi3mr.ko.xz):00.255.45.01
  • 根据 CPU IO 选择路径的 device-mapper 多路径路径选择器(dm-io-affinity.ko.xz)
  • device-mapper 测量服务时间导向的路径选择器(dm-historical-service-time.ko.xz)

6.2. 更新的驱动程序

网络驱动程序

  • Mellanox 5th generation network adapters(ConnectX series)core driver(mlx5_core.ko.xz)更新至版本 4.18.0-348.el8.x86_64。
  • Realtek RTL8152/RTL8153 Based USB Ethernet Adapters(r8152.ko.xz)更新至 v1.11.11 版本。

图形和各种驱动程序更新

  • LSI MPT Fusion SAS 3.0 Device Driver(mpt3sas.ko.xz)更新至版本 3.3101.00.00。
  • Emulex LightPulse Fibre Channel SCSI 驱动程序(lpfc.ko.xz)更新至版本 0:12.8.0.10。
  • QLogic Fibre Channel HBA Driver(qla2xxx.ko.xz)更新至 10.02.00.106-k 版本。
  • Microsemi Smart Family Controller 版本的驱动程序(smartpqi.ko.xz)更新至 2.1.8-045 版本。
  • Broadcom MegaRAID SAS Driver(megaraid_sas.ko.xz)更新至版本 07.717.02.00-rh1。

第 7 章 程序错误修复

这部分论述了在 Red Hat Enterprise Linux 8.5 中修复的对用户有严重影响的错误。

7.1. 安装程序和镜像创建

当 Insights 客户端无法注册系统时,RHEL 安装不再终止

在以前的版本中,如果 Red Hat Insights 客户端在安装过程中注册系统失败,RHEL 安装会失败。在这个版本中,即使 Insights 客户端失败,系统也会完成安装。在安装过程中向用户发送错误通知,以便稍后可以独立处理该错误。

BZ#1931069

Anaconda 允许在自定义分区屏幕中为自动创建的磁盘布局进行数据加密

在以前的版本中,在自定义分区屏幕中自动创建磁盘布局时请求加密的磁盘布局。在这个版本中,Anaconda 在自定义分区屏幕上提供了对自动创建的磁盘布局进行加密的选项。

(BZ#1903786)

当 Kickstart 文件中没有指定分区方案时,安装程序不会尝试自动分区

当使用 Kickstart 文件执行自动安装时,当您没有在 Kickstart 文件中指定任何分区方案时,安装程序不会尝试执行自动分区。安装过程中断,允许用户配置分区。

(BZ#1954408)

RHEL-Edge 容器镜像现在使用 nginx,并在端口 8080 上提供

在以前的版本中,edge-container 镜像类型无法在非 root 模式下运行。因此,Red Hat OpenShift 4 无法使用 edge-container 镜像类型。在这个版本中,容器使用 nginx HTTP 服务器来提供提交和配置文件,允许服务器作为容器内的非 root 用户运行,从而在 Red Hat OpenShift 4 上使用它。内部 Web 服务器现在使用端口 8080 而不是 80

(BZ#1945238)

7.2. Shell 和命令行工具

opal-prd rebase 到版本 6.7.1

Opal-prd 已升级至 6.7.1 版本。重要的程序错误修复和增强包括:

  • 修复了由于 xscom OPAL 调用而导致的 xscom 错误日志记录问题。
  • 修复了通过 DEBUG 构建可能的死锁。
  • 如果 内核/平台快速重启失败,则回退到 full_reboot
  • 修复了 core/cpu 中的 next_ungarded_primary
  • 改进了自助引擎(SBE)中的速率限制计时器请求和计时器状态。

(BZ#1921665)

libservicelog rebase 到版本 1.1.19

libservicelog 已升级至版本 1.1.19。重要的程序错误修复和增强包括:

  • 修复了输出对齐问题。
  • 修复了 servicelog_open() 失败上的 segfault

(BZ#1844430)

ipmitool sol activate 命令不再崩溃

在以前的版本中,在从 RHEL 7 升级到 RHEL 8 后,ipmitool sol activate 命令会在尝试访问 IBM DataPower 设备上的远程控制台时崩溃。

在这个版本中,这个程序错误已被修复,用户可以使用 ipmitool 再次访问远程控制台。

(BZ#1951480)

relax-and-Recover(ReaR)软件包现在取决于引导列表可执行文件

在以前的版本中,ReaR 可能会在 IBM Power Systems Little Endian 架构中在没有 bootlist 的情况下生成救援镜像。因此,如果没有安装 powerpc-utils-core 软件包,救援镜像不包含 bootlist 可执行文件。

在这个版本中,ReaR 软件包依赖于 bootlist 可执行文件。该依赖项确保存在 bootlist 可执行文件。如果缺少 bootlist 可执行文件,rear 不会创建救援镜像。这可避免创建无效的救援镜像。

(BZ#1983013)

现在可在 ReaR 中使用带有非特权远程用户的 rsync

在以前的版本中,当使用 rsync 备份和恢复系统数据 (BACKUP=RSYNC) 时,rsync 的参数被错误地引号,-- fake-super 参数不会传递给远程 rsync 进程。因此,文件元数据不会被正确保存和恢复。

在这个版本中,解决了以下程序错误:

  • rear 为 rsync 使用正确的参数。
  • 改进了用于备份和恢复过程中错误检测的 rsync 代码:

    • 如果在备份过程中检测到 rsync 错误,ReaR aborts 带有错误消息。
    • 如果在恢复过程中检测到 rsync 错误,ReaR 会显示警告消息。

/etc/rear/local.conf 文件中,设置 BACKUP_INTEGRITY_CHECK=1,将警告转换为错误消息。

(BZ#1930662)

当不再使用 ReaR 时,网络共享上的备份数据不会丢失

在以前的版本中,当使用 NFS 等网络文件系统存储 ReaR 备份时,如果 ReaR 错误删除了挂载 NFS 的目录。因此,这会导致备份数据丢失。

在这个版本中,ReaR 使用一个新的方法来卸载网络共享。当该新方法删除挂载点时,不会删除挂载的文件系统的内容。现在,在使用 ReaR 时,网络共享中的备份数据丢失已被修复。

(BZ#1958247)

rear 现在可以用来备份和恢复使用 ESP 的机器

在以前的版本中,当使用 Unified Extensible Firmware Interface(UEFI)固件的机器上使用软件 RAID(MDRAID)时,ReaR 不会创建可扩展固件接口(EFI)条目。当使用 ReaR 恢复软件 RAID 上带有 UEFI 固件和 EFI 系统分区的系统时,恢复的系统无法引导,需要手动干预来修复引导 EFI 变量。

在这个版本中,为软件 RAID 设备创建引导 EFI 条目的支持被添加到 ReaR 中。Rear 现在可用于在软件 RAID 上备份和恢复使用 EFI 系统分区(ESP)的机器,而无需手动恢复后干预。

(BZ#1958222)

为 openslp 软件包添加了 /etc/slp.spi 文件

在以前的版本中,opens lp 软件包中缺少 /etc/slp.spi 文件。因此,/usr/bin/slptool 命令不会生成输出。在这个版本中,/etc/slp.spi 已添加到 openslp

(BZ#1965649)

现在可以使用 ReaR 安全恢复带有多路径的 Little Endian 架构机器

在以前的版本中,当 ReaR 恢复系统时,/sys 文件系统不会挂载到 chroot 中。安装引导装载程序 时,IBM Power Systems Little Endian 架构中的pathname 可执行文件会失败。因此,错误仍无法检测到,恢复的系统无法引导。

在这个版本中,ReaR 在恢复 chroot 中挂载 /sys 文件系统。Rear 确保 Power Systems Little Endian 架构机器上的救援系统中存在 to pathname

(BZ#1983003)

当与别名一起使用时,哪个 实用程序不再会出现带有语法错误信息的中止

在以前的版本中,当尝试使用带有别名的哪个命令时,例如: ls,哪个 实用程序会中止 并显示语法错误 bash: 语法错误 '('

这个程序错误已被解决, 在没有错误消息的情况下正确显示命令的完整路径。

(BZ#1940468)

7.3. 基础架构服务

/var/lib/chrony 的权限已更改

在以前的版本中,企业安全扫描程序会将 /var/lib/chrony 目录标记为具有全局可读和可执行权限。在这个版本中,/var/lib/chrony 目录的权限已更改为仅限制 root 用户和 chrony 用户的访问权限。

(BZ#1939295)

7.4. 安全性

如果明确可信,gnutls 不再 拒绝 SHA-1 签名的 CA

在以前的版本中,GnuTLS 库会检查所有证书颁发机构(CA)的签名哈希强度,即使 CA 被明确信任。因此,包含使用 SHA-1 算法签名的 CA 链(带有错误消息 证书的签名哈希强度)被拒绝。在这个版本中,GnuTLS 从签名散列强度检查中排除可信 CA,因此不再拒绝包含 CA 的证书链,即使它们使用弱算法签名。

(BZ#1965445)

FIPS 模式中启用硬件优化

在以前的版本中,联邦信息处理标准(FIPS 140-2)不允许使用硬件优化。因此,当使用 FIPS 模式时,在 libgcrypt 软件包中禁用了这个操作。在这个版本中,启用了 FIPS 模式的硬件优化,因此可以更快地执行所有加密操作。

(BZ#1976137)

Nftikeportrightikeport 选项可以正常工作

在以前的版本中,Libreswan 忽略了任何 host-to-host Libreswan 连接中的 左侧 ikeport 和 rightikeport 选项。因此,Libreswam 使用默认端口,而不考虑任何非默认选项设置。在这个版本中,这个问题已被解决,您可以在默认选项中使用 leftikeportrightikeport 连接选项。

BZ#1934058

SELinux 策略不允许 GDM 设置 GRUB boot_success 标记

在以前的版本中,SELinux 策略不允许 GNOME 显示管理器(GDM)在关闭和重启操作过程中设置 GRUB boot_success 标志。因此,GRUB 菜单会在下次引导时出现。在这个版本中,SELinux 策略引入了一个新的 xdm_exec_bootloader 布尔值,允许 GDM 设置 GRUB boot_success 标志,默认设置为启用。因此,GRUB 引导菜单在第一次引导时显示,并且 flicker 免费引导支持功能可以正常工作。

(BZ#1994096)

SELinux-policy 现在支持使用 TCP 封装的基于 IPsec 的 VPN

从 RHEL 8.4 开始,libreswan 软件包使用 TCP 封装支持基于 IPsec 的 VPN,但 selinux-policy 软件包没有反映这个更新。因此,当 Libreswan 被配置为使用 TCP 时,ipsec 服务将无法绑定到给定的 TCP 端口。在这个版本中,selinux -policy 软件包 可以 绑定和连接到常用的 TCP 端口 4500,因此您可以在基于 IPsec 的 VPN 中使用 TCP 封装。

BZ#1931848

SELinux 策略现在会阻止 staff_u 用户切换到 unconfined_r

在以前的版本中,当启用 secure_mode 布尔值时,staff_u 用户可能会错误地切换到 unconfined_r 角色。因此,staff_u 用户可以执行影响系统安全性的特权操作。在这个版本中,SELinux 策略可防止 staff_u 用户使用 newrole 命令切换到 unconfined_r 角色。因此,非特权用户无法运行特权操作。

(BZ#1947841)

OSCAP Anaconda Addon 现在处理自定义配置集

在以前的版本中,OSCAP Anaconda Addon 插件无法在单独的文件中使用自定义来正确处理安全配置集。因此,即使您在对应的 Kickstart 部分指定了自定义配置集,RHEL 图形安装中也不会提供自定义配置集。此处理已被修复,您可以在 RHEL 图形安装中使用自定义 SCAP 配置集。

(BZ#1691305)

在评估 STIG 配置集和其他 SCAP 内容时,OpenSCAP 不再失败

在以前的版本中,OpenSCAP 中的加密库初始化没有在 OpenSCAP 中正确执行,特别是在 filehash58 探测中。因此,在评估包含 filehash58_test Open Vulnerability 评估语言(OVAL)测试的 SCAP 内容时,会出现分段错误。这尤其会影响对 Red Hat Enterprise Linux 8 的 STIG 配置集的评估。评估意外失败,且没有生成结果。在 openscap 软件包的新版本中修复了初始化库的过程。因此,在评估 RHEL 8 的 STIG 配置集和其他包含 filehash58_test OVAL 测试的 SCAP 内容时,OpenSCAP 不再会失败。

(BZ#1959570)

Ansible 仅在需要时更新横幅文件

在以前的版本中,用于横幅补救的 playbook 总是删除该文件并重新创建它。因此,旗语文件索引节点总是被修改,而无需任何需要。在这个版本中,Ansible 修复 playbook 已被改进来使用 copy 模块,首先将现有内容与预期内容进行比较,并且仅在需要时更新该文件。因此,只有在现有内容与预期内容不同时才更新横幅文件。

(BZ#1857179)

USB 设备现在可以正常工作,DISA STIG 配置集

在以前的版本中,DISA STIG 配置集启用了 USBGuard 服务,但没有配置任何最初连接的 USB 设备。因此,USBGuard 服务会阻止任何没有特别允许的设备。这使得一些 USB 设备(如智能卡)无法访问。在这个版本中,应用 DISA STIG 配置集时会生成初始 USBGuard 配置,并允许使用任何连接的 USB 设备。因此,USB 设备不会被阻止且可以正常工作。

(BZ#1946252)

OSCAP Anaconda Addon 现在以文本模式安装所有所选软件包

在以前的版本中,OSCAP Anaconda Addon 插件不会在以文本模式运行时安装和删除安装前评估需要某些分区布局或软件包安装和删除的规则。因此,当使用 Kickstart 指定安全策略配置集并以文本模式运行安装时,不会安装所选安全配置集所需的任何额外软件包。OSCAP Anaconda Addon 现在会在安装开始前执行所需的检查,无论安装是图形安装还是基于文本的安装,所有所选软件包也都安装在文本模式中。

(BZ#1674001)

rpm_verify_permissions 从 CIS 配置集中删除

rpm_verify_permissions 规则 (比较文件权限和软件包默认权限)已从 Internet 安全中心(CIS)Red Hat Enterprise Linux 8 Benchmark 中删除。在这个版本中,CIS 配置集与 CIS RHEL 8 基准一致,因此这个规则不再影响根据 CIS 强化其系统的用户。

(BZ#1843913)

7.5. 内核

上游补丁的恢复允许一些 systemd 服务和用户空间工作负载按预期运行

向后移植上游更改为 mknod() 系统调用会导致 open() 系统调用在设备节点方面比 mknod() 更特权。因此,容器中的多个用户空间工作负载和一些 systemd 服务变得无响应。在这个版本中,错误的行为已被恢复,且不再发生崩溃。

(BZ#1902543)

改进了内存记帐操作中的性能回归

在以前的版本中,slab 内存控制器会增加每个 slab 的内存核算操作的频率。因此,因为内存核算操作数量增加,性能回归。为解决这个问题,内存记帐操作得以简化,可以尽可能少地使用缓存和少量的原子操作。因此,一些性能回归仍然存在。但是,用户体验更好。

(BZ#1959772)

在发布多个 SysRg-T 魔力密钥时,不再会出现硬锁定和系统 panic

向系统发出多个 SysRg-T 魔力键序列,导致中断在较长时间内被禁用,具体取决于串行控制台速度以及正在打印的信息量。这一长时间的禁用中断时间通常会造成硬锁定后出现系统 panic。在这个版本中,SysRg-T 键序列可显著缩短关闭中断的时间段。因此,在上述场景中不会出现硬锁定或系统 panic。

(BZ#1954363)

某些 BCC 工具不再显示"macro redefined"警告

某些编译器内核标头中的宏重新定义会导致一些 BPF Compiler Collection(BCC)工具显示以下零影响警告:

warning: '__no_sanitize_address' macro redefined [-Wmacro-redefined]

在这个版本中,通过删除宏重新定义解决了这个问题。因此,相关的 BCC 工具不会在这种情况下显示警告。

(BZ#1907271)

kdump 不再无法在 SSH 或 NFS 目标上转储 vmcore

在以前的版本中,当将网络接口卡(NIC)端口配置为静态 IP 地址并将 kdump 设置为在 SSH 或 NFS 转储目标上转储 vmcore 时,k dump 服务以以下出错信息启动:

ipcalc: command not found

因此,SSH 或 NFS 转储目标的 kdump 最终会失败。

在这个版本中解决了这个问题,kexec-tools 工具不再依赖于 ipcalc 工具进行 IP 地址和子网掩码计算。因此,当您使用 SSH 或者 NFS 转储目标时,kdump 可以正常工作

(BZ#1931266)

某些网络内核驱动程序现在可以正确地显示其版本

RHEL 8.4 中更改了许多网络内核驱动程序的模块版本控制行为。因此,这些驱动程序不会显示其版本。或者,在执行 ethtool -i 命令后,驱动程序会显示 内核 版本,而不是 驱动程序 版本。在这个版本中,通过提供内核模块字符串解决了这个错误。因此,用户可以决定受影响内核驱动程序的版本。

(BZ#1944639)

The hwloc 命令现在返回单一 CPU Power9 和 Power10 逻辑分区的正确数据

使用 2.2.0 版本的 hwloc 实用程序,运行 Power9 或 Power10 CPU 的任何单节点非统一内存访问(NUMA)系统都将被视为"禁用"。因此,allhwloc 命令不起作用,因为 NODE0(套接字 0,CPU 0)已离线,hwloc 源代码预计在线。此时会显示以下出错信息:

Topology does not contain any NUMA node, aborting!

在这个版本中,hwloc 已修复,以便其源代码检查 NODE0 在查询它前是否已在线。如果 NODE0 未在线,代码会继续至下一个在线 NODE。

因此,hwloc 命令不会在上述场景中返回任何错误。

BZ#1917560

7.6. 高可用性和集群

ocf:heartbeat:pgsql 资源代理和一些第三方代理在关闭过程中不再无法停止

在 RHEL 8.4 GA 版中,Pacemaker 的crm_mon 命令行工具被修改为显示"shutting down"信息,而不是 Pacemaker 开始关闭时通常的集群信息。因此,无法监控关闭进度,如停止资源。在这种情况下,在停止操作中解析 crm_mon 输出的资源代理(如通过 resource-agents 软件包分发的 ocf:heartbeat:pgsql 代理或一些自定义或第三方代理)可能无法停止,从而导致集群问题。这个程序错误已被解决,上面描述的问题不再发生。

BZ#1948620

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

pyodbc 再次与 MariaDB 10.3协同工作

pyodbc 模块无法与 RHEL 8.4 发行版本中包含的 MariaDB 10.3 服务器一起工作。mariadb-connector-odbc 软件包中的根本原因已被修复,pyo dbc 现在可以 如预期与 MariaDB 10.3 一起工作。

请注意,MariaDB 10.3 服务器和 MariaDB 10.5 服务器的早期版本不受此问题的影响。

BZ#1944692

7.8. 编译器和开发工具

GCC Toolset 11:GCC 11 现在默认为 DWARF 4

虽然上游 GCC 11 默认使用 DWARF 5 调试格式,但 GCC Toolset 11 的 GCC 默认使用 DWARF 4 来保持与 RHEL 8 组件的兼容性,如 rpmbuild

(BZ#1974402)

可调项框架现在可以正确地解析 GLIBC_TUNABLES

在以前的版本中,对于 setuid 程序的非 setuid 子项,可调项框架无法正确解析 GLIBC_TUNABLES 环境变量。因此,在某些情况下,所有可调项仍保留在 setuid 程序的非 setuid 子项中。在这个版本中,GLIB C_TUNABLES 环境变量中的可调项会被正确解析。因此,现在 setuid 程序的非 setuid 子项仅继承受限的标识可调项。

(BZ#1934155)

glibc 中的 semctl 系统调用打包程序现在像 SEM_STAT_ANY 一样对待 SEM_STAT

在以前的版本中,glibc 中的 semctl 系统调用打包程序没有像 SEM_STAT_ANY 一样对待内核参数 SEM_STAT。因此,glibc 没有将结果对象 结构 parad_ds 的地址传递给内核,因此内核无法更新它。在这个版本中,glibc 处理 SEM_STAT_ANY (如 SEM_STAT ),因此应用可以使用 SEM_STAT _ANY来获取结构的半化_ ds 数据。

(BZ#1912670)

glibc 现在包括 IPPROTO_ETHERNET、IPPROTO_MPTCPINADDR_ALLSNOOPERS_GROUP 的定义

在以前的版本中,Glibc 系统库标头(/usr/include/netinet/in.h)不包括 IPPROTO_ETHERNET、IP PROTO_MPTCPINADDR_ALLSNOOPERS_GROUP 的定义。因此,需要这些定义的应用程序无法编译。在这个版本中,系统库标头包含 IPPROTO_ETHERNET、IPPROTO_ MPTCP 和 INADDR_ ALLSNOOPERS_GROUP 的新网络常量定义,从而正确编译应用程序。

(BZ#1930302)

GCC rebase 到版本 8.5

GNU Compiler Collection(GCC)更新至上游版本 8.5,它提供很多程序漏洞修复。

(BZ#1946758)

使用 OpenSSL aes-cbc 模式的文件解密不正确

OpenSSL EVP aes-cbc 模式无法正确解密文件,因为它需要在 Go CryptoBlocks 接口要求完整的块时处理 padding。这个问题已通过在 OpenSSL 中执行 EVP 操作前禁用 padding 来解决。

(BZ#1979100)

7.9. Identity Management

在运行 bootstrap 脚本时,FreeRADIUS 不再错误地生成默认证书

每次启动 FreeRADIUS 时,bootstrap 脚本都运行。在以前的版本中,该脚本会在 /etc/raddb/certs 目录中生成新的测试证书,因此 FreeRADIUS 服务器有时无法启动,因为这些测试证书无效。例如,证书可能已过期。在这个版本中,bootstrap 脚本会检查 /etc/raddb/certs 目录,如果它包含任何测试或客户证书,该脚本不会运行,并且 FreeRADIUS 服务器应该可以正确启动。

请注意,测试证书只在配置 FreeRADIUS 时测试目的,不应用于实际环境中。使用用户证书后,应删除 bootstrap 脚本。

(BZ#1954521)

FreeRADIUS 不再无法创建内核转储文件

在以前的版本中,当 allow_core_dumps 被设置为 yes 时,FreeRADIUS 不会创建内核转储文件。因此,不会在任何进程失败时创建核心转储文件。在这个版本中,当将 allow_core_dumps 设置为 yes 时,FreeRADIUS 现在会在任何进程失败时创建一个核心转储文件。

(BZ#1977572)

SSSD 正确评估 /etc/krb5.conf 中 Kerberos keytab 名称的默认设置

在以前的版本中,如果您为 krb5.keytab 文件定义了非标准位置,SSSD 不会使用此位置,而是使用默认的 /etc/krb5.keytab 位置。因此,当您尝试登录到系统时,因为 /etc/krb5.keytab 没有包含条目,登录会失败。

在这个版本中,SSSD 会评估 /etc/krb5.conf 中的 default_keytab_name 变量,并使用此变量指定的位置。如果未设置 default_ keytab _name 变量,SSSD 仅使用默认的 /etc/krb5. keytab 位置。

(BZ#1737489)

运行 sudo 命令不再导出 KRB5CCNAME 环境变量

在以前的版本中,在运行 sudo 命令后,环境变量 KRB5CCNAME 指向原始用户的 Kerberos 凭证缓存,目标用户可能无法访问这些缓存。因此,Kerberos 相关的操作可能会失败,因为无法访问这个缓存。在这个版本中,运行 sudo 命令不再设置 KRB5CCNAME 环境变量,目标用户可使用其默认的 Kerberos 凭证缓存。

(BZ#1879869)

Kerberos 现在只请求允许的加密类型

在以前的版本中,如果未设置 default_ tgs _enctypes 或 default_ tkt_enctypes 参数,则 RHEL 不会应用在 /etc/krb5.conf 文件中的 allowed_ enctypes 参数中指定的允许加密类型。因此,Kerberos 客户端可以请求弃用的密码套件,如 RC4,这可能会导致其他进程失败。在这个版本中,RHEL 将 allowed _enctypes 中设置的加密类型应用到默认加密类型,进程只能请求允许的加密类型。

如果您使用 Red Hat Identity Management(IdM)并希望使用 Active Directory(AD)设置信任,请注意 RC4 密码套件(在 RHEL 8 中已弃用)是 AD 林中 AD 域的默认加密类型。您可以使用以下选项之一:

(BZ#2005277)

复制会话更新速度现已提高

在以前的版本中,当 changelog 包含较大的更新时,复制会话从 changelog 开始时启动。这会减慢会话速度。使用小缓冲区在复制会话期间存储来自 changelog 的更新会导致这一点。在这个版本中,复制会话会检查缓冲区是否足够大,以便首先存储更新。复制会话开始立即发送更新。

(BZ#1898541)

现在启用插件创建的数据库索引

在以前的版本中,当服务器插件创建自己的数据库索引时,您必须手动启用这些索引。在这个版本中,索引会在创建后立即启用。

(BZ#1951020)

7.10. Red Hat Enterprise Linux 系统角色

运行同一输出时角色任务不再更改

在以前的版本中,即使没有更改,多个角色任务会在再次运行相同的输入时报告为 CHANGED。因此,该角色无法起到幂等作用。要解决这个问题,请执行以下操作:

  • 在应用配置变量前,检查是否更改了配置变量。您可以使用 --check 选项进行此验证。
  • 不要在配置文件中添加 Last Modified: $date 标头。

因此,角色任务是幂等的。

(BZ#1960375)

Postfix 文档中的不再错误定义 relayhost 参数

在以前的版本中,Postfix RHEL 系统角色的 relayhost 参数在 doc /usr/share/doc/rhel-system-roles/postfix/README.md 文档中定义为 relay _host在这个版本中解决了这个问题,现在 Postfix 文档中的正确定义了 relayhost 参数。

(BZ#1866544)

Postfix RHEL 系统角色 README.md 不再缺少"Role Variables"部分下的变量

在以前的版本中,Postfix RHEL 系统角色变量(如 postfix_check、postfix_backuppostfix_backup_multiple) 在"Role Variables"部分下不可用。因此,用户无法参考 Postfix 角色文档。在这个版本中,在 Postfix README 部分添加了角色变量文档。角色变量记录下来,供用户在 rhel-system-roles 提供的 doc/usr/share/doc/rhel-system-roles/postfix/README.md 文档中的使用。

(BZ#1961858)

Postfix 角色 README 不再使用纯角色名称

在以前的版本中,/usr/share/ansible/roles/rhel-system-roles.postfix/README.md 中提供的示例使用角色名称 postfix 的普通版本,而不是使用 rhel-system-roles.postfix。因此,用户会查阅相关文档,并错误地使用纯文本角色名称,而不是完全限定角色名称(FQRN)。在这个版本中解决了这个问题,文档中包含 FQRN、rhel- system-roles.postfix 的示例,使用户能够正确编写 playbook。

(BZ#1958963)

timesync 的输出日志只报告误导错误

在以前的版本中,timesync RHEL 系统角色使用 ignore_errors 指令,在很多任务中单独检查任务失败。因此,成功运行的角色的输出日志充满了不必要的错误。用户可以安全地忽略这些错误,但仍需要查看。在这个版本中,相关的任务被重写,不使用 ignore_errors。因此,输出日志现在清理干净,只报告角色停止错误。

(BZ#1938014)

Ansible 集合中不再缺少 requirements.txt 文件

在以前的版本中,Ansible 集合中缺少了负责指定 python 依赖项的 requirements.txt 文件。在这个版本中,在 /usr/share/ansible/collections/ansible_collections/redhat/rhel_system_roles/requirements.tx 路径中添加缺少的文件。

(BZ#1954747)

storage_pools设置 type: 分区 时不再观察到 traceback

在以前的版本中,当将变量 类型 设置为 playbook 中 storage _pools 的分区时,运行此 playbook 将失败并指示 回溯。在这个版本中解决了这个问题,不再 会出现 Traceback 错误。

(BZ#1854187)

SELinux 角色不再执行不必要的重新加载

在以前的版本中,SElinux 角色不会在重新载入 SElinux 策略前检查是否实际应用了更改。因此,SElinux 策略会不必要的重新加载,这会影响系统资源。在这个版本中,SElinux 角色使用 ansible 处理程序和条件来确保仅在有更改时才重新加载策略。因此,SElinux 角色的运行速度要快得多。

(BZ#1757869)

sshd 角色不再无法使用在 RHEL6 主机上安装的 sshd_config 文件启动。

在以前的版本中,当受管节点运行 RHEL6 时,OpenSSH 的版本在 Match 标准中不支持"Match all",由安装任务添加。因此,sshd 无法从 RHEL6 主机上安装的 sshd_config 文件开始。在这个版本中解决了这个问题,方法是将 RHEL6 sshd_config 配置文件的 "Match address *" 替换为 "Match address *",因为 OpenSSH 版本支持这个标准。因此,sshd RHEL 系统角色从 RHEL6 主机上安装的 sshd_config 文件成功启动。

(BZ#1990947)

SSHD 角色名称 in README.md 不再不正确

在以前的版本中,在 sshd README.md 文件中,示例引用使用 willshersystems.sshd 名称调用角色的示例。在这个版本中解决了这个问题,示例将角色正确地指代为 "rhel_system_roles.sshd"。

(BZ#1952090)

tlsfalse时,密钥/证书源 文件不再被复制

在以前的版本中,在 日志记录 RHEL 系统角色 elasticsearch 输出中,如果控制主机上的 key/certs 源文件路径已在 playbook 中配置,它们也会复制到受管主机,即使 tls 被设置为 false。因此,如果配置了 密钥/证书文件 路径,并且 tls 被设置为 false,该命令将失败,因为复制源文件不存在。在这个版本中解决了这个问题,只有在 tls param 被设置为 true 时复制密钥/ 证书才会执行。

(BZ#1994580)

指标角色中的目标主机启用日志记录的任务 现在可以正常工作

在以前的版本中,Metric RHEL 系统角色中的一个错误会在 启用性能指标日志记录 任务时引用目标主机。因此,不会生成用于性能指标日志记录的控制文件。在这个版本中解决了这个问题,现在可以正确地引用目标主机。因此,控制文件被成功创建,启用性能指标日志执行。

(BZ#1967335)

sshd_hostkey_groupsshd_hostkey_mode 变量现在可在 playbook 中配置

在以前的版本中,sshd _hostkey_groupsshd_hostkey_mode 变量会在 defaultsvars 文件中被意外定义。因此,用户无法在 playbook 中配置这些变量。在这个版本中,sshd_hostkey_group 被重命名为 __sshd_hostkey_group,ssh_ hostkey_mode 则重命名为 __sshd_hostkey_mode,用于在 vars 文件中定义恒定值。在 默认 文件中,sshd_hostkey_group 设置为 __sshd_hostkey_group,ssh _hostkey_mode 设置为 __sshd_hostkey_mode。现在,用户可以在 playbook 中配置 sshd_hostkey_groupsshd_hostkey_mode 变量。

(BZ#1966711)

README.md 中的 RHEL 系统角色内部链接不再有问题

在以前的版本中,README.md 文件中可用的内部链接被破坏。因此,如果用户点击特定的小节文档链接,它不会将用户重定向到 specific README.md 部分。在这个版本中解决了这个问题,内部链接将用户指向正确的部分。

(BZ#1962976)

7.11. 云环境中的 RHEL

nm-cloud-setup 工具现在在 Microsoft Azure 上设置正确的默认路由

在以前的版本中,在 Microsoft Azure 中,nm-cloud-setup 工具无法检测云环境的正确网关。因此,实用程序设置了一个不正确的默认路由,连接会失败。在这个版本中解决了这个问题。因此,nm-cloud-setup 程序现在在 Microsoft Azure 上设置正确的默认路由。

BZ#1912236

现在,通过备份 AMI 创建的 EC2 实例上会正确生成 SSH 密钥

在以前的版本中,当从备份 Amazon Machine Image(AMI)创建新 RHEL 8 的 Amazon EC2 实例时,cloud-init 会删除虚拟机上现有的 SSH 密钥,但没有创建新密钥。因此,虚拟机在某些情况下无法连接到主机。

新创建的 RHEL 8.5 虚拟机解决了这个问题。对于从 RHEL 8.4 或更早版本升级的虚拟机,您必须手动解决这个问题。

为此,请编辑 cloud.cfg 文件并更改 ssh_genkeytypes: ~ 行到 ssh_genkeytypes: ['rsa', 'ecdsa', 'ed25519']。当在上述的情形中创建 RHEL 8 虚拟机时,可以正确删除并生成 SSH 密钥。

(BZ#1957532)

在 AWS ARM64 实例上运行的 RHEL 8 现在可达到指定的网络速度

当在 Amazon Web Services(AWS) ARM64 实例上运行的虚拟机(VM)中使用 RHEL 8 作为客户机操作系统时,当使用iommu. strict=1 内核参数或 定义 noiommu.strict.1 内核参数时,VM 之前会 低于预期的网络性能。

红帽提供的 RHEL 8.5 Amazon 机器镜像(AMI)不再会出现这种情况。在其他类型的镜像中,您可以通过将 参数更改为 to iommu.strict=0 来解决这个问题。这包括:

  • RHEL 8.4 及更早的镜像
  • 使用 yum update从早期版本升级的 RHEL 8.5 镜像
  • RHEL 8.5 镜像不是由红帽提供的

(BZ#1836058)

内核转储 RHEL 8 虚拟机到 Azure 上的远程机器现在可以更可靠

在以前的版本中,当虚拟机使用启用了加速网络的 NIC 时,使用 kdump 工具将 RHEL 8 虚拟机(VM)的内核转储文件保存到远程机器上无法正常工作。因此,转储文件会在大约 200 秒后保存,而不是立即保存。另外,在保存转储文件前,控制台中记录了以下错误消息。

device (eth0): linklocal6: DAD failed for an EUI-64 address

在这个版本中,底层代码已被修复,在上述情况下,转储文件会被立即保存。

(BZ#1854037)

现在,当启用了 FIPS 模式时,Hibernating RHEL 8 客户机可以正常工作

在以前的版本中,如果虚拟机使用 FIPS 模式,则无法休眠使用 RHEL 8 作为其客户机操作系统的虚拟机(VM)。现在,底层代码已被修复,受影响的虚拟机现在可以正确地休眠。

(BZ#1934033, BZ#1944636)

7.12. 容器

UBI 9-Beta 容器可以在 RHEL 7 和 8 主机上运行

在以前的版本中,UBI 9-Beta 容器镜像在 containers-common 软件包中设置了不正确的 seccomp 配置集。因此,容器无法处理导致失败的一些系统调用。在这个版本中,这个问题已被解决。

(BZ#2019901)

第 8 章 技术预览

这部分提供了 Red Hat Enterprise Linux 8.5 中所有可用技术预览的列表。

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

8.1. 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 引导加载器。

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

(BZ#1868421)

8.2. 网络

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

act_mpls 模块作为技术预览提供

act_mpls 模块现在作为技术预览在 kernel-modules-extra rpm 中找到。该模块允许使用流量控制(TC)过滤器进行多协议标签交换(MPLS)操作,例如:通过 TC 过滤器推送和弹出 MPLS 标签堆栈条目。模块还允许独立设置 Label、Traffic Class、Stack 的 Bottom 和 Time to Live 字段。

(BZ#1839311)

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

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

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

BZ#1906489

The nispor 软件包现在作为技术预览提供

The nispor 软件包现在作为技术预览提供,它是 Linux 网络状态查询的统一接口。它通过 python 和 C api 查询所有正在运行的网络状态,rust crate. nispor 则充当 nmstate 工具中的依赖项。

您可以将 nispor 软件包作为 nmstate的依赖项或单独的软件包来安装。

  • 要将 nispor作为单独的软件包来安装,请输入:

    # yum install nispor
  • 要将 nispor 作为 nmstate 的依赖项来安装,请输入:

    # yum install nmstate

    nispor 被列为依赖项。

有关使用 nispor 的更多信息,请参阅 /usr/share/doc/nispor/README.md 文件。

(BZ#1848817)

8.3. 内核

kexec fast reboot 功能作为技术预览提供

kexec fast reboot 功能仍可作为技术预览使用。kexec fast reboot 通过允许内核直接引导第二个内核而无需首先通过基本输入/输出系统(BIOS)来加快引导过程。要使用这个功能:

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

(BZ#1769727)

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

accel-config 软件包现在作为技术预览在 Intel EM64TAMD64 架构中提供。这个软件包有助于控制并配置 Linux 内核中的数据流化器(DSA)子系统。另外,它还通过 sysfs( pseudo-filesystem)配置设备,以 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 组件当前还作为技术预览提供:

  • bpftrace 是使用 eBPF 虚拟机的高级别追踪语言。
  • AF_XDP,这是用于连接至 用户空间的套接字(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 驱动程序作为技术预览提供

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

(BZ#1905243)

8.4. 文件系统和存储

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

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

(BZ#1627455)

OverlayFS

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

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

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

  • OverlayFS 仅支持作为容器引擎图形驱动程序使用。它只针对容器 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=on 或 index=on 创建覆盖,卸载覆盖,然后在没有这些选项的情况下挂载覆盖,则可能会出现意外的结果或错误。

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

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

有关 OverlayFS 的详情请参考 Linux 内核文档: https://www.kernel.org/doc/Documentation/filesystems/overlayfs.txt

(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.konvmet-tcp.ko 内核模块已被添加为技术预览。

使用 nvme-clinvmetcli 软件包提供的工具可以管理 NVMe/TCP 作为存储客户端或目标。

NVMe/TCP 目标技术预览仅用于测试目的,目前没有计划提供全面支持。

(BZ#1696451)

8.5. 高可用性和集群

pacemaker podman bundles 作为技术预览

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

(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.6. Identity Management

身份管理 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

(JIRA:RHELPLAN-58596)

8.7. Desktop

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

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

因此,在 64 位 ARM 架构中提供了新的管理应用程序。例如:磁盘使用情况分析器 (baobab)、防火墙 配置 (firewall-config)、红帽订阅管理器( 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.8. 图形基础结构

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

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

(BZ#1698565)

8.9. Red Hat Enterprise Linux 系统角色

HA 集群 RHEL 系统角色作为技术预览提供

High Availability Cluster(HA Cluster)角色现在作为技术预览提供。目前,有以下显著配置可用:

  • 配置节点、隔离设备、资源、资源组和资源克隆,包括 meta 属性和资源操作
  • 配置集群属性
  • 配置多链接集群
  • 配置自定义集群名称和节点名称
  • 配置集群在引导时是否自动启动
  • 配置基本的 corosync 群集和 pacemaker 群集属性、stonith 和资源.

ha_cluster 系统角色目前不支持限制。在手动配置限制后运行角色,将移除限制以及角色不支持的任何配置。

ha_cluster 系统角色目前不支持 SBD。

(BZ#1893743, BZ#1978726)

8.10. 虚拟化

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

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

此外,增强的加密状态版 SEV(SEV-ES)也作为技术预览提供。当虚拟机停止运行时,SEV-ES 会加密所有 CPU 注册内容。这样可防止主机修改虚拟机的 CPU 寄存器或读取其中的任何信息。

请注意,SEV 和 SEV-ES 仅适用于 AMD EPYC CPU(代号)或更新版本。另请注意,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)

创建嵌套虚拟机

对于在 Intel、AMD64 和使用 RHEL 8 的 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 2019 和 2016 支持该功能。

(BZ#1348508)

ESXi hypervisor 和 SEV-ES 作为 RHEL 虚拟机的一个技术预览提供

作为技术预览,在 RHEL 8.4 及之后的版本中,您可以在 VMware 的 ESXi hypervisor、7.0.2 及更新的版本上启用 AMD Secure Encrypted Virtualization-Encrypted State(SEV-ES)以防止 RHEL 虚拟机(VM)。

(BZ#1904496)

使用 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.11. 容器

toolbox 作为技术预览提供

在以前的版本中,Toolbox 工具程序基于 RHEL CoreOS github.com/coreos/toolbox。在这个版本中,工具箱已被 github.com/containers/toolbox 替代。

(JIRA:RHELPLAN-77238)

第 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)

Image Builder 的 The lorax-composer 后端在 RHEL 8 中已弃用

Image Builder 的 The lorax-composer 后端被视为已弃用。它只会获得 Red Hat Enterprise Linux 8 生命周期剩余部分修复程序,并将在以后的主发行版本中被忽略。  红帽建议您卸载 lorax-composer 并安装 the osbuild-composer 后端。

如需了解更多详细信息,请参阅生成自定义的 RHEL 系统镜像

(BZ#1893767)

9.2. 软件管理

rpmbuild --sign 已弃用

在这个版本中,rpmbuild --sign 命令已过时。在以后的 Red Hat Enterprise Linux 版本中使用这个命令可能会导致错误。建议您使用 rpmsign 命令替代。

(BZ#1688849)

9.3. Shell 和命令行工具

OpenEXR 组件已弃用

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

(BZ#1886310)

转储 软件包中的 转储 工具已弃用

用于备份文件系统的 转储 工具已弃用,在 RHEL 9 中将不可用。

在 RHEL 9 中,红帽建议根据使用类型,使用 baculatardd backup 实用程序,它在 ext2、ext3 和 ext4 文件系统上提供完整且安全备份。

请注意,转储 软件包中的 恢复 实用程序仍然可用,在 RHEL 9 中被支持,并可作为 恢复 软件包获得。

(BZ#1997366)

RHEL 8 systemd不支持 隐藏pid=n 挂载选项

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

另外,使用这个选项可能会导致 systemd 启动的某些服务生成 SELinux AVC 拒绝信息并防止其他操作完成。

如需更多信息,请参阅 RHEL7 和 RHEL8 中建议使用 "hidepid=2" 挂载 /proc?

(BZ#2038929)

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 中的 Strong crypto 默认值,并弃用红帽客户门户网站中的弱加密算法 知识库文章和 update-crypto-policies(8)man page。

(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_cipher、ssh _cipher、ssh_groupike_protocolsha1_in_dnssec。另外,没有指定范围 的协议 属性现在也被弃用。有关推荐的替换信息,请参阅 crypto-policies(7) man page。

(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

selinux-policy中删除 ipa SELinux 模块

ipa SELinux 模块已从 selinux-policy 软件包中删除,因为它不再被维护。这个功能现在包括在 ipa-selinux 子软件包中。

如果您的场景需要在本地 SELinux 策略中使用 ipa 模块中的类型或接口,请安装 ipa-selinux 软件包。

(BZ#1461914)

9.5. 网络

在 RHEL 8 中已弃用网络脚本

网络脚本在 Red Hat Enterprise Linux 8 中已弃用,且不再默认提供。基本安装提供了一个新版本的 if upifdown 脚本,它通过 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)

9.6. 内核

内核实时补丁现在涵盖所有 RHEL 次要版本

从 RHEL 8.1 开始,为特定的 RHEL 次要发行流提供内核实时补丁,该策略包括在延长更新支持(EUS)政策中,以修复关键(Critical)和重要(Important)通用漏洞和风险(CVE)。为了适应同时覆盖的内核和使用案例的最大数量,每个实时补丁的支持窗口将从每个次要版本、主版本和 zStream 版本从 12 个月减少到 6 个月。这意味着,在内核实时补丁的当天,它将涵盖每个次要版本以及过去 6 个月内提供的已调度勘误表内核。例如,8.4.x 将有一个为期一年的支持窗口,但 8.4.x+1 将有 6 个月。

有关此功能的更多信息,请参阅使用内核实时补丁应用补丁

有关可用内核实时补丁的详情,请查看 Kernel Live Patch 生命周期。

(BZ#1958250)

使用无磁盘引导为 Real Time 8 安装 RHEL 现已弃用

无磁盘引导允许多个系统通过网络共享一个 root 文件系统。无盘引导是方便的,它在实时工作负载中容易引入网络延迟。在以后的 RHEL for Real Time 8 的更新中,无盘引导功能将不再被支持。

(BZ#1748980)

Linux firewire 子系统及其关联的用户空间组件在 RHEL 8 中已弃用

firewire 子系统提供使用和维护 IEEE 1394 总线上的任何资源的接口。在 RHEL 9 中,内核软件包 不再支持 firewire。请注意,firewire 包含由 libavc1394 提供的几个用户空间组件,libdc1394,libraw1394 软件包。这些软件包也会受到弃用的影响。

(BZ#1871863)

The rdma_rxe Soft-RoCE 驱动程序已弃用

软件直接内存通过融合以太网(Soft-RoCE)(也称为 RXE)是模拟远程直接内存访问(RDMA)的功能。在 RHEL 8 中,Soft-RoCE 功能作为一个不受支持的技术预览提供。但是,由于稳定性问题,此功能已被弃用,并将在 RHEL 9 中删除。

(BZ#1878207)

9.7. 文件系统和存储

弃用了 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 管理软件创建的现有卷可以使用 /usr/sbin/lvm_import_vdo 脚本转换,该脚本由 lvm2 软件包提供。有关 LVM-VDO 实现的更多信息,请参阅 LVM 中的 VDO 简介

(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.8. 高可用性和集群

支持 clufter 工具的 pcs 命令已被弃用

支持 clufter 工具来分析群集配置格式的 pcs 命令已被弃用。现在,这些命令会显示一个警告信息,提示该命令已弃用,并且与这些命令相关的部分已从 pcs 帮助显示和pcs(8)手册页中删除。

以下命令已被弃用:

  • 用于导入 CMAN / RHEL6 HA 群集配置的 pcs config import-cman
  • 用于 导出集群配置的 pcs config 导出到重新创建同一集群的 pcs 命令列表

(BZ#1851335)

9.9. 编译器和开发工具

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.10. Identity Management

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 中设置 allowed _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)

通过 WinSync 与 IdM 的间接 AD 集成已弃用

由于几个功能限制,WinSync 不再在 RHEL 8 中活跃开发:

  • WinSync 只支持一个 Active Directory(AD)域。
  • 密码同步需要在 AD 域控制器上安装其他软件。

对于具有更好资源和安全性分隔的更强大的解决方案,红帽建议使用 跨林信任 与 Active Directory 间接集成。请参阅 间接集成 文档。

(JIRA:RHELPLAN-100400)

以 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

已删除 libwbclient 的 SSSD 版本

libwbclient 软件包的 SSSD 实施在 RHEL 8.4 中已弃用。由于它不能用于 Samba 的最新版本,因此 libwbclient 的 SSSD 实施现已被删除。

(BZ#1947671)

9.11. Desktop

libgnome-keyring 库已弃用

libgnome-keyring 库已弃用,现在使用 libsecret 库,因为 libgnome-keyring 没有被上游维护,且不会遵循 RHEL 所需的加密策略。新的 libsecret 库是符合所需安全标准的替换。

(BZ#1607766)

9.12. 图形基础结构

不再支持 AGP 图形卡

Red Hat Enterprise Linux 8 不支持使用图形端口(AGP)总线的图形卡。推荐使用 PCI-Express bus 图形卡替换。

(BZ#1569610)

motif 已弃用

Motif widget 工具包现已弃用。上游 Motif 社区的发展不活跃。

以下 Motif 软件包已被弃用,包括其开发和调试变体:

  • motif
  • motif-static
  • openmotif
  • openmotif21
  • openmotif22

红帽建议使用 GTK 工具包替换。与 Motif 相比,GTK 更易于维护并提供新功能。

(JIRA:RHELPLAN-98983)

9.13. Web 控制台

Web 控制台不再支持不完整翻译

RHEL web 控制台不再提供翻译少于 50% 的语言支持。如果浏览器要求转换成这种语言,用户界面将为英语。

(BZ#1666722)

9.14. Red Hat Enterprise Linux 系统角色

geoipupdate 软件包已弃用

geoipupdate 软件包需要第三方订阅,同时下载专有内容。因此,geoipupdate 软件包已被弃用,并将在下一个主要 RHEL 版本中删除。

(BZ#1874892)

9.15. 虚拟化

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 管理虚拟化。但请注意,virt -manager 中的一些功能可能尚不在 RHEL web 控制台中提供。

(JIRA:RHELPLAN-10304)

RHEL 8 不支持虚拟机快照

当前创建虚拟机(VM)快照的机制已经被弃用,因为它无法可靠工作。因此,建议在 RHEL 8 中使用虚拟机快照。

(BZ#1686057)

Cirrus VGA 虚拟 GPU 类型已弃用

随着 Red Hat Enterprise Linux 的主要更新,Cirrus VGA GPU 设备将在 KVM 虚拟机中不再被支持。因此,红帽建议使用 stdvga、virtio-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 中仍支持 SPICE,但红帽建议您为远程显示流使用备选解决方案:

  • 要访问远程控制台,请使用 VNC 协议。
  • 对于高级远程显示功能,请使用 RDP、HP RGS 或 Mechdyne TGX 等第三方工具。

(BZ#1849563)

9.16. 支持性

-s split 选项不再被 -f 选项支持

通过上传文件到红帽 安全 FTP 向红帽支持提供文件时,您可以运行 redhat-support-tool addattachment -f 命令。但是,由于基础架构变化,这个命令不再使用 -s 选项将大文件分割为部分内容并将其上传到 红帽安全 FTP

(BZ#2013335)

redhat-support-tool diagnostic <file_or_directory> 命令已弃用

红帽支持工具 不再支持之前用于文件或目录的高级 诊断服务的 redhat-support-tool diagnostic <file_or_directory> 命令redhat-support-tool 诊断 命令继续支持纯文本分析。

(BZ#2019786)

9.17. 容器

基于 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)

9.18. 已弃用的软件包

本节列出了已弃用的软件包,可能不会包括在 Red Hat Enterprise Linux 未来的主发行版本中。

有关 RHEL 7 和 RHEL 8 之间软件包的更改 请参阅使用 RHEL 8 的注意事项 更改

以下软件包已弃用,并保持在 RHEL 8 生命周期结束前被支持:

  • 389-ds-base-legacy-tools
  • adobe-source-sans-pro-fonts
  • adwaita-qt
  • amanda
  • amanda-client
  • amanda-libs
  • amanda-server
  • ant-contrib
  • antlr3
  • antlr32
  • 中断
  • 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
  • assertj-core
  • authd
  • auto
  • autoconf213
  • autogen
  • base64coder
  • batik
  • bea-stax
  • bea-stax-api
  • bind-sdb
  • bouncycastle
  • bsh
  • buildnumber-maven-plugin
  • byaccj
  • cal10n
  • cbi-plugins
  • cdparanoia
  • cdparanoia-devel
  • cdparanoia-libs
  • cdrdao
  • Cmirror
  • codehaus-parent
  • codemodel
  • compat-exiv2-026
  • compat-guile18
  • compat-libpthread-nonshared
  • compat-openssl10
  • compat-sap-c++-10
  • createrepo_c-devel
  • CTags
  • ctags-etags
  • custodia
  • dbus-c++
  • dbus-c++-devel
  • dbus-c++-glib
  • dbxtool
  • dirsplit
  • dleyna-connector-dbus
  • dleyna-core
  • dleyna-renderer
  • dleyna-server
  • dnssec-trigger
  • dptfxtract
  • drpm
  • drpm-devel
  • 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
  • forge-parent
  • 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
  • GConf2
  • GConf2-devel
  • 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-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
  • gnupg2-smime
  • gobject-introspection-devel
  • google-gson
  • gphoto2
  • gssntlmssp
  • gtest
  • gtest-devel
  • gtkmm24
  • gtkmm24-devel
  • gtkmm24-docs
  • gtksourceview3
  • gtksourceview3-devel
  • gtkspell
  • gtkspell-devel
  • gtkspell3
  • guile
  • gutenprint-gimp
  • gvfs-afc
  • gvfs-afp
  • gvfs-archive
  • hawtjni
  • highlight-gui
  • hivex-devel
  • hostname
  • hplip-gui
  • httpcomponents-project
  • 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_cup
  • java-atk-wrapper
  • javacc
  • javacc-maven-plugin
  • javaewah
  • javaparser
  • javapoet
  • javassist
  • 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
  • ldapjdk-javadoc
  • lensfun
  • lensfun-devel
  • libaec
  • libaec-devel
  • libappindicator-gtk3
  • libappindicator-gtk3-devel
  • libavc1394
  • libblocksruntime
  • libcacard
  • libcacard-devel
  • libcgroup
  • 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
  • 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
  • libldb-devel
  • liblogging
  • libluksmeta-devel
  • libmcpp
  • libmemcached
  • libmetalink
  • libmodulemd1
  • libmongocrypt
  • libmtp-devel
  • libmusicbrainz5
  • libmusicbrainz5-devel
  • libnbd-devel
  • liboauth
  • liboauth-devel
  • libpfm-static
  • libpng12
  • libpurple
  • libpurple-devel
  • libraw1394
  • libsass
  • libsass-devel
  • libselinux-python
  • libsqlite3x
  • libtalloc-devel
  • libtar
  • libtdb-devel
  • libtevent-devel
  • libunwind
  • libusal
  • libvarlink
  • 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
  • libvncserver
  • libwinpr-devel
  • libwmf
  • libwmf-devel
  • libwmf-lite
  • libXNVCtrl
  • libyami
  • log4j12
  • lorax-composer
  • lua-guestfs
  • lucene
  • mailman
  • mailx
  • make-devel
  • 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-scm
  • maven-script-interpreter
  • maven-shade-plugin
  • maven-shared
  • maven-verifier
  • maven2
  • 同时
  • mercurial
  • Metis
  • 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
  • nbd
  • nbdkit-devel
  • nbdkit-example-plugins
  • nbdkit-gzip-plugin
  • ncompress
  • net-tools
  • netcf
  • netcf-devel
  • netcf-libs
  • network-scripts
  • nkF
  • nss_nis
  • nss-pam-ldapd
  • objectweb-asm
  • objectweb-pom
  • ocaml-bisect-ppx
  • ocaml-camlp4
  • ocaml-camlp4-devel
  • ocaml-lwt
  • ocaml-mmap
  • ocaml-ocplib-endian
  • ocaml-ounit
  • ocaml-result
  • ocaml-seq
  • opencv-contrib
  • opencv-core
  • opencv-devel
  • openhpi
  • openhpi-libs
  • OpenIPMI-perl
  • openssh-cavs
  • openssh-ldap
  • openssl-ibmpkcs11
  • opentest4j
  • os-maven-plugin
  • pakchois
  • pandoc
  • Parnamer
  • parfait
  • parfait-examples
  • parfait-javadoc
  • pcp-parfait-agent
  • pcp-pmda-rpm
  • 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
  • pidgin
  • pidgin-devel
  • pidgin-sipe
  • pinentry-emacs
  • pinentry-gtk
  • pipewire0.2-devel
  • pipewire0.2-libs
  • 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
  • ptscotch-mpich
  • ptscotch-mpich-devel
  • ptscotch-mpich-devel-parmetis
  • ptscotch-openmpi
  • ptscotch-openmpi-devel
  • purple-sipe
  • python-nss-doc
  • python-redis
  • python-schedutils
  • python-slip
  • python-varlink
  • python2-mock
  • python3-click
  • python3-cpio
  • python3-custodia
  • 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-pydbus
  • python3-pymongo
  • python3-pyOpenSSL
  • python3-pytoml
  • python3-reportlab
  • python3-schedutils
  • python3-scons
  • python3-semantic_version
  • python3-syspurpose
  • python3-virtualenv
  • python3-webencodings
  • python3-werkzeug
  • qemu-kvm-block-gluster
  • qemu-kvm-block-iscsi
  • qemu-kvm-tests
  • qpdf
  • qpid-proton
  • qrencode
  • qrencode-devel
  • qrencode-libs
  • qt5-qtcanvas3d
  • qt5-qtcanvas3d-examples
  • rarian
  • rarian-compat
  • re2c
  • redhat-menus
  • redhat-support-lib-python
  • redhat-support-tool
  • 想法
  • regexp
  • relaxngDatatype
  • rhsm-gtk
  • rpm-plugin-prioreset
  • rsyslog-udpspoof
  • ruby-hivex
  • ruby-libguestfs
  • rubygem-abrt
  • rubygem-abrt-doc
  • rubygem-mongo
  • rubygem-mongo-doc
  • samba-pidl
  • samba-test
  • samba-test-libs
  • sane-frontends
  • sanlk-reset
  • scala
  • scotch
  • scotch-devel
  • SDL_sound
  • selinux-policy-minimum
  • sendmail
  • sgabios
  • sgabios-bin
  • shrinkwrap
  • sisu-mojos
  • SLOF
  • sonatype-oss-parent
  • sonatype-plugins-parent
  • sparsehash-devel
  • 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-devel
  • spice-streaming-agent
  • spice-vdagent-win-x64
  • spice-vdagent-win-x86
  • sssd-libwbclient
  • 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
  • system-storage-manager
  • TestNG
  • timedatex
  • treelayout
  • trousers
  • tycho
  • uglify-js
  • 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
  • xdelta
  • xmlgraphics-commons
  • xmlstreambuffer
  • xinetd
  • xorg-x11-apps
  • xorg-x11-drv-qxl
  • xorg-x11-server-Xspice
  • xpp3
  • xsane-gimp
  • xsom
  • xz-java
  • yajl-devel
  • yp-tools
  • ypbind
  • ypserv

9.19. 过时的和未维护的设备

本节列出了(驱动程序、适配器)

  • 在 RHEL 8 的生命周期结束前仍然被支持,但可能在以后的主要发行本中不被支持,且不建议在新部署中使用。对列出的设备的支持不会改变。这些设备 已弃用
  • 可用,但在 RHEL 8 中不再定期测试或更新。红帽可能会酌情修复严重错误,包括安全漏洞。这些设备不应在生产环境中使用,并且有可能在下一个主要版本中被禁用。它们是 未维护的设备

PCI 设备 ID 的格式是 vendor:device:subvendor:subdevice。如果没有列出设备 ID,则与对应驱动程序关联的所有设备都已弃用。要在您的系统中检查硬件的 PCI ID,请运行 lspci -nn 命令。

表 9.1. 弃用的设备

设备 ID驱动设备名称
 

bnx2

QLogic BCM5706/5708/5709/5716 驱动程序

 

hpsa

Hewlett-Packard 公司:智能阵列控制器

0x10df:0x0724

lpfc

Emulex Corporation:OneConnect FCoE 启动器(Skyhawk)

0x10df:0xe200

lpfc

Emulex Corporation:LPe15000/LPe16000 系列 8Gb/16Gb Fibre Channel Adapter

0x10df:0xf011

lpfc

Emulex Corporation:Saturn:LightPulse Fibre Channel 主机适配器

0x10df:0xf015

lpfc

Emulex Corporation:Saturn:LightPulse Fibre Channel 主机适配器

0x10df:0xf100

lpfc

Emulex Corporation:LPe12000 系列 8Gb Fibre Channel Adapter

0x10df:0xfc40

lpfc

Emulex Corporation:Saturn-X:LightPulse Fibre Channel 主机适配器

0x10df:0xe220

be2net

Emulex Corporation: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)Gligent Ethernet Driver

0x1077:0x2031

qla2xxx

QLogic Corp.:基于 ISP8324 的 16Gb Fibre Channel 到 PCI Express Adapter

0x1077:0x2532

qla2xxx

QLogic Corp.:ISP2532 基于 8Gb Fibre Channel 到 PCI Express HBA

0x1077:0x8031

qla2xxx

QLogic Corp.:8300 系列 10GbE Converged 网络适配器(FCoE)

 

qla3xxx

QLogic ISP3XXX 网络驱动程序 v2.03.00-k5

0x1924:0x0803

sfc

Solarflare Communications:SFC9020 10G 以太网控制器

0x1924:0x0813

sfc

Solarflare Communications:SFL9021 10GBASE-T 以太网控制器

 

Soft-RoCE (rdma_rxe)

 
 

HNS-RoCE

 

表 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]

[a] 在 RHEL 8.0 中禁用,由于客户请求在 RHEL 8.4 中重新启用。

第 10 章 已知问题

这部分论述了 Red Hat Enterprise Linux 8.5 中已知的问题。

10.1. 安装程序和镜像创建

如果在仓库刷新完成前尝试使用 CDN 取消注册,则 GUI 安装可能会失败

从 RHEL 8.2 开始,当使用 Content Delivery Network(CDN)注册您的系统并附加订阅时,GUI 安装程序会启动对仓库元数据的刷新。刷新过程不是注册和订阅过程的一部分,因此在 Connect to Red Hat 窗口中启用了 Unregister 按钮。根据网络连接,刷新过程可能需要一分钟以上的时间完成。如果您在刷新过程完成前点 Unregister 按钮,则 GUI 安装可能会失败,因为未注册过程会删除 CDN 仓库文件和安装程序与 CDN 通信所需的证书。

要临时解决这个问题,点 连接到红帽 窗口中的 Register 按钮后在 GUI 安装中完成以下步骤:

  1. 连接到红帽的 窗口中点 完成 返回 安装概述 窗口。
  2. 安装概述 窗口中验证 安装源软件选择状态 信息是否以斜体显示任何处理信息。
  3. 当安装源和软件选择类别准备好后,点 连接到红帽
  4. Unregister 按钮。

执行这些步骤后,您可以在 GUI 安装过程中安全地取消注册系统。

(BZ#1821192)

属于多个机构的用户帐户注册失败

目前,当试图使用属于多个机构的用户帐户注册系统时,注册过程会失败并显示出错信息, You must specify an organization for new units

要临时解决这个问题,您可以:

  • 使用不属于多个机构的不同用户帐户。
  • 使用 GUI 和 Kickstart 安装的的 Connect to Red Hat 中的Activation Key 验证方法。
  • 跳过连接到红帽的注册步骤,并使用 Subscription Manager 在安装后注册您的系统。

(BZ#1822880)

USB CD-ROM 驱动器作为 Anaconda 中的安装源不可用

当源为 USB CD-ROM 驱动器,并且指定了 Kickstart ignoredisk --only-use= 命令时,安装会失败。在这种情况下,Anaconda 无法找到并使用这个源磁盘。

要临时解决这个问题,请使用 harddrive --partition=sdX --dir=/ 命令从 USB CD-ROM 驱动器安装。因此,安装不会失败。

BZ#1914955

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)

在安装程序中不默认启用网络访问

几个安装功能需要网络访问,例如:使用 Content Delivery Network(CDN)、NTP 服务器支持和网络安装源注册系统。但默认情况下不启用网络访问,因此在启用网络访问前无法使用这些功能。

要临时解决这个问题,请添加 ip=dhcp 在启动安装时启用网络访问。另外,使用引导选项传递 Kickstart 文件或位于网络中的库也会解决这个问题。因此可以使用基于网络的安装功能。

(BZ#1757877)

硬盘分区安装带有 iso9660 文件系统失败

您不能在使用 iso9660 文件系统对硬盘进行分区的系统上安装 RHEL。这是因为更新的安装代码设置为忽略包含 iso9660 文件系统分区的任何硬盘。即使在没有使用 DVD 安装 RHEL 时也会发生这种情况。

要解决这个问题,请在 kickstart 文件中添加以下脚本以在安装开始前格式化磁盘。

注:在执行临时解决方案前,请备份磁盘上的数据。wipefs 命令格式化磁盘中的所有现有数据。

%pre
wipefs -a /dev/sda
%end

因此,安装可以正常工作,不会有任何错误。

(BZ#1929105)

带有 HASH MMU 模式的 IBM Power 系统无法引导,并显示内存分配失败

带有 HASH 内存分配单元(MMU)模式的 IBM Power Systems 支持 kdump 最多 192 个内核。因此,如果在 192 内核中启用了 kdump,则该系统会失败,并显示内存分配失败。这个限制是因为在 HASH MMU 模式早期引导时 RMA 内存分配造成的。要临时解决这个问题,使用启用 fadumpRadix MMU 模式,而不是使用 kdump

(BZ#2028361)

在蓝图和 Kickstart 文件中添加相同的用户名会导致 Edge 镜像安装失败

要安装 RHEL for Edge 镜像,用户必须创建一个蓝图来构建 rhel-edge-container 镜像,并创建一个 Kickstart 文件来安装 RHEL for Edge 镜像。当在蓝图和 Kickstart 文件中添加相同的用户名、密码和 SSH 密钥时,RHEL for Edge 镜像安装会失败。目前,还没有临时解决方案。

BZ#1951964

new osbuild-composer 后端不会在升级时从 lorax-composer 复制 蓝图状态

lorax-composer 后端升级到 new osbuild-composer 后端的镜像构建器用户,蓝图可能会消失。因此,升级完成后,蓝图不会自动显示。要临时解决这个问题,请执行以下步骤。

先决条件

  • 已安装 composer-cli CLI 工具。

流程

  1. 运行该命令,将之前基于 lorax-composer 的蓝图加载到 new osbuild-composer 后端:

    $ for blueprint in $(find /var/lib/lorax/composer/blueprints/git/workspace/master -name '*.toml'); do composer-cli blueprints push "${blueprint}"; done

因此,相同的蓝图现在包括在 in osbuild-composer 后端。

其它资源

(BZ#1897383)

在 Anaconda 作为应用程序运行的系统中意外 SELinux 策略

当在已安装的系统中作为应用程序运行 Anaconda(例如,使用 -image anaconda 选项对镜像文件执行另一个安装)时,系统将无法在安装过程中修改 SELinux 类型和属性。因此,某些 SELinux 策略元素可能会更改运行 Anaconda 的系统。要临时解决这个问题,请不要在生产环境系统上运行 Anaconda,并在临时虚拟机中执行它。因此,生产系统上的 SELinux 策略不会被修改。作为系统安装过程的一部分,运行 anaconda,如从 boot.isodvd.iso 安装不受此问题的影响。

(BZ#2050140)

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. 软件管理

如果系统中没有 CodeReady Linux Builder 软件仓库,lib dnf-devel 升级会失败

libdnf-devel 软件包已从 BaseOS 移到 CodeReady Linux Builder 存储库中。因此,如果系统中没有 CodeReady Linux Builder 存储库,升级 libdnf-devel 会失败。

要临时解决这个问题,在升级前启用 CodeReady Linux Builder 存储库,或删除 libdnf-devel 软件包。

(BZ#1960616)

cr_compress_file_with_stat() 可能会导致内存泄漏

createrepo_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)

10.4. Shell 和命令行工具

coreutils 可能会报告误导 EPERM 错误代码

GNU 核心实用程序(coreutils)使用 statx() 系统调用启动。如果 seccomp 过滤器返回一个未知系统调用的 EPERM 错误代码,则 coreutils 可能会报告误导 EPERM 错误代码,因为 EPERM 无法从工作 statx() syscall 返回的实际操作区分。

要临时解决这个问题,请将 seccomp 过滤器更新为允许 statx() 系统调用,或者为它不知道的 syscalls 返回 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 绑定,它用于向后兼容。因此,通过 dnf install libselinux-python 命令,默认的 RHEL 8 软件仓库不再提供 libselinux-python

要临时解决这个问题,请启用 libselinux-pythonpython27 模块,并使用以下命令安装 libselinux-python 软件包及其相依性软件包:

# dnf module enable libselinux-python
# dnf install libselinux-python

或者,使用它的安装配置集在一个命令中安装 libselinux-python:

# dnf 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 对象表示法(JSON)文件。

要临时解决这个问题,请使用带有 --env container=podman 参数的 podman 命令启动 UBI 8 容器。因此,只有使用上述临时解决方案时,udica 才 可以为 UBI 8 容器生成 SELinux 策略。

(BZ#1763210)

默认日志设置在性能上的负面影响

默认日志环境设置可能会消耗 4 GB 内存甚至更多,当 systemd-journald 使用 rsyslog 运行时,速率限制值的调整会很复杂。

如需更多信息,请参阅 RHEL 默认日志设置对性能的负面影响及环境方案

(JIRA:RHELPLAN-10431)

/etc/selinux/config 中的SELINUX=disabled 无法正常工作

/etc/selinux/config 中使用 SELINUX=disabled 选项禁用 SELinux 会导致内核在启用了 SELinux 的情况下引导,并在稍后的引导过程中切换到禁用模式。这可能导致内存泄漏。

要临时解决这个问题,请在内核命令行中添加 selinux=0 参数来禁用 SELinux,如 使用 SELinux 中的在引导时更改 SELinux 模式部分所述。

(JIRA:RHELPLAN-34199)

crypto-policies 错误地允许 Camellia 密码

RHEL 8 系统范围的加密策略应该在所有策略级别禁用 Camellia 密码,如产品文档中所述。但是 Kerberos 协议默认启用密码。

要临时解决这个问题,请应用 NO-CAMELLIA 子策略:

# update-crypto-policies --set DEFAULT:NO-CAMELLIA

在上一命令中,如果您之前从 DEFAULT 切换,将 DEFAULT 替换为加密级别名称。

因此,只有在您通过临时解决方案禁用系统范围的加密策略的所有应用程序中,Camellia 密码才会被正确禁止。

BZ#1919155

使用带有 IKEv2 的多个标记的 IPsec 连接无法正常工作

当 Libreswan 使用 IKEv2 协议时,IPsec 的安全标签对于多个连接无法正常工作。因此,使用标记的 IPsec 的 Libreswan 只能建立第一个连接,但无法正确建立后续连接。要使用多个连接,请使用 IKEv1 协议。

BZ#1934859

通过 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)

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)

IKE over TCP 连接在自定义 TCP 端口上无法正常工作

tcp-remoteport Libreswan 配置选项无法正常工作。因此,当场景需要指定非默认 TCP 端口时,无法通过 TCP 连接建立 IKE。

(BZ#1989050)

SELinux 审计规则和 SELinux 布尔配置中存在冲突

如果审计规则列表包含一个含有 subj_*obj_* 字段的审计规则,并且 SELinux 布尔值配置发生了变化,那么设置 SELinux 布尔值会导致死锁。因此,系统会停止响应,需要重启才能恢复。要临时解决这个问题,请禁用包含 subj_*obj_* 字段的所有审计规则,或者在修改 SELinux 布尔值前临时禁用这些规则。

随着 RHSA-2021:2168 公告的发布,内核可以正确处理这种情况,不会再死锁。

(BZ#1924230)

systemd 无法从任意路径执行命令

systemd 服务无法从 /home/user/bin 任意路径执行命令,因为 SELinux 策略软件包不包括任何这样的规则。因此,在非系统路径中执行的自定义服务会失败,并最终会在 SELinux 拒绝访问时记录 Access Vector Cache(AVC)拒绝审核信息。要临时解决这个问题,请执行以下操作之一:

  • 使用带有 -c 选项的 shell 脚本执行该命令。例如:

    bash -c command
  • 从常用的命令路径 /bin/sbin/usr/sbin/usr/local/bin/usr/local/sbin 中执行命令。

(BZ#1860443)

某些 SSG 中的规则组可能会失败

由于规则及其依赖项未定义,在基准中修复 SCAP 安全指南 (SSG)规则可能会失败。如果需要以特定顺序执行两个或多个规则,例如,当一条规则安装组件和另一个规则配置同一组件时,它们可按错误的顺序运行,并报告错误。要临时解决这个问题,请执行补救两次,第二次运行会修复依赖规则。

(BZ#1750755)

无法使用 Server with GUIWorkstation 软件选择和 CIS 安全配置集进行安装

CIS安全配置集与Server with GUIWorkstation不兼容。因此,无法使用 Server with GUI 软件选择和 CIS 配置集进行 RHEL 8 安装。使用 CIS 配置集进行尝试安装,且这两种软件选择之一都会生成出错信息:

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.

要临时解决这个问题,请不要在 Server with GUIWorkstation 软件选择中使用 CIS 安全配置集。

(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)

usbguard-notifier 在日志中记录太多错误消息

usbguard-notifier 服务没有进程间通信(IPC)权限,无法连接到 usbguard-daemon IPC 接口。因此,usbguard-notifier 无法连接到该接口,它会将对应的错误消息写入日志。由于 usbguard-notifier--wait 选项开头,这可确保 usbguard-notifier 尝试在每次连接失败后连接 IPC 接口,因此默认情况下,日志很快会包含大量的这些消息。

要临时解决这个问题,允许运行 usbguard-notifier 的用户或组连接到 IPC 接口。例如,以下错误消息包含 GNOME 显示管理器(GDM)的 UID 和 GID 值:

IPC connection denied: uid=42 gid=42 pid=8382, where uid and gid 42 = gdm

要为 gdm 用户授予缺少的权限,请使用 usbguard 命令并重启 usbguard 守护进程:

# usbguard add-user gdm --group --devices listen
# systemctl restart usbguard

授予缺失的权限后,错误消息将不再显示在日志中。

(BZ#2000000)

某些 rsyslog 优先级字符串无法正常工作

对允许精细控制加密的 imtcp 的 GnuTLS 优先级字符串的支持并不完整。因此,以下优先级字符串无法在 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)

10.7. 网络

NetworkManager 不支持以特定顺序激活绑定和团队端口

NetworkManager 按接口名称按字母顺序激活接口。但是,如果在启动过程稍后出现接口,例如,由于内核需要更多时间来发现它,NetworkManager 会稍后激活这个接口。NetworkManager 不支持在绑定和团队端口上设置优先级。因此,NetworkManager 激活这些设备端口的顺序并不总是可以预测。要临时解决这个问题,编写分配程序脚本。

有关此类脚本的示例,请查看 ticket 中的对应注释

(BZ#1920398)

使用 IPv6_rpfilter 选项的系统启用低网络吞吐量

firewalld.conf 文件中启用了 IPv6_rpfilter 选项的系统当前在高流量场景(如 100-Gbps 链接)中性能不佳和低网络吞吐量。要临时解决这个问题,请禁用 IPv6_rpfilter 选项。为此,请在 /etc/firewalld/firewalld.conf 文件中添加以下行:

IPv6_rpfilter=no

因此,系统性能更好,但也降低了安全性。

(BZ#1871860)

10.8. 内核

重新载入相同的崩溃扩展可能会导致分段错误

当您加载已加载的崩溃扩展文件的副本时,可能会触发分段错误。目前,crash 工具会检测是否加载了原始文件。因此,由于崩溃实用程序中同时存在两个相同的文件,发生命名空间冲突,从而触发崩溃实用程序导致分段错误。

您可以通过只载入崩溃扩展文件一次来解决这个问题。因此,在上述场景中不再会出现分段错误。

(BZ#1906482)

在内存热插拔或拔出操作后 vmcore 捕获失败

执行内存 hot-plug 或 hot-unplug 操作后,会更新包含内存布局信息的设备树。因此,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)

debug 内核无法在 RHEL 8 的崩溃捕获环境中引导

由于 debug 内核的内存密集型性质,在使用 debug 内核并触发内核 panic 时出现问题。因此,调试内核无法作为捕获内核引导,而是生成一个堆栈追踪。要临时解决这个问题,根据需要增加崩溃内核内存。因此,debug 内核会在崩溃捕获环境中成功引导。

(BZ#1659609)

在引导时分配崩溃内核内存失败

在特定的 Ampere Altra 系统中,当在 BIOS 设置中禁用 32 位区域时,在启动期间分配崩溃内核内存会失败。因此,k dump 服务无法启动。这是因为区域内存碎片低于 4 GB,且没有足够大的片段来容纳崩溃内核内存。

要临时解决这个问题,在 BIOS 中启用 32 位内存区域,如下所示:

  1. 在您的系统中打开 BIOS 设置。
  2. 打开 Chipset 菜单。
  3. Memory Configuration 下,启用 SSlave 32-bit 选项。

因此,32 位区域中的崩溃内核内存分配可以成功,kdump 服务可以正常工作。

(BZ#1940674)

Kdump 在使用默认崩溃内核内存的一些 KVM 虚拟机上会失败

在有些 KVM 虚拟机上,当为 kdump 使用默认内存捕获内核崩溃转储时 kdump 会失败。因此,崩溃内核显示以下错误:

/bin/sh: error while loading shared libraries: libtinfo.so.6: cannot open shared object file: No such file or directory

要解决这个问题,请至少增加 crashkernel= 选项,使其满足 kdump 的大小要求。例如,最终值必须是当前值和 32M 的总和。

如果是 crashkernel=auto 参数,则为:

  1. 检查当前的内存大小,并将大小增加到 32M,如下所示:

    echo $(($(cat /sys/kernel/kexec_crash_size)/1048576+32))M
  2. 将内核 crashkernel 参数配置为 崩溃kernel=x,其中 x 是增大的大小。

(BZ#2004000)

QAT 管理器不会离开 LKCF 的备用设备

Intel® QuickAssist Technology(QAT)管理器(qatmgr)是一个用户空间进程,默认情况下,它使用系统中的所有 QAT 设备。因此,没有为 Linux 内核加密框架(LKCF)留下的 QAT 设备。不需要解决这种情况,因为此行为是正常的,大多数用户都会使用来自用户空间的加速。

(BZ#1920086)

内核 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 错误:在系统引导 解决方案中,M 区域 mem 0x30000000-0x31ffffff 未保留在 ACPI 命名空间中"。

(BZ#1868526)

tuned-adm profile powerave 命令会导致系统变得无响应

执行 tuned-adm 配置集 powersave 命令会导致 Penguin Valkyrie 2000 2-socket 系统具有较旧 Thunderx(CN88x)处理器的无响应状态。因此,需要重启系统以便恢复工作。要临时解决这个问题,如果您的系统符合上述说明,请避免使用 powersave 配置集。

(BZ#1609288)

使用 irqpoll 会导致 vmcore 生成失败

由于在 Amazon Web Services(AWS)云平台上运行的 64 位 ARM 架构中的 thenvme 驱动程序 存在问题,当您向第一个内核提供 irqpoll 内核命令行参数时,会导致 vmcore 生成失败。因此,在内核崩溃时,不会在 /var/crash/ 目录中转储 vmcore 文件。要临时解决这个问题:

  1. irqpoll 附加到/etc/sysconfig/kdump 文件中的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 文件。

请注意,kdump 服务可能会使用大量崩溃内核内存转储 vmcore 文件。确定捕获内核有足够的内存可用于 kdump 服务。

有关这个已知问题的详情,请参考 irqpoll 内核命令行参数可能会导致 vmcore 生成失败

(BZ#1654962)

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)

将虚拟功能附加到虚拟机时连接会失败

使用传奇 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 仍会为 MPI 单边操作使用 openib BTL。因此,这可能会导致触发器执行错误。要临时解决这个问题:

  • 使用以下参数运行 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 Server Adapter 用户指南

(BZ#1971506)

10.9. 硬件启用

默认的 7 4 1 7 printk 值有时会导致系统暂时无响应

默认的 7 4 1 7 printk 值可以更好地调试内核的活动。但是,当与串口控制台搭配使用时,这个 printk 设置可能会导致大量 I/O,从而导致 RHEL 系统暂时变得不响应。为了解决这个问题,添加了一个新的 optimize-serial-console TuneD 配置集,它把默认的 printk 值减为 4 4 1 7。用户可以按照以下方法追踪其系统:

# tuned-adm profile throughput-performance optimize-serial-console

重启后会保留一个较低的 printk 值,这可以降低系统挂起的可能性。

请注意,这个设置更改的代价是丢失额外的调试信息。

(JIRA:RHELPLAN-28940)

10.10. 文件系统和存储

LVM writecache 的限制

writecache LVM 缓存方法有以下限制,这些限制不会出现在 cache 方法中:

  • 使用 pvmove 命令时您无法命名 writecache 逻辑卷。
  • 您不能将带有 writecache 的逻辑卷与精简池或 VDO 结合使用。

以下限制也适用于 cache 方法:

  • 您不能在将 cachewritecache 附加到逻辑卷时重新定义大小。

(JIRA:RHELPLAN-27987、BZ#1798631、BZ#1808012)

保存一个 LUKS 卷的 LVM mirror 设备有时将变为无响应

在某些情况下,保存 LUKS 卷的片段类型的 mirror LVM 设备可能会变得无响应。无响应设备会拒绝所有 I/O 操作。

要解决这个问题,红帽建议在有弹性软件定义的存储之上使用带 raid1 的片段类型的 LVM RAID 1 设备而不是镜像( mirror )。

raid1 segment 类型是默认的 RAID 配置类型,它作为推荐的解决方案替换 mirror

要将 mirror 设备转换为 raid,请参阅将镜像 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)

在启动过程中初始失败后,GRUB 会重试访问磁盘

有时,存储区域网络(SAN)无法确认 打开读取 磁盘调用。在以前的版本中,用于进入 grub_rescue 提示符的 GRUB 工具会导致引导失败。在这个版本中,GRUB 会在初始调用打开并读取磁盘失败后尝试访问磁盘。如果 GRUB 工具在尝试后仍无法打开或读取磁盘,它将进入 grub_rescue 模式。

(BZ#1987087)

通常会触发 XFS 配额警告

使用配额计时器会导致配额警告的触发太频繁,这导致软配额的强制实施速度要快于应该。要临时解决这个问题,请不要使用软配额,这可以防止触发警告。因此,警告信息量将不再强制实施软配额限制,从而会尊重配置的超时时间。

(BZ#2059262)

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

在启用 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

当有 32 位应用程序调用 getpwnam() 时,可能会失败

当 NIS 用户使用32 位应用程序调用 getpwnam() 函数时,如果没有 nss_nis.i686 软件包,则调用会失败。要临时解决这个问题,使用 yum install nss_nis.i686 手动安装缺少的软件包。

(BZ#1803161)

OpenLDAP 库之间的符号冲突可能会导致 httpd中的崩溃

当 OpenLDAP 提供的 libldap 和 libldap_r 库被加载并在单个进程中使用时,这些库之间可能会出现符号冲突。因此,如果 httpd 配置也加载 mod_security 或 mod_auth_ openidc 模块,使用 PHP ldap 扩展的 Apache httpd 子进程可能会意外终止。

从因为RHEL 8.3 更新到 Apache Portable Runtime(APR)库,您可以通过设置 APR_DEEPBIND 环境变量来临时解决这个问题,该变量在载入 httpd 模块时,允许使用 RTLD_DEEPBIND 动态链接器选项。当 APR_DEEPBIND 环境变量启用时,会不再在加载冲突库的 httpd 配置中崩溃。

(BZ#1819607)

10.12. 编译器和开发工具

通过同一输入流多次使用 CryptBlock 会导致加密不正确

当启用 Go FIPS 模式时,AES CBC CryptBlocks 会错误地重新初始化初始化向量。因此,在输入流中使用 CryptBlocks 多次会错误地加密文件。要临时解决这个问题,请不要在 aes-cbc 接口中重新初始化 4。此操作允许正确加密文件。

(BZ#1972825)

10.13. Identity Management

Windows Server 2008 R2 及更早版本不再被支持

在 RHEL 8.4 及更高版本中,身份管理(IdM)不支持使用运行 Windows Server 2008 R2 或更早版本的 Active Directory 域控制器建立对 Active Directory 的信任。RHEL IdM 现在需要在建立信任关系时进行 SMB 加密,这只适用于 Windows Server 2012 或更高版本。

(BZ#1971061)

cert-fix 程序与 --agent-uid pkidbuser 选项一同使用会破坏证书系统

使用带有 --agent-uid pkidbuser 选项的 cert-fix 工具可破坏证书系统的 LDAP 配置。因此,,证系统可能会变得不稳定,需要手动步骤才能恢复该系统。

(BZ#1729215)

FreeRADIUS 会默默地截断大于 249 个字符的 Tunnel-Password

如果 Tunnel-Password 大于 249 个字符,则 FreeRADIUS 服务会默默地截断它。这可能导致无法预期的,与其它系统不兼容的密码。

要临时解决这个问题,请选择 249 个字符或更少的密码。

(BZ#1723362)

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 服务器之间加密,这会导致 FreeRADIUS 服务器在 FIPS 模式中失败。

要临时解决这个问题,请按照以下步骤执行:

流程

  1. 为 radius d 服务创建环境变量, 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 时需要的操作

在这个版本中,samba 软件包 不再创建 /var/spool/samba/ 目录。如果您使用 Samba 作为打印服务器,并在 [printers] 共享中使用 /var/spool/samba/ 来假脱机打印作业,SELinux 会阻止 Samba 用户在此目录中创建文件。因此,打印作业失败,audit d 服务在 /var/log/audit/audit.log 中记录 拒绝 的消息。要在将系统更新至 RHEL 8.5 后避免这个问题:

  1. /etc/samba/smb.conf 文件中搜索 [printers] 共享。
  2. 如果共享定义包含 path = /var/spool/samba/,请更新设置并将 path 参数设置为 /var/tmp/
  3. 重启 smbd 服务:

    # systemctl restart smbd

如果您在 RHEL 8.5 中新安装了 Samba,则不需要任何操作。RHEL 8.5 上的 samba-common 软件包提供的默认 /etc/samba/smb.conf 文件已使用 /var/tmp/ 目录来 spool 打印作业。

(BZ#2009213)

NSS 中已启用密码 的默认 关键字与其他密码不一起工作

在 Directory Server 中,您可以使用 default 关键字引用网络安全服务(NSS)中启用的默认密码。但是,如果您想要使用命令行或 Web 控制台启用默认密码和其他密码,则 Directory Server 无法解析 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)

10.14. Desktop

无法从软件仓库中禁用 flatpak 程序库

目前,在 GNOME 软件工具中的软件程序库工具中无法禁用或删除 flatpak 程序库。

(BZ#1668760)

在桌面和应用程序间进行拖放操作无法正常工作

由于 gnome-shell-extensions 软件包中的一个 bug,drag-and-drop 功能目前在桌面和应用程序间无法正常工作。以后的发行版本中将重新添加对这个功能的支持。

(BZ#1717947)

第二代 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)

Flatpak的当前限制

您可以使用 Flatpak 软件包管理器安装特定的应用程序。但是 Flatpak 目前缺少特定的功能或功能。值得注意的是:

  • Flatpak 缺少 CVE 和更改日志功能奇偶校验。目前,对 Flatpak 应用使用 GNOME 软件应用程序不会提供有关相应软件包或任何 CVE 的信息。
  • 在添加 Red Hat Flatpak 远程存储库 时,GPG 密钥检查会被默认禁用。
  • Flatpak 应用没有唯一的图标。在 Gnome Software 中,应用程序会显示 rpmFlatpak 版本。作为临时解决方案,您可以点击对应图标上的 Show Details 来查找应用程序源。
  • Flatpak 应用程序无法处理 Kerberos 票据。
  • Flatpak 应用程序打印当前不可用。
  • Red Hat Flatpak 远程 不会被自动添加。要启用它们,请按照产品文档中的说明操作:启用 Red Hat Flatpak remote

(JIRA:RHELPLAN-100230)

10.15. 图形基础结构

多个 HDR 显示在单个 MST 拓扑上可能无法打开

在使用带有 nouveau 驱动程序的 NVIDIA Turing GPU 的系统上,使用带多个监视器的 DisplayPort hub(如便携式计算机 dock)支持 HDR 插入其中可能会导致打开失败。这是因为系统错误地认为 hub 中没有足够的带宽来支持所有显示器。

(BZ#1812577)

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)

ESXi 中的 GUI 可能会因为视频内存较低而崩溃

VMware ESXi 7.0.1 带有 vCenter Server 7.0.1 的 RHEL 虚拟机上的图形用户界面(GUI)需要一定的视频内存。如果您将多个控制台或高分辨率监控器连接到虚拟机,则 GUI 至少需要 16 MB 视频内存。如果您使用较少的视频内存启动 GUI,则 GUI 可能会意外终止。

要临时解决这个问题,请配置虚拟机监控程序为虚拟机分配至少 16MB 视频内存。因此,虚拟机上的 GUI 不会崩溃。

(BZ#1910358)

VNC Viewer 显示在 IBM Z 中带有 16 位颜色深度的错误颜色

当您连接到带有 16 位色彩深度的 IBM Z 服务器上的 VNC 会话时,VNC Viewer 应用程序会显示错误的颜色。

要临时解决这个问题,请在 VNC 服务器中设置 24 位颜色深度。使用 Xvnc 服务器将 -depth 16 选项替换为 -depth 24 (在 Xvnc 配置中)。

因此,VNC 客户端会显示正确的颜色,但在服务器中使用更多的网络带宽。

(BZ#1886147)

带有 VGA 显示的 Matrox GPU 未显示任何输出

如果使用以下系统配置,则显示可能不会显示图形输出:

  • Matrox MGA G200 系列中的 GPU
  • 通过 VGA 控制器连接的显示
  • UEFI 切换到旧模式

因此,您无法在此配置中使用或安装 RHEL。

要临时解决这个问题,请使用以下步骤:

  1. 将系统启动到启动加载器菜单。
  2. 在内核命令行中添加 nomodeset 选项。

因此,RHEL 会引导并显示图形输出,但最大分辨率有限。

(BZ#1953926)

无法使用 sudo 命令运行图形应用程序

当试图以具有更高权限的用户运行图形应用程序时,应用程序无法打开并带有一个出错信息。发生故障的原因是 XwaylandXauthority 文件限制,为使用常规用户凭证进行验证。

要临时解决这个问题,使用 sudo -E 命令以 root 用户运行图形程序。

(BZ#1673073)

ARM 不支持硬件加速

内置图形驱动程序不支持 64 位 ARM 架构中的硬件加速或 Vulkan API。

要启用硬件加速或者 ARM 上的 Vulkan,安装专有 Nvidia 驱动程序。

(JIRA:RHELPLAN-57914)

10.16. 虚拟化

在PowerVM上热插拔 IBMVFC 设备会失败

当在 PowerVM hypervisor上使用装有 RHEL 8 操作系统的虚拟机(VM)时,尝试从正在运行的虚拟机中删除 IBM Power Virtual Fibre Channel(IBMVFC)设备当前会失败。相反,它会显示一个 outstanding translation 错误。

要临时解决这个问题,在虚拟机关闭时删除 IBMVFC 设备。

(BZ#1959020)

当使用ibmvfc 驱动程序时,IBM POWER 主机可能会崩溃

当在 PowerVM 逻辑分区(LPAR)中运行 RHEL 8 作为 KVM 虚拟化主机时,目前可能会因为 a 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)

使用 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

带有启用 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 虚拟网络中删除 forward 接口会重置此网络的所有连接计数

目前,从具有多个转发接口的 macvtap 虚拟网络中删除正向接口也会重置网络其他转发接口的连接状态。因此,实时网络 XML 中的连接信息不正确。但请注意,这不会影响虚拟网络的功能。要临时解决这个问题,在您的主机上重新启动 libvirtd 服务。

(BZ#1332758)

具有 SLOF 的虚拟机无法在 netcat 接口中启动

当使用 netcat(nc)接口访问当前在 Slimline Open Firmware(SLOF)提示符处等待的虚拟机(VM)的控制台时,用户输入将被忽略,虚拟机仍保持无响应。要临时解决这个问题,请在连接到虚拟机时使用 the nc -C 选项,或者改为使用 telnet 接口。

(BZ#1974622)

在某些情况下,在 RHEL 8 虚拟机上挂载 virtiofs 目录会失败

目前,当使用 virtiofs 功能为虚拟机(VM)提供主机目录时,如果虚拟机使用的是 RHEL 8.4 内核,但 用的是RHEL 8.5 selinux-policy 软件包,那么在虚拟机上挂载目录会失败,并显示"Operation not supported"错误。

要临时解决这个问题,请重新引导 guest 并将其引导至虚拟客户机上最新可用内核。

(BZ#1995558)

当使用很多 virtio-blk 磁盘时,虚拟机有时无法启动

在虚拟机(VM)中添加大量 virtio-blk 设备可能会耗尽平台中可用的中断向量。如果出现这种情况,VM 的客户机操作系统无法引导,并显示 dracut-initqueue[392]:警告:无法引导 错误。

(BZ#1719687)

当在 AMD EPYC 上使用主机透传模式时,虚拟机不会检测到 SMT CPU 拓扑

当在 AMD EPYC 主机上使用 CPU 主机 passthrough 模式引导虚拟机(VM) 时,TOPOEXT CPU 功能标志不存在。因此,虚拟机无法检测到每个内核有多个线程的虚拟 CPU 拓扑。要临时解决这个问题,使用 EPYC CPU 模型而不是主机透传引导虚拟机。

(BZ#1740002)

10.17. 云环境中的 RHEL

在 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)

10.18. 支持性

redhat-support-tool 无法用于 FUTURE 加密策略

因为客户门户网站 API 中的证书使用的加密密钥不满足 FUTURE 系统范围的加密策略的要求,所以 redhat-support-tool 程序目前无法使用这个策略级别。

要临时解决这个问题,在连接到客户门户网站 API 时使用 DEFAULT 加密策略。

(BZ#1802026)

10.19. 容器

带有 fuse-overlayfs 的 rootless 容器无法识别已删除的文件

在 RHEL 8.4 和更早版本中,使用 fuse-overlayfs 文件系统创建或存储了无根镜像和容器。在 RHEL 8.5 及更高版本中使用这些镜像和容器可能会对使用内核提供的 overlayfs 实施以及已从容器或 RHEL 8.4 中的镜像中删除文件或目录的未授权用户造成问题。此问题不适用于由 root 帐户创建的容器。

例如,要从容器或镜像中删除的文件或目录在使用 fuse-overlayfs 文件系统时,会使用 whiteout 格式进行标记。但是,由于格式的不同,内核覆盖fs 实施无法识别 fuse-overlayfs 创建的 whiteout 格式。因此,所有删除的文件或目录仍会显示。此问题不适用于由 root 帐户创建的容器。

要临时解决这个问题,请使用以下选项之一:

  1. 使用 podman unshare rm -rf $HOME/.local/share/containers/* 命令删除所有非 特权用户的容器和镜像。用户接下来运行 Podman 时,会重新创建 $HOME/.local/share/containers 目录,他们将需要重新创建其容器。
  2. 继续以无根用户身份运行 podman 命令。第一次在系统上调用更新的 podman 版本时,它会扫描 $HOME/.local/share/containers 目录中的所有文件,并检测是否使用 fuse-overlayfs。Podman 记录扫描的结果,以便日后不会重新运行扫描。因此,删除的文件不会出现。

检测 fuse-overlayfs 是否仍需要 fuse-overlayfs 所需的时间取决于容器中的文件和目录数量以及需要扫描的镜像的数量。

(JIRA:RHELPLAN-92741)

在旧容器镜像中运行 systemd 无法正常工作

在旧的容器镜像中运行 systemd(如 centos:7 )无法正常工作:

$ 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 会退出并显示错误消息:错误:源镜像被拒绝:不接受任何签名。镜像无法拉取,因为当前构建被配置为默认不信任 RHEL Beta GPG 密钥。

作为临时解决方案,请确保红帽 Beta GPG 密钥存储在本地系统中,并使用 podman image trust set 命令为适当的 beta 命名空间更新现有的信任范围。

如果您没有本地存储 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

使用 ubi9-beta 或 rhel9-beta 替换 namespace

(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 计算行业标准的支持。
  • 国际化发布在多个软件包中,这样就可以进行较小的内存占用安装。如需更多信息,请参阅 使用 langpacks
  • 很多 glibc 区域已经与 Unicode Common Locale Data Repository(CLDR)同步。

附录 A. 按组件划分的问题单列表

Bugzilla 和 JIRA ID 列在本文档中以便参考。可公开访问的 Bugzilla 程序错误包括到 ticket 的链接。

组件票证

389-ds-base

BZ#1898541,BZ#1951020,BZ#1938239,BZ#1947044, BZ#1626633, BZ#1812286,BZ#1850664, BZ#1944494, BZ#1895460,BZ#1817505

NetworkManager

BZ#1912236, BZ#1899372, BZ#1942331, BZ#1934465, BZ#1548825, BZ#1920398

SLOF

BZ#1910848

accel-config

BZ#1843266

accountsservice

BZ#1812788

anaconda

BZ#1914955,BZ#1931069, BZ#1903786, BZ#1954408, BZ#1821192, BZ#1822880,BZ#1929105,BZ#1897657

ansible-collection-redhat-rhel_mgmt

BZ#1843859

apr

BZ#1819607

bpftrace

BZ#1944716

brltty

BZ#2008197

chrony

BZ#1939295, BZ#1895003

cloud-init

BZ#1957532, BZ#1750862

cmake

BZ#1957947

cockpit

BZ#1666722

container-tools-rhel8-module

BZ#2009153

containers-common

BZ#2020301, BZ#2019901

coreutils

BZ#2030661

corosync-qdevice

BZ#1784200

crash

BZ#1906482

createrepo_c

BZ#1973588

crypto-policies

BZ#1960266, BZ#1876846, BZ#1933016, BZ#1919155, BZ#1660839

distribution

BZ#1953991, BZ#1657927

dotnet6.0

BZ#2022794

dracut

BZ#1929201

dwz

BZ#1948709

dyninst

BZ#1933893, BZ#1957942

edk2

BZ#1741615, BZ#1935497

elfutils

BZ#1933890, BZ#1957225

fence-agents

BZ#1775847

firewalld

BZ#1872702, BZ#1492722, BZ#1871860

freeradius

BZ#1954521,BZ#1977572,BZ#1723362,BZ#1958979

gcc-toolset-11-gdb

BZ#1954332

gcc-toolset-11

BZ#1953094

gcc

BZ#1974402, BZ#1946758, BZ#1946782, BZ#1927516, BZ#1979715

gdb

BZ#1854784, BZ#1853140

glibc

BZ#1934155, BZ#1912670, BZ#1930302

gnome-shell-extensions

BZ#1717947

gnome-shell

BZ#1935261, BZ#1651378

gnome-software

BZ#1668760

gnutls

BZ#1965445, BZ#1956783, BZ#1628553

go-toolset

BZ#1938071

golang

BZ#1979100, BZ#1972825

grafana-container

BZ#1971557

grafana-pcp

BZ#1921190

grafana

BZ#1921191

grub2

BZ#1583445

hwloc

BZ#1917560

ipa

BZ#1924707, BZ#1664719, BZ#1664718

ipmitool

BZ#1951480

kernel

BZ#1944639, BZ#1907271, BZ#1902543, BZ#1959772, BZ#1954363, BZ#1924230, BZ#1954024, BZ#1837389, BZ#1570255, BZ#1938339, BZ#1865745, BZ#1836058, BZ#1906870, BZ#1934033, BZ#1924016, BZ#1942888, BZ#1868526, BZ#1812577, BZ#1694705, BZ#1910358, BZ#1953926, BZ#1730502, BZ#1930576, BZ#1609288, BZ#1793389, BZ#1654962, BZ#1666538, BZ#1602962, BZ#1940674, BZ#1920086, BZ#1971506, BZ#1605216, BZ#1519039, BZ#1627455, BZ#1501618, BZ#1633143, BZ#1814836, BZ#1696451, BZ#1348508, BZ#1839311, BZ#1783396, JIRA:RHELPLAN-57712, BZ#1837187, BZ#19044, BZ#1660337, BZ#1905243, BZ#1878207, BZ#1665295, BZ#1871863, BZ#1569610, BZ#1794513

kexec-tools

BZ#1922951, BZ#1879558, BZ#1854037, BZ#1931266, BZ#2004000

krb5

BZ#1956388, BZ#1877991

libcomps

BZ#1960616

libgcrypt

BZ#1976137

libgnome-keyring

BZ#1607766

libguestfs

BZ#1554735

libmodulemd

BZ#1894573, BZ#1984402

librepo

BZ#1814383

libreswan

BZ#1958968, BZ#1934058, BZ#1934859, BZ#1989050

libselinux-python-2.8-module

BZ#1666328

libservicelog

BZ#1844430

libvirt

BZ#1664592, BZ#1332758, BZ#1528684

linuxptp

BZ#1895005

llvm-toolset

BZ#1927937

lsvpd

BZ#1844428

lvm2

BZ#1899214, BZ#1496229, BZ#1768536

mariadb-connector-odbc

BZ#1944692

MariaDB

BZ#1944653, BZ#1942330

mesa

BZ#1886147

modulemd-tools

BZ#1924850

mutt

BZ#1912614

net-snmp

BZ#1919714

nfs-utils

BZ#1868087, BZ#1592011

nginx

BZ#1945671

nispor

BZ#1848817

nodejs-16-container

BZ#2001020

nss_nis

BZ#1803161

nss

BZ#1817533, BZ#1645153

opal-prd

BZ#1921665

opencryptoki

BZ#1919223

opencv

BZ#1886310

openmpi

BZ#1866402

opensc

BZ#1947025

openscap

BZ#1959570,BZ#1953092,BZ#1966612

openslp

BZ#1965649

openssl

BZ#1810911

osbuild-composer

BZ##184238,BZ#1937854,BZ#1915351,BZ#1951964

oscap-anaconda-addon

BZ#1691305, BZ#1674001, BZ#1843932, BZ#1665082

pacemaker

BZ#1948620, BZ#1443666

papi

BZ#1908126

pcp-container

BZ#1974912

pcp

BZ#1922040, BZ#1879350, BZ#1629455

pcs

BZ#1839637, BZ#1872378,BZ#1909901,BZ#1885293,BZ#1290830, BZ#1619620, BZ#1847102, BZ#1851335

pg_repack

BZ#1967193

php

BZ#1944110

pki-core

BZ#1729215

podman

JIRA:RHELPLAN-77542, JIRA:RHELPLAN-77241, BZ#1934480, JIRA:RHELPLAN-77238, JIRA:RHELPLAN-77489, JIRA:RHELPLAN-92741

postfix

BZ#1711885

powertop

BZ#1834722

ppc64-diag

BZ#1779206

pykickstart

BZ#1637872

qatlib

BZ#1920237

qemu-kvm

BZ#1740002, BZ#1719687, BZ#1651994

quota

BZ#1945408

rear

BZ#1983013,BZ#1930662,BZ#1958247,BZ#493,BZ#1958222,BZ#1983003,BZ#1747468, BZ#1868421

redhat-release

BZ#1935177

redhat-support-tool

BZ#1802026

restore

BZ#1997366

rhel-system-roles

BZ#19375, BZ#1866544, BZ#1961858, BZ#1958963, BZ#1938014, BZ#1954747, BZ#18 54187, BZ#1757869, BZ# 93947, BZ#1854187, BZ#1757869, BZ# 1938014, BZ#19547, BZ#1854187, BZ#1757869, BZ# 1938014, BZ#19547, BZ#1854187, BZ#1757869, BZ#1938014, BZ#19547, BZ#1854187, BZ#1757869, BZ#1938014, BZ#1854187, BZ#1757869 47, BZ#19547, BZ#1952090,BZ#19580,BZ#1967335,BZ#1966711,BZ#1962976,BZ#1938016,BZ#1986463,BZ#1970664, BZ#1970642,BZ#1848683,BZ#1938020,BZ#1938023,BZ#1957849,BZ#1959649,BZ#1939711,BZ#1943679,BZ#1882475, BZ#1876315,BZ#1894642,BZ# RUNASANY199,BZ#1893743

rpm

BZ#1938928, BZ#1688849

rsyslog

BZ#1891458, BZ#1932795, BZ#1679512, JIRA:RHELPLAN-10431

RT-tests

BZ#1954387

Ruby

BZ#1938942

rust-toolset

BZ#1945805

samba

BZ#1944657, BZ#2009213, JIRA:RHELPLAN-13195

scap-security-guide

BZ#1857179,BZ#1946252, BZ#1955373, BZ#1966577,BZ#1970137,BZ#新版本6,BZ# RUNASANY197,BZ#1876483,BZ#1955183,BZ#1843913,BZ#1858866,BZ#1750755

selinux-policy

BZ#1994096, BZ#1860443, BZ#1931848, BZ#1947841, BZ#1461914

socat

BZ#1947338

scs

BZ#1928679

spice

BZ#1849563

squid

BZ#1964384

sssd

BZ#1737489, BZ#1879869, BZ#1949149, BZ#1627112, BZ#1947671

systemtap

BZ#1933889, BZ#1957944

tboot

BZ#1947839

Tesseract

BZ#1826085

tss2

BZ#1822073

tuned

BZ#1951992

udftools

BZ#1882531

udica

BZ#1763210

usbguard

BZ#2000000

valgrind

BZ#1933891, BZ#1957226

vdo

BZ#1949163

wayland

BZ#1673073

xfsprogs

BZ#1949743

xorg-x11-server

BZ#1698565

其他

BZ#2005277,BZ#1839151, JIRA:RHELPLAN-89566, JIRA:RHELPLAN-92473, JIRA:RHELPLAN-96640, JIRA:RHELPLAN-97145, BZ#1935686, BZ#1986007, JIRA:RHELPLAN-75166, JIRA:RHELPLAN-76515, JIRA:RHELPLAN-57941, JIRA:RHELPLAN-57941, JIRA:RHELPLAN-85064, JIRA: JIRA:RHELPLAN-87877, JIRA:RHELPLAN-75164, BZ#2011448, JIRA:RHELPLAN-99040, JIRA:RHELPLAN-99049, JIRA:RHELPLAN-99043, JIRA:RHELPLAN-99044, JIRA:RHELPLAN-99148, JIRA:RHELPLAN-61867, JIRA:RHELPLAN-61867, BZ#2013853,BZ#1957316, JIRA:RHELPLAN-99148, JIRA:RHELPLAN-61867, JIRA:RHELPLAN-87877, JIRA: JIRA:RHELPLAN-79074, BZ#2019318, JIRA:RHELPLAN-59528, JIRA:RHELPLAN-95056, BZ#1971061, BZ#1959020, BZ#1897383, BZ#1961722, BZ#1777138, BZ#1640697, BZ#1659609, BZ#1687 900, BZ#1697896, BZ#1757877, BZ#1741436, JIRA:RHELPLAN-59111, JIRA:RHELPLAN-27987, JIRA:RHELPLAN-28940, JIRA:RHELPLAN-34199, JIRA:RHELPLAN-57914, JIRA:RHELPLAN-96940, BZ#1987087, BZ#1974622, BZ#1995558, BZ#192028361, BZ#2028361, BZ#1690207, JIRA:RHELPLAN-1212, BZ#1559616, BZ#1889737, BZ#1812552 , JIRA:RHELPLAN-14047, BZ#1769727, JIRA:RHELPLAN-27394, JIRA:RHELPLAN-27737, BZ#1906489, JIRA:RHELPLAN-58596, JIRA:RHELPLAN-58596, BZ#1642765, JIRA:RHELPLAN-10304, BZ#1646541, BZ#1647725, BZ#1932222,BZ#1686057,BZ#1748980,BZ#1958250, JIRA:RHELPLAN-71200, BZ#1827628, JIRA:RHELPLAN-45858, BZ#1871025, BZ#1871025, BZ#1871953, BZ#1874892, BZ#1893767, BZ#1916296, JIRA:RHELPLAN-100400, BZ#1926114, BZ#1904251, BZ#2011208, JIRA:RHELPLAN-59825, BZ#1920624, JIRA:RHELPLAN-70700, BZ#1929173, BZ#2006665, JIRA:RHELPLAN-98983, BZ#2013335, BZ#2019786, BZ#2009113, BZ#2038929

附录 B. 修改历史记录

0.1-9

Thu Jun 09, Lucie Vařáková (lmanasko@redhat.com)

  • 添加了已知问题 BZ#2059262 (文件系统和存储)。
  • 添加了程序错误修复 BZ#1940468 (Shell 和命令行工具)。
0.1-8

Fri Apr 29, Lenka InventoryServicepaCurveková(lspackova@redhat.com)

0.1-7

Wed Apr 27, 2022, Gabriela Fialová (gfialova@redhat.com)

0.1-6

Fri Apr 1, 2022, Gabriela Fialová (gfialova@redhat.com)

0.1-5

Tue Mar 22, 2022, Lucie Maňásková (lmanasko@redhat.com)

0.1-5

Mon Mar 21, 2022, Jaroslav Klech (jklech@redhat.com)

  • 从已知问题(Kernel)中删除了 BZ#1666538。
0.1-4

Thu Mar 17, 2022, Jaroslav Klech (jklech@redhat.com)

  • 从已知问题(Kernel)中删除了 BZ#1947839。
0.1-3

Tue Feb 15, 2022, Lucie Maňásková (lmanasko@redhat.com)

0.1-2

2022 年 2 月 4 日,Jaroslav Klech(jklech@redhat.com)

  • 更新了已弃用的软件包列表。
  • 添加了已弃用的功能 BZ#1871863 (内核)。
  • 添加了已弃用的功能 BZ#2038929 (Shell 和命令行工具)。
0.1-1

2022 年 2 月 03 日星期四,Gabriela Fialová(gfialova@redhat.com)

  • 添加了已弃用的功能 BZ#2009113 (网络)。
  • 添加了已弃用的功能 BZ#1794513 (文件系统和存储)。
0.1-0

2022 年 2 月 01 日,Lucie Ma\"ásková(lmanasko@redhat.com)

  • 添加了已弃用的功能 BZ#1997366 (Shell 和命令行工具)。
  • BZ#1664592 从已知问题改为弃用的功能(虚拟化)。
0.0-9

2022 年 1 月 27 日星期四,Lucie Ma\"ásková(lmanasko@redhat.com)

  • BZ#2030661 添加到已知问题(Shell 和命令行工具)。
  • 更新了已弃用的设备列表。
0.0-8

2022 年 1 月 17 日,Lucie Ma\"ásková(lmanasko@redhat.com)

  • 向新功能(容器)中添加 BZ#2009153
  • 向已知问题添加了 BZ#2028361 (安装和镜像创建)。
  • 更新了已弃用的设备列表。
0.0-7

Tue Dec 21 2021, Lenka ¼paová(lspackova@redhat.com)

  • 向技术预览 BZ#1605216 和已弃用的功能 BZ #1878207 (Kernel)添加了有关 Soft-RoCE 驱动程序 rdma_rxe 的信息。
  • ubi8/nodejs-16ubi8/nodejs-16-minimal 容器镜像 技术预览移到完全支持的功能(容器)。
0.0-6

Thu 12c 16 2021, Lenka ¼paová(lspackova@redhat.com)

  • nodejs:16 模块流 BZ#1953991 从技术预览移到完全支持的功能(Dynamic 编程语言、Web 和数据库服务器)。
0.0-5

Fri Dec 10 2021, Lucie Maňásková (lmanasko@redhat.com)

  • 添加了已弃用的功能 BZ#1827628 (文件系统和存储)。
  • 向已知问题(Kernel)添加了 BZ#1654962
  • 其他次要更新.
0.0-4

mon Nov 22 2021, Lucie Ma\ásková(lmanasko@redhat.com)

  • 更新了新功能 BZ#1922951( Kernel)。
  • 添加了新的功能 BZ#1934480 (容器)。
  • 其他次要更新.
0.0-3

Fri Nov 19 2021, Lucie Maňásková (lmanasko@redhat.com)

  • 为程序错误修复(Kernel)添加了 BZ#1959772 和 BZ#1954363
  • 向程序错误修复(身份管理)中添加了 BZ#1977572
  • 向新功能(Compilers 和开发工具)中添加了 BZ#2022794
  • 添加有关更改外部内核参数的信息。
0.0-2

2021 年 11 月 17 日,Prerana Sharma()

  • 在附录 A 中添加了 BZ#1944716 (bpftrace)。
0.0-1

Wd Nov 10 2021, Lucie Ma\ásková(lmanasko@redhat.com)

  • 发行 Red Hat Enterprise Linux 8.5 发行注记。
0.0-0

Wd 10ct 06 2021, Lucie Ma\ásková(lmanasko@redhat.com)

  • 发布 Red Hat Enterprise Linux 8.5 Beta 发行注记。