Red Hat Training

A Red Hat training course is available for RHEL 8

8.0发行说明 (机器翻译版本)

Red Hat Enterprise Linux 8.0

Red Hat Enterprise Linux 8.0的发行说明 (机器翻译版本)

Red Hat Customer Content Services

摘要

发行说明提供了对Red Hat Enterprise Linux 8.0中已实现的改进和补充的高级别报道,并记录了此版本中的已知问题,以及显着的错误修复,技术预览,已弃用的功能,已删除的功能和其他详细信息。

提供有关Red Hat文档的反馈 (机器翻译版本)

感谢您对我们的文档的意见。请告诉我们如何才能让它变得更好。为此:

  • 有关特定段落的简单注释,请确保以多页HTML格式查看文档。突出显示要评论的文本部分。然后,单击 添加反馈 出现在突出显示的文本下方的弹出窗口,并按照显示的说明操作。
  • 要提交更复杂的反馈,请创建Bugzilla票证:

    1. 去吧 Bugzilla 网站。
    2. 作为组件,使用 文档
    3. 填写 描述 你提出改进的建议。包括指向相关文档部分的链接。
    4. 点击 提交错误

第 1 章 概观 (机器翻译版本)

Red Hat Enterprise Linux 8.0基于Fedora 28和上游内核4.18,为用户提供了跨混合云部署的稳定,安全,一致的基础,以及支持传统和新兴工作负载所需的工具。该版本的亮点包括:

分配

  • 内容可通过 BaseOS 和应用流(AppStream)存储库。
  • AppStream repository支持传统RPM格式的新扩展 - 模块。这允许组件的多个主要版本可用于安装。

看到 第 3 章 在RHEL 8中分发内容 (机器翻译版本) 欲获得更多信息。

软件管理

  • YUM 包管理器现在基于 DNF 技术,它为模块化内容提供支持,提高性能,并提供精心设计的稳定API,以便与工具集成。

看到 第 4.4 节 “软件管理 (机器翻译版本)” 更多细节。

Web服务器,数据库,动态语言

  • 蟒蛇 3.6是RHEL 8中的默认Python实现;提供了对Python 2.7的有限支持。默认情况下不安装任何版本的Python。
  • RHEL 8提供以下内容 数据库服务器:MariaDB 10.3,MySQL 8.0,PostgreSQL 10,PostgreSQL 9.6和Redis 4.0。

看到 第 4.7 节 “动态编程语言,Web和数据库服务器 (机器翻译版本)” 欲获得更多信息。

桌面

  • GNOME Shell 已经重新定位到版本3.28。
  • GNOME会话和GNOME Display Manager使用 韦兰 作为其默认显示服务器。该 X.Org 服务器,也是RHEL 7中的默认显示服务器,也可用。

看到 第 4.8 节 “桌面 (机器翻译版本)” 欲获得更多信息。

安装程序和映像创建

  • 蟒蛇 安装人员可以利用 LUKS2 磁盘加密,并安装系统 NVDIMM 设备。
  • 新的 作曲家 工具使用户能够以各种格式创建自定义系统映像,包括为在各种提供商的云上部署而准备的映像。作曲家可以作为一个 技术预览
  • 使用硬件管理控制台从DVD安装(HMC)和支持元素(SE) 上 IBM Z.

看到 第 4.2 节 “安装程序和映像创建 (机器翻译版本)” 了解更多详情。

文件系统和存储

  • STRATIS 本地存储管理器已经介绍。通过Stratis,您可以使用统一界面轻松执行复杂的存储任务并管理存储堆栈。
  • LUKS版本2(LUKS2)format替换传统的LUKS(LUKS1)格式。该 dm-crypt 子系统和 cryptsetup 工具现在使用LUKS2作为加密卷的默认格式。

看到 第 4.11 节 “文件系统和存储 (机器翻译版本)” 欲获得更多信息。

安全

  • 全系统 加密政策, 默认情况下应用配置核心加密子系统,包括TLS,IPSec,SSH,DNSSec和Kerberos协议。随着新的 update-crypto-policies 命令,管理员可以轻松切换模式:默认,遗留,未来和fips。
  • 支持 智能卡 和硬件安全模块(HSMPKCS#11 现在整个系统都是一致的。

看到 第 4.14 节 “安全 (机器翻译版本)” 欲获得更多信息。

联网

  • nftables 框架取代 iptables 在默认网络数据包过滤工具的作用。
  • firewalld 守护进程现在使用 nftables 作为其默认后端。
  • 支持 IPVLAN 虚拟网络驱动程序,支持多个容器的网络连接。

看到 第 4.13 节 “联网 (机器翻译版本)” 了解更多细节。

虚拟化

  • 更现代的基于PCI Express的机器类型(Q35)现在支持并在RHEL 8中创建的虚拟机中自动配置。这为虚拟设备的功能和兼容性提供了各种改进。
  • 现在可以使用RHEL 8 Web控制台创建和管理虚拟机,也称为 座舱
  • QEMU 模拟器介绍了 沙盒 功能,它为QEMU可以执行的系统调用提供可配置的限制,从而使虚拟机更安全。

看到 第 4.15 节 “虚拟化 (机器翻译版本)” 欲获得更多信息。

编译器和开发工具

  • GCC 基于版本8.2的编译器支持更新的C ++语言标准版本,更好的优化,新的代码强化技术,改进的警告和新的硬件功能。
  • 用于代码生成,操作和调试的各种工具现在可以通过实验来处理 DWARF5 调试信息格式。
  • 内核支持 eBPF 某些工具可以使用跟踪,例如 BCC, ,PCP, ,和 SystemTap
  • glibc 基于2.28版的库增加了对Unicode 11的支持,更新的Linux系统调用,DNS存根解析器的关键改进,额外的安全加固以及改进的性能。

看到 第 4.10 节 “编译器和开发工具 (机器翻译版本)” 了解更多细节。

高可用性和集群

  • 起搏器 群集资源管理器已升级到上游版本2.0.0,它提供了许多错误修复和增强功能。
  • 在RHEL 8中, 配置系统完全支持Corosync 3, knet, 和节点名称。

看到 第 4.12 节 “高可用性和集群 (机器翻译版本)” 欲获得更多信息。

其他资源

第 2 章 架构 (机器翻译版本)

Red Hat Enterprise Linux 8.0随内核版本4.18一起发布,它为以下架构提供支持:

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

第 3 章 在RHEL 8中分发内容 (机器翻译版本)

3.1. 安装 (机器翻译版本)

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

  • 二进制DVD ISO:包含BaseOS和AppStream存储库的完整安装映像,允许您在没有其他存储库的情况下完成安装。
  • 启动ISO:用于引导至安装程序的最小引导ISO映像。此选项需要访问BaseOS和AppStream存储库才能安装软件包。存储库是Binary DVD ISO映像的一部分。

Performing a standard RHEL installation 有关下载ISO映像,创建安装介质和完成RHEL安装的说明的文档。有关自动Kickstart安装和其他高级主题,请参阅 Performing an advanced RHEL installation 文献。

3.2. 库 (机器翻译版本)

Red Hat Enterprise Linux 8通过两个存储库分发:

  • BaseOS
  • AppStream

这两个存储库都是基本RHEL安装所必需的,并且可用于所有RHEL订阅。

BaseOS存储库中的内容旨在提供底层操作系统功能的核心集,为所有安装提供基础。此内容以RPM格式提供,并受类似于以前版本的RHEL中的支持条款的约束。有关通过BaseOS分发的软件包列表,请参阅 Package manifest

Application Stream存储库中的内容包括其他用户空间应用程序,运行时语言和数据库,以支持各种工作负载和用例。AppStream中的内容有两种格式 - 熟悉的RPM格式和RPM格式的扩展名 模块。有关AppStream中可用的程序包列表,请参阅 Package manifest

此外,CodeReady Linux Builder存储库可用于所有RHEL订阅。它提供了供开发人员使用的附加软件包。生产使用不支持CodeReady Linux Builder存储库中包含的软件包。

有关RHEL 8存储库的更多信息,请参阅 Package manifest

3.3. 应用程序流 (机器翻译版本)

Red Hat Enterprise Linux 8.0引入了Application Streams的概念。现在,多个版本的用户空间组件比核心操作系统软件包更频繁地交付和更新。这为定制Red Hat Enterprise Linux提供了更大的灵活性,而不会影响平台或特定部署的底层稳定性。

作为Application Streams提供的组件可以打包为模块或RPM包,并通过RHEL 8中的AppStream存储库提供。每个Application Stream组件都有一个给定的生命周期。有关详情,请参阅 Red Hat Enterprise Linux Life Cycle

模块是表示逻辑单元的包的集合:应用程序,语言堆栈,数据库或一组工具。这些包是一起构建,测试和发布的。

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

详细的模块命令在中描述 Using Application Stream 文献。有关AppStream中可用模块的列表,请参阅 Package manifest

第 4 章 新功能 (机器翻译版本)

本部分介绍了Red Hat Enterprise Linux 8中引入的新功能和主要增强功能。

4.1. Web控制台 (机器翻译版本)

注意

Web控制台的“订阅”页面现在由新提供 subscription-manager-cockpit 包。

防火墙界面已添加到Web控制台

联网 RHEL 8 Web控制台中的页面现在包含一个 火墙 部分。在本节中,用户可以启用或禁用防火墙,以及添加,删除和修改防火墙规则。

(BZ#1647110)

Web控制台现在默认可用

RHEL 8 Web控制台的软件包(也称为Cockpit)现在是Red Hat Enterprise Linux默认存储库的一部分,因此可以立即安装在已注册的RHEL 8系统上。

此外,在RHEL 8的非最小安装中,将自动安装Web控制台,并且控制台所需的防火墙端口将自动打开。登录前还添加了一条系统消息,提供有关如何启用或访问Web控制台的信息。

(JIRA:RHELPLAN-10355)

Web控制台的更好的IdM集成

如果您的系统已注册到Identity Management(IdM)域,则RHEL 8 Web控制台现在默认使用域的集中管理的IdM资源。这包括以下好处:

  • IdM域的管理员可以使用Web控制台来管理本地计算机。
  • 控制台的Web服务器自动切换到由IdM证书颁发机构(CA)颁发并由浏览器接受的证书。
  • 在IdM域中具有Kerberos票证的用户无需提供登录凭据即可访问Web控制台。
  • 无需手动添加SSH连接即可访问Web控制台可访问IdM域已知的SSH主机。

请注意,要使IdM与Web控制台集成以正常工作,用户首先需要运行 ipa-advise 实用与 enable-admins-sudo IdM主系统中的选项。

(JIRA:RHELPLAN-3010)

Web控制台现在与移动浏览器兼容

通过此更新,可以在移动浏览器变体上导航Web控制台菜单和页面。这使得可以从移动设备使用RHEL 8 Web控制台管理系统。

(JIRA:RHELPLAN-10352)

Web控制台首页现在显示缺少的更新和订阅

如果RHEL 8 Web控制台管理的系统已过期软件包或已失效的预订,则系统的Web控制台首页上将显示警告。

(JIRA:RHELPLAN-10353)

Web控制台现在支持PBD注册

通过此更新,您可以使用RHEL 8 Web控制台界面将基于策略的解密(PBD)规则应用于受管系统上的磁盘。这使用Clevis解密客户端来促进Web控制台中的各种安全管理功能,例如自动解锁LUKS加密的磁盘分区。

(JIRA:RHELPLAN-10354)

现在可以使用Web控制台管理虚拟机

Virtual Machines 页面现在可以添加到RHEL 8 Web控制台界面,该界面使用户能够创建和管理基于libvirt的虚拟机。

(JIRA:RHELPLAN-2896)

4.2. 安装程序和映像创建 (机器翻译版本)

使用DVD从DVD安装RHEL SEHMC 现在IBM Z完全支持

使用Linux从DVD上安装Red Hat Enterprise Linux 8在IBM Z硬件上 支持元素(SE)硬件管理控制台(HMC) 现在完全支持。此添加简化了IBM Z上的安装过程 SEHMC

从二进制DVD启动时,安装程序会提示用户输入其他内核参数。要将DVD设置为安装源,请附加 inst.repo=hmc 到内核参数。然后安装程序启用 SEHMC 文件访问,从DVD获取stage2的图像,并提供对DVD上的软件包的访问以供软件选择。

新功能消除了外部网络设置的要求,并扩展了安装选项。

(BZ#1500792)

安装程序现在支持LUKS2磁盘加密格式

Red Hat Enterprise Linux 8安装程序现在默认使用LUKS2格式,但您可以从中选择LUKS版本 蟒蛇的 自定义分区窗口或使用Kickstart中的新选项 autopart, ,logvol, ,part, ,和 RAID 命令。

LUKS2提供了许多改进和功能,例如,它扩展了磁盘格式的功能,并提供了存储元数据的灵活方式。

(BZ#1547908)

蟒蛇 支持RHEL 8中的系统用途

先前, 蟒蛇 没有提供系统目的信息 订阅管理器。在Red Hat Enterprise Linux 8.0中,您可以使用安装期间设置系统的预期用途 蟒蛇的 System Purpose 窗口或Kickstart的 syspurpose 命令。安装完成后, 订阅管理器 订阅系统时使用系统目的信息。

(BZ#1612060)

Pykickstart 支持RHEL 8中的系统用途

以前,这是不可能的 pykickstart 库提供系统目的信息 订阅管理器。在Red Hat Enterprise Linux 8.0中, pykickstart 解析新的 syspurpose 在自动和部分自动安装期间命令并记录系统的预期用途。然后将信息传递给 蟒蛇, ,保存在新安装的系统上,可用于 订阅管理器 订阅系统时

(BZ#1612061)

蟒蛇 在RHEL 8中支持新的内核引导参数

以前,您只能从内核引导参数指定基本存储库。在Red Hat Enterprise Linux 8中,一个新的内核参数, inst.addrepo=<name>,<url>, ,允许您在安装期间指定其他存储库。

此参数有两个必需值:存储库的名称和指向存储库的URL。有关更多信息,请参阅 https://anaconda-installer.readthedocs.io/en/latest/boot-options.html#inst-addrepo

(BZ#1595415)

蟒蛇 支持RHEL 8中的统一ISO

在Red Hat Enterprise Linux 8.0中,统一的ISO会自动加载BaseOS和AppStream安装源存储库。

此功能适用于安装期间加载的第一个基本存储库。例如,如果在没有配置存储库的情况下引导安装并且在GUI中具有统一的ISO作为基本存储库,或者如果使用 inst.repo= 指向统一ISO的选项。因此,AppStream存储库在。下启用 其他存储库 部分 安装源 GUI窗口。您无法删除AppStream存储库或更改其设置,但您可以将其禁用 安装源。如果使用其他基本存储库引导安装,然后将其更改为统一ISO,则此功能不起作用。如果这样做,则替换基本存储库。但是,AppStream存储库未替换并指向原始文件。

(BZ#1610806)

4.3. 核心 (机器翻译版本)

ARM 52位物理寻址现已推出

通过此更新,可以支持64位ARM体系结构的52位物理寻址(PA)。这提供了比以前的48位PA更大的地址空间。

(BZ#1643522)

IOMMU代码支持RHEL 8中的5级页表

Linux内核中的I / O内存管理单元(IOMMU)代码已更新,以支持Red Hat Enterprise Linux 8中的5级页表。

(BZ#1485546)

支持5级分页

P4d_t 软件页表类型已添加到Linux内核中,以支持Red Hat Enterprise Linux 8中的5级分页。

(BZ#1485532)

内存管理支持5级页表

在Red Hat Enterprise Linux 7中,现有内存总线具有48/46位的虚拟/物理内存寻址能力,而Linux内核实现了4级页表来管理这些虚拟地址到物理地址。物理总线寻址线将物理内存上限容量设置为64 TB。

这些限制已扩展到57/52位虚拟/物理内存寻址,具有128 PiB的虚拟地址空间和4 PB的物理内存容量。

通过扩展的地址范围,Red Hat Enterprise Linux 8中的内存管理增加了对5级页表实现的支持,以便能够处理扩展的地址范围。

(BZ#1485525)

kernel-signing-ca.cer 被移动到 kernel-core 在RHEL 8中

在所有版本的Red Hat Enterprise Linux 7中, kernel-signing-ca.cer 公钥位于 kernel-doc 包。但是,在Red Hat Enterprise Linux 8中, kernel-signing-ca.cer 已经搬迁到了 kernel-core 每个架构的包。

(BZ#1638465)

bpftool 用于检查和操作基于eBPF的程序和地图

bpftool 已经在Linux内核中添加了用于检查和基于扩展Berkeley数据包过滤(eBPF)的程序和映射的简单操作的实用程序。 bpftool 是内核源代码树的一部分,由提供者提供 bpftool 包,作为子包的包含 核心 包。

(BZ#1559607)

kernel-rt 来源已更新

kernel-rt 源已更新为使用最新的RHEL内核源代码树。最新的内核源代码树现在使用上游v4.18实时补丁集,它提供了许多错误修复和增强功能。

(BZ#1592977)

4.4. 软件管理 (机器翻译版本)

YUM 性能改进和对模块化内容的支持

在Red Hat Enterprise Linux 8上,新版本的软件确保安装软件 YUM 工具,它是基于 DNF 技术。

YUM 基于 DNF 与以前相比具有以下优点 YUM v3 用于RHEL 7:

  • 提高性能
  • 支持模块化内容
  • 精心设计的稳定API,可与工具集成

有关新的差异的详细信息 YUM 工具和以前的版本 YUM v3 来自RHEL 7,请参阅 http://dnf.readthedocs.io/en/latest/cli_vs_yum.html

YUM 基于 DNF 兼容 YUM v3 从命令行使用时,编辑或创建配置文件。

对于安装软件,您可以使用 yum 命令及其特定选项与RHEL 7相同。可以使用以前的名称安装包 Provides。包还提供兼容性符号链接,因此可以在通常的位置找到二进制文件,配置文件和目录。

请注意,提供的旧版Python API YUM v3 并且Libdnf C API不稳定,可能会在Red Hat Enterprise Linux 8生命周期中发生变化。建议用户将其插件和脚本迁移到新的DNF Python API,这是稳定且完全支持的。DNF Python API可在以下位置获得 https://dnf.readthedocs.io/en/latest/api.html

某些 YUM v3 功能可能表现不同 YUM 基于 DNF。如果任何此类更改对您的工作流程产生负面影响,请打开Red Hat支持案例,如中所述 How do I open and manage a support case on the Customer Portal?

(BZ#1581198)

RHEL 8中值得注意的RPM功能

Red Hat Enterprise Linux 8随RPM 4.14一起发布。此版本引入了许多针对RPM 4.11的增强功能,可在RHEL 7中使用。最显着的功能包括:

  • debuginfo 包可以并行安装
  • 支持弱依赖
  • 支持rich或boolean依赖项
  • 支持打包大小超过4 GB的文件
  • 支持文件触发器

此外,最显着的变化包括:

  • 更严格的spec-parser
  • 简化签名检查非详细模式下的输出
  • 宏中的添加和弃用

(BZ#1581990)

RPM 现在在开始安装之前验证整个包的内容

在Red Hat Enterprise Linux 7上 RPM 实用程序在解包时验证了各个文件的有效负载内容。但是,由于多种原因,这是不够的:

  • 如果有效负载损坏,则仅在执行不可逆转的脚本操作后才会注意到。
  • 如果有效负载损坏,则在更换先前版本的某些文件后,程序包的升级将中止,从而中断正在运行的安装。
  • 单个文件的哈希值是在未压缩的数据上执行的 RPM 容易受到解压缩漏洞的影响。

在Red Hat Enterprise Linux 8上,整个软件包在安装之前在单独的步骤中使用最佳可用散列进行验证。

在Red Hat Enterprise Linux 8上构建的软件包使用新的软件包 SHA256 压缩有效负载上的哈希值。在签名包上,有效负载散列还受签名保护,因此在不破坏包头上的签名和其他散列的情况下不能更改。较旧的包使用 MD5 标头和有效负载的散列,除非通过配置禁用,例如FIPS模式。

`%_pkgverify_level`宏可用于在安装之前另外启用强制签名验证或完全禁用有效负载验证。除此之外 %_pkgverify_flags 宏可用于限制允许哪些哈希值和签名。例如,可以禁用弱者的使用 MD5 哈希以与旧软件包的兼容性为代价。

(JIRA:RHELPLAN-1499)

4.5. 基建服务 (机器翻译版本)

RHEL 8中推荐的Tuned配置文件的显着变化

通过此更新,推荐的Tuned配置文件(由 tuned-adm recommend 现在根据以下规则选择命令) - 匹配的第一个规则生效:

  • 如果 syspurpose 角色(由报告 syspurpose show 命令)包含 atomic, ,同时:

    • 如果Tuned在裸机上运行,那么 atomic-host 配置文件被选中
    • 如果Tuned正在虚拟机中运行,那么 atomic-guest 配置文件被选中
  • 如果Tuned正在虚拟机中运行,那么 virtual-guest 配置文件被选中
  • 如果 syspurpose 角色包含 desktop 要么 workstation 和机箱类型(由报告 dmidecode)是 Notebook, ,Laptop, , 要么 Portable, 那么 balanced 配置文件被选中
  • 如果以上规则都不匹配,则 throughput-performance 配置文件被选中

(BZ#1565598)

由...生成的文件 命名 可以写在工作目录中

以前, 命名 守护进程将一些数据存储在工作目录中,该目录在Red Hat Enterprise Linux中是只读的。通过此更新,已将选定文件的路径更改为子目录,允许写入。现在,默认目录Unix和SELinux权限允许写入目录。在目录中分发的文件仍然是只读的 命名

(BZ#1588592)

Geolite数据库已被Geolite2数据库取代

Red Hat Enterprise Linux 7中存在的Geolite数据库被Red Hat Enterprise Linux 8上的Geolite2数据库取代。

Geolite数据库由提供 GeoIP 包。上游不再支持此包与旧数据库一起使用。

Geolite2数据库由多个包提供。该 libmaxminddb 包包括图书馆和 mmdblookup 命令行工具,可以手动搜索地址。该 geoipupdate 传统的二进制文件 GeoIP 包现在由。提供 geoipupdate 包,并能够下载旧数据库和新的Geolite2数据库。

(JIRA:RHELPLAN-6746)

CUPS日志由journald处理

在RHEL 8中,CUPS日志不再存储在其中的特定文件中 /var/log/cups 目录,在RHEL 7中使用。在RHEL 8中,所有类型的CUPS日志都集中在systemd中 journald 守护进程和其他程序的日志。要访问CUPS日志,请使用 journalctl -u cups 命令。有关更多信息,请参阅 https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html-single/deploying_different_types_of_servers/working-with-cups-logs_configuring-printing [使用CUPS日志]。

(JIRA:RHELPLAN-12764)

4.6. 外壳和命令行工具 (机器翻译版本)

nobody 用户替换 nfsnobody

在Red Hat Enterprise Linux 7中,有:

  • nobody ID为99的用户和组对
  • nfsnobody ID为65534的用户和组对,也是默认的内核溢出ID。

这两个都已合并到了 nobody 用户和组对,在Red Hat Enterprise Linux 8中使用65534 ID。新安装不再创建 nfsnobody 对。

此更改减少了对所拥有文件的混淆 nobody 但与NFS无关。

(BZ#1591969)

RHEL 8中的版本控制系统

RHEL 8提供以下版本控制系统:

  • Git 2.18,具有分散架构的分布式版本控制系统。
  • Mercurial 4.8,轻量级分布式版本控制系统,专为高效处理大型项目而设计。
  • Subversion 1.10,集中版本控制系统。有关更多信息,请参阅 Notable changes in Subversion 1.10

请注意,RHEL 7中提供的并发版本系统(CVS)不随RHEL 8一起分发。

(BZ#1693775)

值得注意的变化 Subversion 1.10

Subversion 1.10 自RHEL 7中分发的1.7版本以来,引入了许多新功能,以及以下兼容性更改:

  • 由于不兼容性 Subversion 用于支持语言绑定的库, Python 3 绑定 Subversion 1.10 不可用。因此,需要的应用程序 Python 绑定 Subversion 不受支持。
  • 存储库基于 Berkeley DB 不再受支持。迁移之前,请备份使用创建的存储库 Subversion 1.7 通过使用 svnadmin dump 命令。安装RHEL 8后,使用以下命令还原存储库 svnadmin load 命令。
  • 现有的工作副本由 Subversion 1.7 RHEL 7中的客户端必须先升级到新格式才能使用 Subversion 1.10。安装RHEL 8后,运行 svn upgrade 每个工作副本中的命令。
  • 用于访问存储库的智能卡身份验证 https:// 不再受支持。

(BZ#1571415)

4.7. 动态编程语言,Web和数据库服务器 (机器翻译版本)

Python 3 是默认值 Python 在RHEL 8中实现

Red Hat Enterprise Linux 8随附 Python 3.6。默认情况下不安装该程序包。安装 Python 3.6, , 使用 yum install python3 命令。

Python 2.7 可以在 python2 包。然而, Python 2 将有一个较短的生命周期,其目的是促进更顺利的过渡 Python 3 为客户。

既不是默认值 python 包装也没有无版本 /usr/bin/python 可执行文件随RHEL 8一起分发。建议客户使用 python3 要么 python2 直。或者,管理员可以配置未版本控制 python 命令使用 alternatives 命令。

有关详情,请参阅 Using Python in Red Hat Enterprise Linux 8

(BZ#1580387)

Python脚本必须在RPM构建时指定hashbang中的主要版本

在RHEL 8中,可执行的Python脚本应该使用hashbangs(shebangs)至少明确指定主要的Python版本。

/usr/lib/rpm/redhat/brp-mangle-shebangs 构建任何RPM包时会自动运行buildroot策略(BRP)脚本。此脚本尝试更正所有可执行文件中的hashbang。当脚本遇到无法解析为主要版本的Python的模糊hashbang时,会产生错误。这种模棱两可的hashbang的例子包括:

  • #! /usr/bin/python
  • #! /usr/bin/env python

要修改Python脚本中的hashbang,导致RPM构建时出现这些构建错误,请使用 pathfix.py 来自的脚本 平台的Python-devel的 包:

pathfix.py -pn -i %{__python3} PATH ...

路径s可以指定。如果一个 路径 是一个目录, pathfix.py 递归扫描与模式匹配的任何Python脚本 ^[a-zA-Z0-9_]+\.py$, ,不仅是那些含糊不清的人。将此命令添加到 %prep 部分或在结束时 %install 部分。

有关更多信息,请参阅 Handling hashbangs in Python scripts

(BZ#1583620)

值得注意的变化 PHP

Red Hat Enterprise Linux 8随附 PHP 7.2。此版本引入了以下主要更改 PHP 5.4, ,在RHEL 7中可用:

  • PHP 默认情况下使用FastCGI Process Manager(FPM)(安全使用带螺纹的 httpd
  • php_valuephp-flag 变量不应再用于 httpd 配置文件;它们应该在池配置中设置: /etc/php-fpm.d/*.conf
  • PHP 脚本错误和警告记录到 /var/log/php-fpm/www-error.log 文件而不是 /var/log/httpd/error.log
  • 更改PHP时 max_execution_time 配置变量, httpd ProxyTimeout 应增加设置以匹配
  • 用户正在运行 PHP 现在,在FPM池配置中配置了脚本( /etc/php-fpm/d/www.conf 文件;该 apache 用户是默认值)
  • php-fpm 配置更改后或安装新扩展后,需要重新启动服务

已删除以下扩展程序:

  • aspell
  • mysql (请注意 mysqlipdo_mysql 扩展仍然可用,由提供 php-mysqlnd 包)
  • zip
  • memcache

(BZ#1580430, BZ#1691688)

值得注意的变化 Ruby

RHEL 8提供 Ruby 2.5, ,它引入了许多新功能和增强功能 Ruby 2.0.0 可在RHEL 7中获得。值得注意的变化包括:

  • 增量垃圾收集器已添加。
  • Refinements 语法已添加。
  • 符号现在是垃圾收集。
  • $SAFE=2$SAFE=3 安全水平现已过时。
  • FixnumBignum 班级已经统一到了 Integer 类。
  • 通过优化,性能得到了提高 Hash class,改进了对实例变量的访问,以及 Mutex 班级越小越快。
  • 某些旧API已被弃用。
  • 捆绑的库,例如 RubyGems, ,Rake, ,RDoc, ,Psych, ,Minitest, ,和 test-unit, ,已经更新。
  • 其他图书馆,如 mathn, ,DL, ,ext/tk, ,和 XMLRPC, ,以前分发的 Ruby, ,已弃用或不再包括在内。
  • SemVer 版本控制方案现在用于 Ruby 版本。

(BZ#1648843)

值得注意的变化 Perl

Perl 5.26与RHEL 8一起分发,对RHEL 7中提供的版本进行了以下更改:

  • Unicode 9.0 现在支持。
  • op-entry, ,loading-file, ,和 loaded-file SystemTap 提供探针。
  • 在分配标量以提高性能时使用写时复制机制。
  • IO::Socket::IP 已添加透明处理IPv4和IPv6套接字的模块。
  • Config::Perl::V 模块访问 perl -V 已添加结构化数据。
  • 一个新的 perl-App-cpanminus 已添加包,其中包含 cpanm 用于从Comprehensive Perl Archive Network(CPAN)存储库获取,提取,构建和安装模块的实用程序。
  • 当前目录 . 已被删除 @INC 模块搜索路径出于安全原因。
  • do 语句现在在由于上述行为更改而无法加载文件时返回弃用警告。
  • do subroutine(LIST) 不再支持调用并导致语法错误。
  • 哈希现在默认是随机的。从哈希返回键和值的顺序在每个哈希上都会发生变化 perl 跑。要禁用随机化,请设置 PERL_PERTURB_KEYS 环境变量到 0
  • 未转义的文字 { 正则表达式模式中的字符不再允许。
  • 词汇范围支持 $_ 变量已被删除。
  • 使用 defined 数组或哈希上的运算符导致致命错误。
  • 从中导入函数 UNIVERSAL 模块导致致命错误。
  • find2perl, ,s2p, ,a2p, ,c2ph, ,和 pstruct 工具已被删除。
  • ${^ENCODING} 设施已被删除。该 encoding 不再支持pragma的默认模式。用其他编码编写源代码 UTF-8, ,使用编码 Filter 选项。
  • perl 包装现在与上游对齐。该 perl 包安装也是核心模块,而 /usr/bin/perl 口译员是由。提供的 perl-interpreter 包。在以前的版本中, perl 包中只包含一个最小的解释器,而 perl-core 包括解释器和核心模块。

(BZ#1511131)

Node.js RHEL 8中的新功能

Node.js,这是一个用于在JavaScript编程语言中构建快速,可扩展的网络应用程序的软件开发平台,这是RHEL首次提供的。它以前只能作为软件集合使用。RHEL 8提供 Node.js 10

(BZ#1622118)

SWIG的显着变化

RHEL 8包括简化的包装器和接口生成器(SWIG)3.0版,它提供了许多新功能,增强功能和错误修复,而不是RHEL 7中分发的2.0版本。最值得注意的是,支持C ++ 11标准已经实现。SWIG现在也支持Go 1.6,PHP 7。Octave 4.2和Python 3.5。

(BZ#1660051)

Apache的显着变化 httpd

RHEL 8随Apache HTTP Server 2.4.37一起分发。此版本引入了以下更改 httpd RHEL 7中提供:

  • 现在提供HTTP / 2支持 mod_http2 包,这是一部分 httpd 模块。
  • 现在支持使用自动证书管理环境(ACME)协议进行自动TLS证书配置和续订 mod_md 包(用于证书提供者,如 Let’s Encrypt
  • Apache HTTP Server现在支持直接从硬件安全令牌加载TLS证书和私钥 PKCS#11 模块。结果,一个 mod_ssl 配置现在可以使用 PKCS#11 用于标识TLS私钥的URL,以及可选的TLS证书 SSLCertificateKeyFileSSLCertificateFile 指令。
  • 默认情况下使用Apache HTTP Server配置的多处理模块(MPM)已从多进程分叉模型(称为 prefork)到一个高性能的多线程模型, event。任何非线程安全的第三方模块都需要更换或删除。要更改已配置的MPM,请编辑 /etc/httpd/conf.modules.d/00-mpm.conf 文件。见 httpd.conf(5) 手册页以获取更多信息。

有关的更多信息 httpd, ,见 Setting up the Apache HTTP web server

(BZ#1632754, BZ#1527084, BZ#1581178)

nginx RHEL 8中新增的Web服务器

RHEL 8介绍 nginx 1.14, ,支持HTTP和其他协议的Web和代理服务器,重点是高并发性,性能和低内存使用率。 nginx 以前只能作为软件集合使用。

nginx Web服务器现在支持直接从硬件安全令牌加载TLS私钥 PKCS#11 模块。结果,一个 nginx 配置可以使用 PKCS#11 用于标识TLS私钥的URL ssl_certificate_key 指示。

(BZ#1545526)

RHEL 8中的数据库服务器

RHEL 8提供以下数据库服务器:

  • MySQL 8.0,一个多用户,多线程的SQL数据库服务器。它由...组成 MySQL 服务器守护进程, mysqld, ,以及许多客户端程序。
  • MariaDB 10.3,一个多用户,多线程的SQL数据库服务器。出于所有实际目的, MariaDB 与二进制兼容 MySQL
  • PostgreSQL 10PostgreSQL 9.6, ,一种高级的对象 - 关系数据库管理系统(DBMS)。
  • Redis 5,一个先进的键值存储。它通常被称为数据结构服务器,因为键可以包含字符串,散列,列表,集和有序集。 Redis 在RHEL首次提供。

注意NoSQL MongoDB 数据库服务器未包含在RHEL 8.0中,因为它使用服务器端公共许可证(SSPL)。

(BZ#1647908)

值得注意的变化 MySQL 8.0

RHEL 8随附 MySQL 8.0, ,例如,它提供了以下增强功能:

  • MySQL 现在包含一个事务数据字典,它存储有关数据库对象的信息。
  • MySQL 现在支持角色,这是特权的集合。
  • 默认字符集已更改 latin1utf8mb4
  • 添加了对非递归和递归的公用表表达式的支持。
  • MySQL 现在支持窗口函数,它使用相关的行对查询中的每一行执行计算。
  • InnoDB 现在支持了 NOWAITSKIP LOCKED 锁定读取语句的选项。
  • 与GIS相关的功能得到了改进。
  • JSON功能已得到增强。
  • 新的 mariadb-connector-c 包提供了一个通用的客户端库 MySQLMariaDB。该库可用于任何版本的 MySQLMariaDB 数据库服务器因此,用户能够将应用程序的一个版本连接到任何一个 MySQLMariaDB 与RHEL 8一起分发的服务器。

除此之外 MySQL 8.0 与RHEL 8一起分发的服务器配置为使用 mysql_native_password 作为默认身份验证插件,因为RHEL 8中的客户端工具和库与 caching_sha2_password 方法,默认情况下在上游使用 MySQL 8.0 版。

要将默认身份验证插件更改为 caching_sha2_password, ,编辑 /etc/my.cnf.d/mysql-default-authentication-plugin.cnf 文件如下:

[mysqld]
default_authentication_plugin=caching_sha2_password

(BZ#1649891, BZ#1519450, BZ#1631400)

值得注意的变化 MariaDB 10.3

MariaDB 10.3 与RHEL 7中分发的5.5版相比,它提供了许多新功能。一些最显着的变化是:

  • MariaDB Galera Cluster,同步多主集群,现在是标准的一部分 MariaDB
  • InnoDB 用作默认存储引擎而不是 XtraDB
  • 公用表表达式
  • 系统版本的表
  • FOR 循环
  • 隐形列
  • 序列
  • 瞬间 ADD COLUMN 对于 InnoDB
  • 存储引擎独立列压缩
  • 并行复制
  • 多源复制

另外,新的 mariadb-connector-c 包提供了一个通用的客户端库 MySQLMariaDB。该库可用于任何版本的 MySQLMariaDB 数据库服务器因此,用户能够将应用程序的一个版本连接到任何一个 MySQLMariaDB 与RHEL 8一起分发的服务器。

也可以看看 Using MariaDB on Red Hat Enterprise Linux 8

(BZ#1637034, BZ#1519450)

4.8. 桌面 (机器翻译版本)

GNOME Shell,RHEL 8中的3.28版

GNOME Shell,版本3.28在Red Hat Enterprise Linux(RHEL)8中可用。显着的增强功能包括:

  • 新的GNOME Boxes功能
  • 新的屏幕键盘
  • 扩展设备支持Thunderbolt 3接口的最显着集成
  • GNOME软件,dconf编辑器和GNOME终端的改进

(BZ#1649404)

韦兰 是默认的显示服务器

使用Red Hat Enterprise Linux 8,GNOME会话和GNOME显示管理器(GDM)使用 韦兰 作为他们的默认显示服务器而不是 X.org 服务器,与之前的RHEL主要版本一起使用。

韦兰 提供多种优势和改进 X.org。最为显着地:

  • 更强大的安全模型
  • 改进了多显示器处理
  • 改进的用户界面(UI)缩放
  • 桌面可以直接控制窗口处理。

请注意,以下功能目前不可用或无法按预期工作:

  • 不支持多GPU设置 韦兰
  • NVIDIA 二进制驱动程序不起作用 韦兰
  • xrandr 实用程序不起作用 韦兰 由于其处理,分辨率,旋转和布局的不同方法。注意其他 X.org 用于操作屏幕的实用程序不起作用 韦兰, ,或者。
  • 屏幕录制,远程桌面和辅助功能并不总能正常工作 韦兰
  • 没有剪贴板管理器可用。
  • 韦兰 忽略X11应用程序发出的键盘抓取,例如虚拟机查看器。
  • 韦兰 内部来宾虚拟机(VM)存在稳定性和性能问题,因此建议将X11会话用于虚拟环境。

如果从使用了RHEL 7系统的RHEL 7系统升级到RHEL 8 X.org GNOME会话,您的系统继续使用 X.org。系统也会自动回退 X.org 当使用以下图形驱动程序时:

  • NVIDIA二进制驱动程序
  • cirrus 司机
  • mga 司机
  • aspeed 司机

你可以禁用使用 韦兰 手动:

  • 要禁用 韦兰GDM, ,设置 WaylandEnable=false 选项 /etc/gdm/custom.conf 文件。
  • 要禁用 韦兰 在GNOME会话中,输入登录名后,使用登录屏幕上的cogwheel菜单选择旧版X11选项。

有关详细信息 韦兰, ,见 https://wayland.freedesktop.org/

(BZ#1589678)

找不到默认情况下未启用的存储库中的RPM软件包

默认情况下,不启用桌面的其他存储库。禁用由...表示 enabled=0 在相应的行 .repo 文件。如果您尝试使用PackageKit从此类存储库安装软件包,PackageKit会显示一条错误消息,通知该应用程序不可用。要使包装可用,请替换以前使用的包装 enabled=0 在相应的行 .repo 文件 enabled=1

(JIRA:RHELPLAN-2878)

GNOME软件 用于包管理

gnome-packagekit 在Red Hat Enterprise Linux 7上为图形环境中的包管理提供了一系列工具的软件包已不再可用。在Red Hat Enterprise Linux 8上,提供了类似的功能 GNOME软件 实用程序,使您可以安装和更新应用程序和gnome-shell扩展。GNOME软件 分布在 gnome-software 包。

(JIRA:RHELPLAN-3001)

4.9. 身份管理 (机器翻译版本)

Directory Server中的新密码语法检查

此增强功能会向Directory Server添加新的密码语法检查。例如,管理员现在可以启用字典检查,允许或拒绝使用字符序列和回文。因此,如果启用,Directory Server中的密码策略语法检查会强制使用更安全的密码。

(BZ#1334254)

Directory Server现在提供改进的内部操作日志记录支持

Directory Server中的几个操作由服务器和客户端启动,在后台执行其他操作。以前,服务器只记录内部操作 Internal 连接关键字,操作ID始终设置为 -1。通过此增强功能,Directory Server会记录实际连接和操作ID。您现在可以跟踪导致此操作的服务器或客户端操作的内部操作。

有关内部操作日志记录的更多详细信息,请参阅链接:https://access.redhat.com/documentation/en-us/red_hat_directory_server/11/html-single/administration_guide/#logging_internal_operations。

(BZ#1358706)

tomcatjss 库支持使用来自AIA扩展的响应者进行OCSP检查

有了这个增强, tomcatjss 库支持使用来自证书的授权信息访问(AIA)扩展的响应者进行在线证书状态协议(OCSP)检查。因此,红帽证书系统的管理员现在可以配置使用来自AIA扩展的URL的OCSP检查。

(BZ#1636564)

Directory Server引入了新的命令行实用程序来管理实例

Red Hat Directory Server 11.0引入了 dscreate, ,dsconf, ,和 dsctl 公用事业。这些实用程序使用命令行简化了对Directory Server的管理。例如,您现在可以使用带参数的命令来配置功能,而不是将复杂的LDIF语句发送到服务器。

以下是每个实用程序的用途概述:

  • 使用 dscreate 使用交互模式或INF文件创建新Directory Server实例的实用程序。请注意,INF文件格式与安装程序在以前的Directory Server版本中使用的格式不同。
  • 使用 dsconf 用于在运行时管理Directory Server实例的实用程序。例如,使用 dsconf 至:

    • 配置中的设置 cn=config 条目
    • 配置插件
    • 配置复制
    • 备份和还原实例
  • 使用 dsctl 用于在脱机时管理Directory Server实例的实用程序。例如,使用 dsctl 至:

    • 启动和停止实例
    • 重新索引服务器数据库
    • 备份和还原实例

这些实用程序替换Directory Server 10中标记为已弃用的Perl和shell脚本。脚本仍然在不受支持的情况下可用 389-ds-base-legacy-tools 但是,Red Hat仅支持使用新实用程序管理Directory Server。

请注意,仍然支持使用LDIF语句配置Directory Server,但Red Hat建议使用这些实用程序。

有关使用实用程序的更多详细信息,请参阅 Red Hat Directory Server 11 Documentation

(BZ#1693159)

pki subsystem-cert-findpki subsystem-cert-show 命令现在显示证书的序列号

有了这个增强, pki subsystem-cert-findpki subsystem-cert-show 证书系统中的命令显示其输出中的证书序列号。序列号是一个重要的信息,通常需要多个其他命令。因此,现在可以更轻松地识别证书的序列号。

(BZ#1566360)

pki userpki group 证书系统中已弃用命令

有了这个更新,新的 pki <subsystem>-userpki <subsystem>-group 命令取代了 pki userpki group 证书系统中的命令。替换的命令仍然有效,但它们会显示一条消息,指出该命令已弃用并引用新命令。

(BZ#1394069)

证书系统现在支持系统证书的脱机续订

通过此增强功能,管理员可以使用脱机续订功能续订在证书系统中配置的系统证书。系统证书过期后,证书系统无法启动。作为增强功能的结果,管理员不再需要解决方法来替换过期的系统证书。

(BZ#1669257)

证书系统现在可以使用SKI扩展创建CSR以进行外部CA签名

通过此增强功能,证书系统支持使用主题密钥标识符(SKI)扩展创建证书签名请求(CSR),以进行外部证书颁发机构(CA)签名。某些CA要求此扩展具有特定值或从CA公钥派生。因此,管理员现在可以使用 pki_req_ski 传递给配置文件的参数 pkispawn 用于创建具有SKI扩展的CSR的实用程序。

(BZ#1656856)

本地用户由SSSD缓存并通过 nss_sss

在RHEL 8中,系统安全服务守护程序(SSSD)为用户和组提供服务 /etc/passwd/etc/groups 默认情况下的文件该 sss nsswitch模块在文件之前 /etc/nsswitch.conf 文件。

通过SSSD为本地用户提供服务的优势在于 nss_sss 模块有一个快速 memory-mapped cache 与访问磁盘和打开每个NSS请求上的文件相比,它可以加速名称服务交换机(NSS)查找。以前,名称服务缓存守护程序(nscd)帮助加快了访问磁盘的过程。但是,使用 nscd 与SSSD并行是很麻烦的,因为SSSD和 nscd 使用自己独立的缓存。因此,使用 nscd 在SSSD也为来自远程域(例如LDAP或Active Directory)的用户提供服务的设置中,可能会导致不可预测的行为。

通过此更新,RHEL 8中本地用户和组的分辨率更快。请注意 root 因此,用户永远不会被SSSD处理 root 分辨率不会受到SSSD潜在错误的影响。另请注意,如果SSSD未运行,则 nss_sss 模块通过回退来优雅地处理情况 nss_files 避免问题。您不必以任何方式配置SSSD,自动添加文件域。

(JIRA:RHELPLAN-10439)

KCM将KEYRING替换为默认凭证缓存存储

在RHEL 8中,默认凭据缓存存储是Kerberos凭据管理器(KCM),它由 sssd-kcm 守护进程。KCM克服了以前使用的KEYRING的局限性,例如它很难在容器化环境中使用,因为它没有命名空间,以及查看和管理配额。

通过此更新,RHEL 8包含一个更适合容器化环境的凭据缓存,并为将来版本中构建更多功能提供了基础。

(JIRA:RHELPLAN-10440)

Active Directory用户现在可以管理身份管理

通过此更新,RHEL 8允许为Active Directory(AD)用户添加用户ID覆盖,作为Identity Management(IdM)组的成员。ID覆盖是描述特定ID用户或组属性在特定ID视图中应该是什么样的记录,在本例中为默认信任视图。作为更新的结果,IdM LDAP服务器能够将IdM组的访问控制规则应用于AD用户。

AD用户现在可以使用IdM UI的自助服务功能,例如上传他们的SSH密钥或更改他们的个人数据。AD管理员无需拥有两个不同的帐户和密码即可完全管理IdM。请注意,目前,IDM中的所选功能可能仍然无法供AD用户使用。

(JIRA:RHELPLAN-10442)

sssctl 打印IdM域的HBAC规则报告

有了这个更新, sssctl 系统安全服务守护程序(SSSD)的实用程序可以打印身份管理(IdM)域的访问控制报告。出于监管原因,此功能可满足某些环境的需要,以查看可以访问特定客户端计算机的用户和组列表。运行 sssctl access-report domain_name 在IdM客户端上打印应用于客户端计算机的IdM域中基于主机的访问控制(HBAC)规则的已解析子集。

请注意,除IdM之外,没有其他提供商支持此功能。

(JIRA:RHELPLAN-10443)

身份管理包作为模块提供

在RHEL 8中,安装Identity Management(IdM)服务器和客户端所需的软件包作为模块提供。该 client stream是默认的流 idm 模块,您可以下载安装客户端所需的软件包,而无需启用流。

IdM服务器模块流称为 DL1 流。该流包含与不同类型的IdM服务器对应的多个配置文件:server,dns,adtrust,client和default。要下载特定配置文件中的软件包 DL1 流:。启用流。 。切换到通过流传递的RPM。 。跑过 yum module install idm:DL1/profile_name 命令。

(JIRA:RHELPLAN-10438)

添加了RHEL 8的会话录制解决方案

Red Hat Enterprise Linux 8(RHEL 8)中添加了会话记录解决方案。一个新的 tlog 包及其关联的Web控制台会话播放器使得能够记录和回放用户终端会话。可以通过系统安全服务守护程序(SSSD)服务按用户或用户组配置记录。捕获所有终端输入和输出,并以基于文本的格式存储在系统日志中。出于安全原因,默认情况下输入处于非活动状态,不会拦截原始密码和其他敏感信息。

该解决方案可用于审核安全敏感系统上的用户会话。如果发生安全漏洞,可以将记录的会话作为取证分析的一部分进行审核。系统管理员现在可以在本地配置会话记录,并使用RHEL 8 Web控制台界面或命令行界面查看结果。 tlog-play 效用。

(JIRA:RHELPLAN-1473)

authselect 简化了用户身份验证的配置

此更新介绍了 authselect 实用程序,简化了RHEL 8主机上的用户身份验证配置,替换了 authconfig 效用。 authselect 提供了一种更安全的PAM堆栈管理方法,使系统管理员可以更轻松地更改PAM配置。 authselect 可用于配置身份验证方法,如密码,证书,智能卡和指纹。注意 authselect 不配置加入远程域所需的服务。此任务由专门的工具执行,例如 realmd 要么 ipa-client-install

(JIRA:RHELPLAN-10445)

SSSD现在允许您选择多个智能卡身份验证设备之一

通过此更新,您可以配置PKCS#11 URI以选择智能卡身份验证设备。

默认情况下,SSSD会尝试自动检测设备以进行智能卡身份验证。如果连接了多个设备,SSSD将选择找到的第一个设备,您无法选择特定设备。它可能导致失败。

因此,您现在可以配置新的 p11_uri 选项 [pam] 部分 sssd.conf。此选项使您可以定义将用于智能卡身份验证的设备。

例如,要选择OpenSC PKCS#11模块检测到插槽ID为“2”的阅读器,请添加

p11_uri = library-description=OpenSC%20smartcard%20framework;slot-id=2

到了 [pam] 部分 sssd.conf

请参阅 man sssd-conf 详情。

(BZ#1620123)

4.10. 编译器和开发工具 (机器翻译版本)

Boost已更新至1.66版

促进 C ++库已更新到上游版本1.66。版本 促进 包含在Red Hat Enterprise Linux 7中的是1.53。有关详细信息,请参阅上游更改日志: https://www.boost.org/users/history/

此更新引入了以下更改,破坏了与先前版本的兼容性:

  • bs_set_hook() 功能, splay_set_hook() 来自展开容器的功能,以及 bool splay = true 额外的参数 splaytree_algorithms() 功能在 侵入 库已被删除。
  • 解析器不再支持JSON文件中的注释或字符串连接 物业树 图书馆。
  • 一些发行版和特殊功能 数学 已经修复了库以表现为文档并提出了一个 overflow_error 而不是返回最大有限值。
  • 一些标题来自 数学 库已被移入目录 libs/math/include_private
  • 的行为 basic_regex<>::mark_count()basic_regex<>::subexpression(n) 功能来自 正则表达式 库已更改为与其文档相匹配。
  • 在中使用可变参数模板 变种 库可能会破坏元编程功能。
  • boost::python::numeric API已被删除。用户可以使用 boost::python::numpy 代替。
  • 原子库中不再提供对非对象类型指针的算术运算。

(BZ#1494495)

Unicode 11.0.0支持

红帽企业Linux核心C库, glibc的, ,已更新为支持Unicode标准版本11.0.0。因此,所有宽字符和多字节字符API(包括字符集之间的音译和转换)都能提供符合此标准的准确和正确的信息。

(BZ#1512004)

boost package现在独立于Python

有了这个更新,安装 boost 包不再安装了 Boost.Python 库作为依赖。为了使用 Boost.Python, ,你需要明确安装 boost-python3 要么 boost-python3-devel 包。

(BZ#1616244)

一个新的 compat-libgfortran-48 包可用

为了与使用Fortran库的Red Hat Enterprise Linux 6和7应用程序兼容,一个新的 compat-libgfortran-48 兼容包现在可用,它提供了 libgfortran.so.3 图书馆。

(BZ#1607227)

GCC中的Retpoline支持

此更新增加了对GCC的retpolines的支持。retpoline是内核使用的软件构造,用于减少CVE-2017-5715中描述的减轻Spectre Variant 2攻击的开销。

(BZ#1535774)

增强了对工具链组件中64位ARM体系结构的支持

工具链组件, GCCbinutils, ,现在为64位ARM体系结构提供扩展支持。例如:

  • GCCbinutils 现在支持可伸缩矢量扩展(SVE)。
  • 支持 FP16 数据类型由ARM v8.2提供,已添加到 GCC。该 FP16 数据类型提高了某些算法的性能。
  • 来自的工具 binutils 现在支持ARM v8.3架构定义,包括指针验证。指针验证功能通过制作自己的函数指针来防止恶意代码破坏程序或内核的正常执行。因此,在分支到代码中的不同位置时,仅使用可信地址,这提高了安全性。

(BZ#1504980, BZ#1550501, BZ#1504995, BZ#1504993, BZ#1504994)

优化到 glibc 对于IBM POWER系统

此更新提供了新版本 glibc 它针对IBM POWER 8和IBM POWER 9体系结构进行了优化。因此,IBM POWER 8和IBM POWER 9系统现在可以自动切换到相应的优化系统 glibc 运行时的变体。

(BZ#1376834)

GNU C Library已更新至2.28版

Red Hat Enterprise Linux 8包含GNU C库2.28版(glibc)。显着的改进包括:

  • 安全加固功能:

    • 安全的二进制文件标有 AT_SECURE 国旗忽略了 LD_LIBRARY_PATH 环境变量。
    • 不再打印回溯以进行堆栈检查失败,以加速关闭并避免在受损环境中运行更多代码。
  • 性能改进:

    • 表现的 malloc() 函数已通过线程本地缓存进行了改进。
    • 添加了 GLIBC_TUNABLES 环境变量,以改变库性能特征。
    • 线程信号量的实现已得到改进,并且具有新的可扩展性 pthread_rwlock_xxx() 功能已添加。
    • 数学库的性能得到了改进。
  • 添加了对Unicode 11.0.0的支持。
  • 增加了对ISO / IEC / IEEE 60559:2011,IEEE 754-2008和ISO / IEC TS 18661-3:2015标准定义的128位浮点数的改进支持。
  • 域名服务(DNS)存根解析器改进相关的 /etc/resolv.conf 配置文件:

    • 更改文件时会自动重新加载配置。
    • 增加了对任意数量搜索域的支持。
    • 适当的随机选择 rotate 选项已添加。
  • 增加了新的开发功能,包括:

    • Linux的包装函数 preadv2pwritev2 内核调用
    • 新功能包括 reallocarray()explicit_bzero()
    • 新的标志 posix_spawnattr_setflags() 功能如 POSIX_SPAWN_SETSID

(BZ#1512010, BZ#1504125, BZ#506398)

可在RHEL中使用CMake

CMake构建系统版本3.11在Red Hat Enterprise Linux 8中可用作 cmake 包。

(BZ#1590139, BZ#1502802)

make 版本4.2.1

Red Hat Enterprise Linux 8随附了 make 构建工具版本4.2.1。值得注意的变化包括:

  • 配方失败时,将显示生成文件的名称和配方的行号。
  • --trace 已添加选项以启用目标跟踪。使用此选项时,每个配方都会在调用之前打印,即使它将被抑制,也可以与此配方所在的文件名和行号一起打印,还可以使用先决条件来调用它。
  • 混合显式和隐式规则不再导致 make 终止执行。而是打印一个警告。请注意,此语法已弃用,将来可能会完全删除。
  • $(file …​) 已添加函数以将文本写入文件。在没有文本参数的情况下调用时,它只会打开并立即关闭文件。
  • 一个新的选择, --output-sync 要么 -O, ,使每个作业对多个作业的输出进行分组,并使并行构建的调试更容易。
  • --debug 选项现在也接受了 n (无)标志禁用所有当前启用的调试设置。
  • != shell赋值运算符已被添加为 $(shell …​) 用于增加与BSD makefile的兼容性。有关运算符和函数之间的更多详细信息和差异,请参阅GNU make手册。

请注意,结果是名称以感叹号结尾并紧接着赋值的变量,例如 variable!=value, ,现在被解释为新语法。要恢复以前的行为,请在感叹号后面添加一个空格,例如 variable! =value

+

  • ::= 已添加由POSIX标准定义的赋值运算符。
  • 当。。。的时候 .POSIX 指定变量, make 遵守处理反斜杠和新行的POSIX标准要求。在此模式下,保留反斜杠之前的任何尾随空格,并且每个反斜杠后跟一个新行和空格字符将转换为单个空格字符。
  • 的行为 MAKEFLAGSMFLAGS 现在可以更精确地定义变量。
  • 一个新变量, GNUMAKEFLAGS, ,被解析 make 标志相同 MAKEFLAGS。因此,GNU make- 特定标志可以存储在外面 MAKEFLAGS 并且增加了makefile的可移植性。
  • 一个新变量, MAKE_HOST, ,包含主机架构已添加。
  • 新变量, MAKE_TERMOUTMAKE_TERMERR, ,表明是否 make 正在将标准输出和错误写入终端。
  • 设置 -r-R 中的选项 MAKEFLAGS makefile中的变量现在可以正常工作,并分别删除所有内置规则和变量。
  • .RECIPEPREFIX 现在每个食谱都会记住这个设置。此外,在该配方中扩展的变量也使用该配方前缀设置。
  • .RECIPEPREFIX 设置和所有特定于目标的变量显示在输出中 -p 选项就好像在makefile中,而不是作为注释。

(BZ#1641015)

Go程序用 去工具集 符合FIPS标准

可用的加密库 去工具集 已改为使用了 OpenSSL的 如果主机系统配置为FIPS模式,则为库版本1.1.0。因此,使用此版本构建的程序 去工具集 符合FIPS标准。

要使Go程序仅使用未经认证的标准加密例程,请使用 -tags no_openssl 的选择 go 编译器在构建时。

(BZ#1512570)

SystemTap的 版本4.0

Red Hat Enterprise Linux 8随附了 SystemTap的 仪表工具4.0版。显着的改进包括:

  • 扩展的Berkeley Packet Filter(eBPF)后端已得到改进,尤其是字符串和函数。要使用此后端,请启动 SystemTap的 随着 --runtime=bpf 选项。
  • 增加了与Prometheus监测系统一起使用的新的出口网络服务。
  • 系统调用探测实现已得到改进,以便在必要时使用内核跟踪点。

(BZ#1641032)

改进 binutils 版本2.30

红帽企业Linux 8包括版本2.30 binutils 包。显着的改进包括:

  • 对新的s390x架构扩展的支持已得到改进。

汇编程序:

  • 添加了对WebAssembly文件格式的支持,以及WebAssembly到wasm32 ELF文件格式的转换。
  • 增加了对ARMv8-R架构和Cortex-R52,Cortex-M23和Cortex-M33处理器的支持。
  • 增加了对RISC-V架构的支持。

链接器:

  • 现在,链接器默认将代码和只读数据放入单独的段中。因此,创建的可执行文件更大,运行更安全,因为动态加载程序可以禁用包含只读数据的任何内存页面的执行。
  • 添加了对动态加载程序提供有关二进制文件的提示的GNU属性注释的支持。
  • 以前,链接器为英特尔间接分支跟踪(IBT)技术生成了无效的可执行代码。因此,生成的可执行文件无法启动。此错误已得到修复。
  • 以前, gold 链接器合并属性说明不正确。因此,可能会在生成的代码中启用错误的硬件功能,并且代码可能会意外终止。此错误已得到修复。
  • 以前, gold 链接器在末尾创建了带有填充字节的注释部分,以根据体系结构实现对齐。因为动态加载器没有期望填充,所以它会意外终止它正在加载的程序。此错误已得到修复。

其他工具:

  • readelfobjdump 现在,工具可以选择将链接跟踪到单独的调试信息文件中,并在其中显示信息。
  • 新的 --inlines 选项扩展了现有的 --line-numbers 的选择 objdump 用于显示内联函数的嵌套信息的工具。
  • nm 工具获得了新的选择 --with-version-strings 显示符号名称后的版本信息(如果存在)。

(BZ#1641004, BZ#1637072, BZ#1501420, BZ#1504114, BZ#1614908, BZ#1614920)

执行副驾驶 版本4.1.3

Red Hat Enterprise Linux 8随附 绩效副驾驶 (pcp)4.1.3版。显着的改进包括:

  • pcp-dstat 工具现在包括历史分析和逗号分隔值(CSV)格式输出。
  • 日志实用程序可以使用度量标签和帮助文本记录。
  • pmdaperfevent 工具现在可以在较低的同步多线程(SMT)级别报告正确的CPU编号。
  • pmdapostgresql 工具现在支持 Postgres的 系列10.x.
  • pmdaredis 工具现在支持 Redis的 5.x系列
  • pmdabcc 工具已通过动态流程过滤和每进程系统调用,ucalls和ustat得到增强。
  • pmdammv 工具现在导出度量标签,格式版本增加到3。
  • pmdagfs2 工具支持额外的格洛克和格洛克持有人指标。
  • 已对SELinux策略进行了一些修复。

(BZ#1641034)

内存保护密钥

此更新启用了允许每线程页面保护标志更改的硬件功能。新的 glibc 系统调用包装器已添加为 pkey_alloc(), ,pkey_free(), ,和 pkey_mprotect() 功能。除此之外 pkey_set()pkey_get() 添加了函数以允许访问每线程保护标志。

(BZ#1304448)

elfutils 已更新至0.174版

在Red Hat Enterprise Linux 8中 的elfutils 软件包的版本号为0.174。值得注意的变化包括:

  • 以前, eu-readelf 工具可以显示具有负值的变量,就好像它具有较大的无符号值,或者将大的无符号值显示为负值。这已得到纠正 eu-readelf 现在查找常量值类型的大小和符号以正确显示它们。
  • 一个新功能 dwarf_next_lines() 阅读 .debug_line 缺少CU的数据已被添加到 libdw 图书馆。此功能可用作替代 dwarf_getsrclines()dwarf_getsrcfiles() 功能。
  • 以前,超过65280节的文件可能会导致错误 了libelflibdw 库和使用它们的所有工具。此错误已得到修复。结果,延长了 shnumshstrndx 正确处理ELF文件头中的值。

(BZ#1641007)

Valgrind已更新至3.14版

Red Hat Enterprise Linux 8随Valgrind可执行代码分析工具3.14版一起发布。值得注意的变化包括:

  • 一个新的 --keep-debuginfo 已添加选项以保留已卸载代码的调试信息。因此,保存的堆栈跟踪可以包含内存中不再存在的代码的文件和行信息。
  • 已添加基于源文件名和行号的抑制。
  • Helgrind 工具已经扩展了一个选项 --delta-stacktrace 指定完整历史堆栈跟踪的计算。值得注意的是,与此一起使用此选项 --history-level=full 可以改善 Helgrind 性能高达25%。
  • 假阳性率 Memcheck 用于优化英特尔和AMD 64位架构和ARM 64位架构代码的工具已经减少。请注意,您可以使用 --expensive-definedness-checks 控制定义检查的处理并以牺牲性能为代价来提高速率。
  • Valgrind现在可以识别IBM Power Systems的little-endian变体的更多指令。
  • Valgrind现在可以部分处理IBM Z体系结构z13处理器的整数和字符串向量指令。

有关新选项及其已知限制的详细信息,请参阅 valgrind(1) 手册页。

(BZ#1641029, BZ#1501419)

GDB版本8.2

Red Hat Enterprise Linux 8随GDB调试器版本8.2一起发布。值得注意的变化包括:

  • 支持IPv6协议进行GDB和GDB的远程调试 gdbserver
  • 没有调试信息的调试已得到改进。
  • GDB用户界面中的符号完成已得到改进,通过使用更多语法结构(如ABI标记或命名空间)提供更好的建议。
  • 命令现在可以在后台执行。
  • 现在可以使用Rust编程语言创建调试程序。
  • 调试C和C ++语言已得到改进,解析器支持 _Alignofalignof 运算符,C ++右值引用和C99可变长度自动数组。
  • GDB扩展脚本现在可以使用Guile脚本语言。
  • 扩展的Python脚本语言接口已经通过新的API函数,框架装饰器,过滤器和展开器进行了改进。另外,脚本在 .debug_gdb_scripts GDB配置部分自动加载。
  • GDB现在使用Python版本3来运行其脚本,包括漂亮的打印机,帧装饰器,过滤器和展开器。
  • ARM和64位ARM体系结构已通过流程执行记录和重放进行了改进,包括Thumb 32位和系统调用指令。
  • 增加了对英特尔MPX寄存器和绑定违规,PKU寄存器和英特尔处理器跟踪的支持。
  • 记录和重播功能已扩展到包括 rdrandrdseed 有关基于Intel的系统的说明。
  • GDB在IBM Z体系结构上的功能已得到扩展,支持跟踪点和快速跟踪点,向量寄存器和ABI,以及 Catch 系统调用。此外,GDB现在支持该架构的最新指令。
  • GDB现在可以在64位ARM体系结构上使用SystemTap静态用户空间探测器(SDT)。

(BZ#1641022, BZ#1497096, BZ#1505346, BZ#1592332)

RHEL的本地化分布在多个包中

在RHEL 8中,单一不再提供语言环境和翻译 glibc-common 包。相反,每个语言环境和语言都可用 glibc-langpack-CODE 包。此外,默认情况下不会安装所有语言环境,只会在安装程序中选择这些语言环境。用户必须单独安装所需的所有其他语言环境包。

有关使用langpacks的更多信息,请参阅 Installing and using langpacks

(BZ#1512009)

strace 已更新至4.24版

Red Hat Enterprise Linux 8随附了 strace 工具版本4.24。值得注意的变化包括:

  • 系统调用篡改功能已添加 -e inject= 选项。这包括注入错误,返回值,延迟和信号。
  • 系统调用资格已得到改进:

    • 一个 -e trace=/regex 已添加选项以使用正则表达式过滤系统调用。
    • 将问号添加到系统调用资格中 -e trace= 选项让 strace 即使资格与任何系统调用都不匹配,也要继续。
    • 个性化指定已被添加到系统调用资格中 -e trace 选项。
  • 解码 kvm vcpu 退出原因已被添加。为此,请使用 -e kvm=vcpu 选项。
  • libdw 库现在用于堆栈展开时 -k 使用选项。此外,当符号消除时,符号消除是可能的 libiberty 库已安装在系统上。
  • 以前, -r 选项造成的 strace 忽略了 -t 选项。这已经修复,现在两个选项是独立的。
  • 添加了[option]`-A选项,用于在追加模式下打开输出文件。
  • -X 已添加选项以进行配置 xlat 输出格式。
  • 使用。解码套接字地址 -yy 选项已得到改进。另外,打印块和字符设备号 -yy 模式已添加。

此外,还添加,改进或更新了以下项目的解码:

  • netlink 协议,消息和属性
  • arch_prctlbpf, ,getsockopt, ,io_pgetevent, ,kern_features, ,keyctl, ,prctl, ,pkey_alloc, ,pkey_free, ,pkey_mprotect, ,ptrace, ,rseq, ,setsockopt, ,socket, ,statx 和其他系统调用
  • 很多命令 ioctl 系统调用
  • 各种常数
  • 路径追踪 execveat, ,inotify_add_watch, ,inotify_init, ,select, ,symlink, ,symlinkat 系统调用和 mmap 系统调用间接参数
  • 特定于ARM体系结构的系统调用 __ARM_NR_*
  • 信号代码列表

(BZ#1641014)

4.11. 文件系统和存储 (机器翻译版本)

XFS现在支持共享的写时复制数据范围

XFS文件系统支持共享的写时复制数据扩展功能。此功能允许两个或多个文件共享一组公共数据块。当共享公共块的任一文件发生更改时,XFS会断开与公共块的链接并创建新文件。这类似于其他文件系统中的写时复制(COW)功能。

共享的写时复制数据范围是:

快速
创建共享副本不使用磁盘I / O.
空间高效
共享块不会占用额外的磁盘空间。
透明
共享公共块的文件就像常规文件一样。

用户空间实用程序可以使用共享的写时复制数据范围:

  • 高效的文件克隆,例如 cp --reflink 命令
  • 每个文件的快照

内核子系统(如Overlayfs和NFS)也使用此功能来实现更高效的操作。

现在,在创建XFS文件系统时,默认情况下会启用共享的写时复制数据扩展区 xfsprogs 包版本 4.17.0-2.el8

请注意,Direct Access(DAX)设备当前不支持具有共享写时复制数据范围的XFS。要创建没有此功能的XFS文件系统,请使用以下命令:

# mkfs.xfs -m reflink=0 block-device

Red Hat Enterprise Linux 7只能以只读模式安装具有共享写时复制数据扩展区的XFS文件系统。

(BZ#1494028)

最大XFS文件系统大小为1024 TiB

XFS文件系统支持的最大大小已从500 TiB增加到1024 TiB。

大于500 TiB的文件系统要求:

  • 元数据CRC功能和免费inode btree功能都以文件系统格式启用,并且
  • 分配组大小至少为512 GiB。

在RHEL 8中, mkfs.xfs 实用程序默认创建满足这些要求的文件系统。

不支持将不满足这些要求的较小文件系统发展为大于500 TiB的新大小。

(BZ#1563617)

VDO现在支持所有体系结构

虚拟数据优化器(VDO)现在可用于RHEL 8支持的所有体系结构。

有关支持的体系结构列表,请参阅 第 2 章 架构 (机器翻译版本)

(BZ#1534087)

BOOM启动管理器简化了创建启动条目的过程

BOOM是Linux系统的启动管理器,它使用支持引导入口配置的BootLoader规范的引导加载程序。它支持灵活的引导配置,并简化了新的或修改的引导条目的创建:例如,引导使用LVM创建的系统的快照映像。

BOOM不会修改现有的引导加载程序配置,只会插入其他条目。维护现有配置,并且任何分发集成(例如内核安装和更新脚本)将继续像以前一样运行。

BOOM具有简化的命令行界面(CLI)和API,可简化创建引导条目的任务。

(BZ#1649582)

LUKS2现在是加密卷的默认格式

在RHEL 8中,LUKS版本2(LUKS2)格式取代了传统的LUKS(LUKS1)格式。该 dm-crypt 子系统和 cryptsetup 工具现在使用LUKS2作为加密卷的默认格式。LUKS2为部分元数据损坏事件提供元数据冗余和自动恢复的加密卷。

由于内部灵活的布局,LUKS2也是未来功能的推动者。它支持通过内置的通用内核密钥环令牌自动解锁 libcryptsetup 允许用户使用存储在内核密钥环保留服务中的密码来解锁LUKS2卷。

其他值得注意的增强功能包括:

  • 使用包装密钥密码方案的受保护密钥设置。
  • 更容易与基于策略的解密(Clevis)集成。
  • 最多32个密钥插槽 - LUKS1仅提供8个密钥插槽。

有关详细信息,请参阅 cryptsetup(8)cryptsetup-reencrypt(8) 手册页。

(BZ#1564540)

Broadcom Emulex光纤通道适配器完全支持NVMe / FC

当与Broadcom Emulex光纤通道32Gbit适配器一起使用时,NVMe over Fibre Channel(NVMe / FC)传输类型现在在Initiator模式下得到完全支持。

除了之前在Red Hat Enterprise Linux中引入的远程直接内存访问(RDMA)协议之外,NVMe over Fibre Channel是非易失性存储器快速(NVMe)协议的附加结构传输类型。

启用NVMe / FC lpfc 司机,编辑 /etc/modprobe.d/lpfc.conf 文件并添加以下选项:

lpfc_enable_fc4_type=3

以外的司机 lpfc 仍然留在技术预览版中。

附加限制:

  • NVMe / FC不支持多路径。
  • NVMe / FC不支持NVMe群集。
  • 目前,Red Hat Enterprise Linux不支持同时在启动器端口上使用NVMe / FC和SCSI / FC。
  • 内核ALT 包不支持NVMe / FC。
  • kdump NVMe / FC不支持。
  • 从存储区域网络(SAN)引导NVMe / FC不受支持。

(BZ#1649497)

overrides DM Multipath配置文件的一部分

/etc/multipath.conf 文件现在包括一个 overrides 允许您为所有设备设置配置值的部分。DM Multipath将这些属性用于所有设备,除非它们被指定的属性覆盖 multipaths 部分 /etc/multipath.conf 包含设备的路径的文件。此功能取代了 all_devs 的参数 devices 配置文件的一部分,不再受支持。

(BZ#1643294)

现在支持从NVDIMM设备安装和引导

在此更新之前,安装程序会忽略任何模式下的非易失性双列直插式内存模块(NVDIMM)设备。

通过此更新,支持NVDIMM设备的内核改进为数据库或分析工作负载等写密集型应用程序提供了改进的系统性能和增强的文件系统访问,并降低了CPU开销。

此更新引入了以下支持:

  • 使用NVDIMM设备进行安装 nvdimm Kickstart命令和GUI,可以在扇区模式下从NVDIMM设备安装和启动,并在安装过程中将NVDIMM设备重新配置为扇区模式。
  • 延伸 Kickstart 的脚本 蟒蛇 用于处理NVDIMM设备的命令。
  • 的能力 grub2, ,efibootmgr, ,和 efivar 用于处理和启动NVDIMM设备的系统组件。

(BZ#1499442)

DM Multipath中边缘路径的检测得到了改进

multipathd service现在支持改进边缘路径的检测。这有助于多路径设备避免可能重复失败的路径,并提高性能。边际路径是具有持久但间歇性I / O错误的路径。

以下选项中 /etc/multipath.conf 文件控制边际路径行为:

  • marginal_path_double_failed_time,
  • marginal_path_err_sample_time,
  • marginal_path_err_rate_threshold,和
  • marginal_path_err_recheck_gap_time.

DM Multipath禁用路径并使用重复的I / O对配置的采样时间进行测试,如果:

  • 列出的 multipath.conf 选项设置,
  • 路径在配置的时间内失败两次,并且
  • 其他路径可用。

如果在此测试期间路径的配置错误率超过配置的错误率,则DM Multipath会在配置的间隔时间内忽略它,然后重新测试它以查看它是否运行良好以便恢复。

有关更多信息,请参阅 multipath.conf 手册页。

(BZ#1643550)

多种默认行为

块设备现在在Red Hat Enterprise Linux 8中使用多队列调度。这使得块层性能可以通过快速固态驱动器(SSD)和多核系统很好地扩展。

SCSI Multiqueue(scsi-mq)默认情况下,驱动程序已启用,并且内核使用 scsi_mod.use_blk_mq=Y 选项。此更改与上游Linux内核一致。

Device Mapper Multipath(DM Multipath)需要 scsi-mq 司机要活跃。

(BZ#1647612)

Stratis现已上市

Stratis是一位新的本地存储经理。它在存储池之上提供托管文件系统,并为用户提供其他功能。

Stratis使您可以更轻松地执行存储任务,例如:

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

要管理Stratis存储,请使用 stratis 实用程序,与之通信 stratisd 后台服务。

有关更多信息,请参阅Stratis文档: Managing layered local storage with Stratis

(JIRA:RHELPLAN-1212)

4.12. 高可用性和集群 (机器翻译版本)

pcs 命令列出可用的看门狗设备和测试看门狗设备

为了使用Pacemaker配置SBD,需要一个有效的看门狗设备。此版本支持 pcs stonith sbd watchdog list 命令列出本地节点上的可用监视程序设备,以及 pcs stonith sbd watchdog test 命令测试看门狗设备。有关的信息 sbd 命令行工具,请参阅 sbd(8)手册页。

(BZ#1578891)

pcs 命令现在支持按操作过滤资源故障及其间隔

Pacemaker现在可以在资源名称和节点之上跟踪每个资源操作的资源故障。该 pcs resource failcount show 命令现在允许按资源,节点,操作和间隔过滤失败。它提供了一个选项,用于显示按资源和节点聚合的故障,或按资源,节点,操作及其间隔详细说明的故障。另外, pcs resource failcount reset 命令现在允许按资源,节点,操作和间隔过滤失败。

(BZ#1591308)

启用时间戳 corosync 日志

corosync log之前没有包含时间戳,这使得很难将其与来自其他节点和守护进程的日志相关联。在此版本中,时间戳存在于 corosync 登录。

(BZ#1615420)

新的格式 pcs cluster setup, ,pcs cluster node addpcs cluster node remove 命令

在Red Hat Enterprise Linux 8中, pcs 完全支持Corosync 3, knet, 和节点名称。现在需要节点名称,并以节点标识符的角色替换节点地址。节点地址现在是可选的。

  • 在里面 pcs host auth 命令,节点地址默认为节点名称
  • 在里面 pcs cluster setuppcs cluster node add 命令,节点地址默认为中指定的节点地址 pcs host auth 命令。

通过这些更改,用于设置群集,向群集添加节点以及从群集中删除节点的命令的格式已更改。有关这些新命令格式的信息,请参阅帮助显示 pcs cluster setup, ,pcs cluster node addpcs cluster node remove 命令。

(BZ#1158816)

RHEL 8中的Pacemaker 2.0.0

pacemaker 软件包已升级到Pacemaker 2.0.0的上游版本,它提供了许多错误修复和增强功能:

  • Pacemaker详细日志现在是 /var/log/pacemaker/pacemaker.log 默认情况下(不直接在 /var/log 或与...结合 corosync 登录 /var/log/cluster)。
  • Pacemaker守护程序进程已重命名,以便更直观地读取日志。例如, pengine 已重命名为 pacemaker-schedulerd
  • 支持弃用 default-resource-stickinessis-managed-default 群集属性已被删除。该 resource-stickinessis-managed 应该在资源默认值中设置属性。使用已弃用语法的现有配置(尽管不是新创建的配置)将自动更新以使用支持的语法。
  • 有更完整的更改列表,请访问: https://access.redhat.com/articles/3681151

建议运行使用Red Hat Enterprise Linux 7或更早版本升级现有集群的用户 pcs cluster cib-upgrade 在所有群集节点上升级RHEL之前和之后的任何群集节点上。

(BZ#1543494)

主资源重命名为可升级的克隆资源

红帽企业Linux(RHEL)8支持Pacemaker 2.0,其中主/从资源不再是单独的资源类型,而是具有标准克隆资源的标准克隆资源 promotable 元属性设置为 true。为支持此更新,已实施以下更改:

  • 不再可以使用。创建主资源 pcs 命令。相反,它可以创建 promotable 克隆资源。相关的关键词和命令已经改变 masterpromotable
  • 所有现有主资源都显示为可升级克隆资源。
  • 在Web UI中管理RHEL7集群时,主资源仍称为master,因为RHEL7集群不支持可升级克隆。

(BZ#1542288)

用于验证集群中节点的新命令

红帽企业Linux(RHEL)8对用于验证群集中节点的命令进行了以下更改。

  • 用于身份验证的新命令是 pcs host auth。此命令允许用户指定主机名,地址和 pcsd 端口。
  • pcs cluster auth command仅对本地群集中的节点进行身份验证,并且不接受节点列表
  • 现在可以为每个节点指定一个地址。 pcs/pcsd 然后将使用指定的地址与每个节点通信。这些地址可能与那些地址不同 corosync 在内部使用。
  • pcs pcsd clear-auth 命令已被替换 pcs pcsd deauthpcs host deauth 命令。新命令允许用户取消验证单个主机以及所有主机。
  • 以前,节点身份验证是双向的,并运行 pcs cluster auth 命令导致所有指定的节点相互进行身份验证。该 pcs host auth 但是,命令仅导致本地主机针对指定节点进行身份验证。这样可以在运行此命令时更好地控制对其他节点进行身份验证的节点。在群集设置本身以及添加节点时, pcs 自动同步集群上的令牌,因此集群中的所有节点仍然像以前一样自动进行身份验证,并且集群节点可以相互通信。

请注意,这些更改不向后兼容。在RHEL 7系统上进行身份验证的节点需要再次进行身份验证。

(BZ#1549535)

pcs 命令现在支持屏蔽历史记录的显示,清理和同步

Pacemaker的fence守护进程跟踪所有围栏操作的历史记录(待处理,成功和失败)。有了这个版本, pcs 命令允许用户通过以下方式访问防护历史记录:

  • pcs status 命令显示失败和挂起的防护操作
  • pcs status --full 命令显示整个屏蔽历史记录
  • pcs stonith history command提供显示和清除防护历史记录的选项
  • 虽然防护历史是自动同步的,但是 pcs stonith history 命令现在支持 update 允许用户在必要时手动同步防护历史记录的选项

(BZ#1620190, BZ#1615891)

4.13. 联网 (机器翻译版本)

nftables 取代 iptables 作为默认的网络包过滤框架

nftables 框架提供了数据包分类工具,它是指定的继承者 iptables, ,ip6tables, ,arptables, ,和 ebtables 工具。与以前的数据包过滤工具相比,它在方便性,功能和性能方面提供了许多改进,最值得注意的是:

  • 查找表而不是线性处理
  • 两者的单一框架 IPv4IPv6 协议
  • 所有规则都以原子方式应用,而不是获取,更新和存储完整的规则集
  • 支持在规则集中进行调试和跟踪(nftrace并监控跟踪事件(在 nft 工具)
  • 更一致和紧凑的语法,没有特定于协议的扩展
  • 适用于第三方应用程序的Netlink API

与...类似 iptables, ,nftables 使用表来存储链。链包含执行操作的单独规则。该 nft 工具取代了以前的数据包过滤框架中的所有工具。该 libnftables 库可以用于低级别的交互 nftables Netlink API上 libmnl 图书馆。

iptables, ,ip6tables, ,ebtablesarptables 工具由具有相同名称的基于nftables的插入式替换替换。虽然外部行为与传统行为相同,但在内部使用 nftables 与遗产 netfilter 内核模块通过所需的兼容性接口。

模块对模块的影响 nftables 可以使用。来观察规则集 nft list ruleset 命令。由于这些工具将表,链和规则添加到 nftables 规则集,请注意 nftables 规则集操作,例如 nft flush ruleset 命令可能会影响使用以前单独的旧命令安装的规则集。

要快速识别工具的哪个变体,版本信息已更新为包含后端名称。在RHEL 8中,基于nftables iptables 工具打印以下版本字符串:

$ iptables --version
iptables v1.8.0 (nf_tables)

为了进行比较,如果是旧版,则打印以下版本信息 iptables 工具存在:

$ iptables --version
iptables v1.8.0 (legacy)

(BZ#1644030)

RHEL 8中值得注意的TCP功能

红帽企业版Linux 8与TCP网络堆栈版本4.16一起分发,提供更高的性能,更好的可扩展性和更高的稳定性。特别是对于具有高入口连接速率的繁忙TCP服务器,性能得到提升。

另外,两个新的TCP拥塞算法, BBRNV, ,可用,在大多数情况下提供比立方更低的延迟和更好的吞吐量。

(BZ#1562998)

firewalld 使用 nftables 默认情况下

有了这个更新, nftables 过滤子系统是默认的防火墙后端 firewalld 守护进程。要更改后端,请使用 FirewallBackend 选项 /etc/firewalld.conf 文件。

此更改在使用时引入了以下行为差异 nftables

  1. iptables 规则执行总是在之前发生 firewalld 规则

    • DROPiptables 表示从未见过数据包 firewalld
    • ACCEPTiptables 表示数据包仍然受制于 firewalld 规则
  2. firewalld 直接规则仍然通过实施 iptables 而其他 firewalld 功能使用 nftables
  3. 直接规则执行发生之前 firewalld 对已建立的连接的一般接受

(BZ#1509026)

值得注意的变化 wpa_supplicant 在RHEL 8中

在Red Hat Enterprise Linux(RHEL)8中 wpa_supplicant 包是用 CONFIG_DEBUG_SYSLOG 启用。这允许阅读 wpa_supplicant 用日志记录 journalctl 实用程序而不是检查的内容 /var/log/wpa_supplicant.log 文件。

(BZ#1582538)

网络管理器 现在支持SR-IOV虚拟功能

在Red Hat Enterprise Linux 8.0中, 网络管理器 允许为支持单根I / O虚拟化(SR-IOV)的接口配置虚拟功能(VF)的数量。另外, 网络管理器 允许配置VF的某些属性,例如MAC地址,VLAN,等 spoof checking 设置和允许比特率。请注意,所有与SR-IOV相关的属性都可以在 sriov 连接设置。有关详细信息,请参阅 nm-settings(5) 手册页。

(BZ#1555013)

现在支持IPVLAN虚拟网络驱动程序

在Red Hat Enterprise Linux 8.0中,内核包括对IPVLAN虚拟网络驱动程序的支持。通过此更新,IPVLAN虚拟网络接口卡(NIC)可为多个容器启用网络连接,从而将单个MAC地址暴露给本地网络。这允许单个主机具有许多容器,以克服对等网络设备支持的MAC地址数量的可能限制。

(BZ#1261167)

网络管理器 支持连接的通配符接口名称匹配

以前,可以仅使用接口名称上的完全匹配来限制与给定接口的连接。通过此更新,连接有一个新的 match.interface-name 支持通配符的属性。此更新使用户能够使用通配符模式以更灵活的方式为连接选择接口。

(BZ#1555012)

网络堆栈的改进4.18

红帽企业Linux 8.0包括升级到上游版本4.18的网络堆栈,它提供了一些错误修复和增强功能。值得注意的变化包括:

  • 引入了新的卸载功能,例如 UDP_GSO, ,对于某些设备驱动程序, GRO_HW
  • 改进了用户数据报协议(UDP)的显着可扩展性。
  • 改进了通用繁忙轮询代码。
  • 改进了IPv6协议的可扩展性。
  • 改进了路由代码的可扩展性。
  • 添加了新的默认传输队列调度算法,fq_codel, ,这改善了传输延迟。
  • 改进了一些传输队列调度算法的可扩展性。例如, pfifo_fast 现在无锁。

(BZ#1562987)

转换的新工具 iptablesnftables

此更新添加了 iptables-translateip6tables-translate 转换现有的工具 iptables 要么 ip6tables 规则等同于 nftables。请注意,某些扩展缺少翻译支持。如果存在这样的扩展名,则该工具将打印带有前缀的未翻译规则 # 标志。例如:

| % iptables-translate -A INPUT -j CHECKSUM --checksum-fill
| nft # -A INPUT -j CHECKSUM --checksum-fill

此外,用户可以使用 iptables-restore-translateip6tables-restore-translate 翻译规则转储的工具。请注意,在此之前,用户可以使用 iptables-save 要么 ip6tables-save 用于打印当前规则转储的命令。例如:

| % sudo iptables-save >/tmp/iptables.dump
| % iptables-restore-translate -f /tmp/iptables.dump
| # Translated by iptables-restore-translate v1.8.0 on Wed Oct 17 17:00:13 2018
| add table ip nat
| ...

(BZ#1564596)

使用添加到VPN的新功能 网络管理器

在Red Hat Enterprise Linux 8.0中, 网络管理器 为VPN提供以下新功能:

  • 支持Internet密钥交换版本2(IKEv2)协议。
  • 添加了一些 Libreswan 选项,例如 rightid, ,leftcert, ,narrowing, ,rekey, ,fragmentation 选项。有关支持的选项的更多详细信息,请参阅 nm-settings-libreswan 手册页。
  • 更新了默认密码。这意味着当用户没有指定密码时, NetworkManager的-libreswan 插件允许 Libreswan 应用程序选择系统默认密码。唯一的例外是用户选择IKEv1主动模式配置。在这种情况下, ike = aes256-sha1;modp1536eps = aes256-sha1 值传递给 Libreswan

(BZ#1557035)

一种新的数据块类型, I-DATA, ,添加到SCTP

此更新添加了新的数据块类型, I-DATA, ,以及流调度传输协议(SCTP)的流调度程序。以前,SCTP以与用户发送的顺序相同的顺序发送用户消息。因此,大型SCTP用户消息会阻止任何流中的所有其他消息,直到完全发送。使用时 I-DATA 块,传输序列号(TSN)字段不会过载。因此,SCTP现在可以以不同的方式安排流,并且 I-DATA 允许用户消息交错(RFC 8260)。请注意,两个对等方都必须支持 I-DATA 块类型。

(BZ#1273139)

4.14. 安全 (机器翻译版本)

SCAP安全指南PCI-DSS配置文件与版本3.2.1一致

SCAP Security Guide 该项目为Red Hat Enterprise Linux 8提供了PCI-DSS(支付卡行业数据安全标准)配置文件,并且已经更新以符合最新的PCI-DSS版本 - 3.2.1。

(BZ#1618528)

OpenSSH的 重新定义为7.8p1版本

openssh 软件包已升级到上游版本7.8p1。值得注意的变化包括:

  • 删除了支持 SSH version 1 协议。
  • 删除了支持 hmac-ripemd160 消息验证码。
  • 删除了对RC4的支持(arcfour)密码。
  • 删除了支持 Blowfish 密码。
  • 删除了支持 CAST 密码。
  • 更改了默认值 UseDNS 选项 no
  • DSA 公钥算法默认情况下。
  • 更改了最小模数大小 Diffie-Hellman 参数为2048位。
  • 改变了语义 ExposeAuthInfo 配置选项。
  • UsePrivilegeSeparation=sandbox 选项现在是强制性的,无法禁用。
  • 设置接受的最小值 RSA 密钥大小为1024位。

(BZ#1622511)

现在支持RSA-PSS OpenSC

此更新增加了对RSA-PSS加密签名方案的支持 OpenSC 智能卡驱动程序。新方案支持客户端软件中TLS 1.3支持所需的安全加密算法。

(BZ#1595626)

值得注意的变化 rsyslog 在RHEL 8中

rsyslog 软件包已升级到上游版本8.37.0,它提供了许多错误修复和增强功能。最值得注意的变化包括:

  • 增强处理 rsyslog现在 内部消息;限制它们的可能性;修复了可能的死锁。
  • 一般来说,增强了速率限制;实际上 垃圾邮件源 现在已记录。
  • 改进了对超大消息的处理 - 用户现在可以设置如何在核心和某些模块中使用单独的操作来处理它们。
  • mmnormalize 规则库现在可以嵌入到 config 文件而不是为它们创建单独的文件。
  • 用户现在可以设置 的GnuTLS 优先级字符串 imtcp 允许对加密进行细粒度控制。
  • 所有 config 变量(包括JSON中的变量)现在不区分大小写。
  • PostgreSQL输出的各种改进。
  • 添加了使用shell变量来控制的可能性 config 处理,例如条件加载其他配置文件,执行语句或包含文本 config。请注意,过度使用此功能会使调试问题变得非常困难 rsyslog现在
  • 现在可以在中指定4位文件创建模式 config
  • 可靠的事件记录协议(RELP)输入现在也只能绑定在指定的地址上。
  • 默认值 enable.body 邮件输出选项现在与文档对齐
  • 用户现在可以指定应该忽略的插入错误代码 MongoDB的 输出。
  • 并行TCP(pTCP)输入现在具有可配置的积压,以实现更好的负载平衡。

(BZ#1613880)

rsyslog现在 模块: omkafka

启用 卡夫卡 集中式数据存储方案,您现在可以将日志转发到 卡夫卡 使用新的基础设施 omkafka 模块。

(BZ#1542497)

libssh 将SSH实现为核心加密组件

这个改变介绍了 libssh 作为Red Hat Enterprise Linux 8中的核心加密组件。该 libssh library实现了Secure SHell(SSH)协议。

注意 libssh 不符合系统范围的加密策略。

(BZ#1485241)

PKCS#11对智能卡和HSM的支持现在在整个系统中保持一致

通过此更新,使用智能卡和硬件安全模块(HSM)与PKCS#11加密令牌接口变得一致。这意味着用户和管理员可以对系统中的所有相关工具使用相同的语法。显着的增强功能包括:

  • 支持PKCS#11统一资源标识符(URI)方案,确保在管理员和应用程序编写者的RHEL服务器上简化启用令牌。
  • 一种用于智能卡和HSM的系统级注册方法 pkcs11.conf
  • NSS,GnuTLS和OpenSSL提供对HSM和智能卡的一致支持(通过 openssl-pkcs11 引擎)应用程序。
  • Apache HTTP服务器(httpd)现在无缝支持HSM。

有关更多信息,请参阅 pkcs11.conf(5) 手册页。

(BZ#1516741)

默认情况下应用系统范围的加密策略

加密策略是红帽企业Linux 8中的一个组件,它配置核心加密子系统,涵盖TLS,IPSec,SSH,DNSSec和Kerberos协议。它提供了一小组策略,管理员可以使用这些策略进行选择 update-crypto-policies 命令。

DEFAULT 系统范围的加密策略为当前威胁模型提供安全设置。它允许TLS 1.2和1.3协议,以及IKEv2和SSH2协议。如果大于2047位,则接受RSA密钥和Diffie-Hellman参数。

Consistent security by crypto policies in Red Hat Enterprise Linux 8 关于红帽博客的文章和 update-crypto-policies(8) 手册页以获取更多信息。

(BZ#1591620)

SCAP安全指南支持OSPP 4.2

SCAP Security Guide 提供了针对Red Hat Enterprise Linux 8的OSPP(通用操作系统保护配置文件)配置文件4.2的草案。此配置文件反映了通用操作系统保护配置文件(保护配置文件版本4.2)的NIAP配置附件中标识的强制配置控制。SCAP安全指南提供自动检查和脚本,使用户能够满足OSPP中定义的要求。

(BZ#1618518)

OpenSCAP命令行界面得到了改进

现在可以使用详细模式 oscap 模块和子模块。工具输出改进了格式。

已删除不推荐使用的选项以提高命令行界面的可用性。

以下选项不再可用:

  • --showoscap xccdf generate report 已完全删除。
  • --probe-rootoscap oval eval 已被删除。它可以通过设置环境变量来替换, OSCAP_PROBE_ROOT
  • --sce-resultsoscap xccdf eval 已被取代 --check-engine-results
  • validate-xml 子模块已从CPE,OVAL和XCCDF模块中删除。 validate 可以使用子模块来根据XML模式和XSD架构来验证SCAP内容。
  • oscap oval list-probes 命令已被删除,可以使用显示可用探针列表 oscap --version 代替。

OpenSCAP允许评估给定XCCDF基准测试中的所有规则,无论使用何种配置文件 --profile '(all)'

(BZ#1618484)

支持新的地图权限检查 mmap 系统调用

SELinux map 已添加权限以控制对文件,目录,套接字等的内存映射访问。这允许SELinux策略阻止对各种文件系统对象的直接内存访问,并确保重新验证每个此类访问。

(BZ#1592244)

SELinux现在支持 systemd No New Privileges

此更新介绍了 nnp_nosuid_transition 策略功能,启用SELinux域转换 No New Privileges (NNP)或 nosuid 如果 nnp_nosuid_transition 允许在新旧环境之间进行。该 selinux-policy 包现在包含一个策略 systemd 使用该服务的服务 NNP 安全功能。

以下规则描述了为服务允许此功能:

   allow source_domain  target_type:process2 { nnp_transition nosuid_transition };

例如:

   allow init_t fprintd_t:process2 { nnp_transition nosuid_transition };

分发策略现在还包含m4宏接口,可以在SELinux安全策略中用于使用该服务的服务 init_nnp_daemon_domain() 功能。

(BZ#1594111)

SELinux现在支持 getrlimit 许可 process

此更新引入了一个新的SELinux访问控制检查, process:getrlimit, ,已添加为 prlimit() 功能。这使SELinux策略开发人员能够控制一个进程何时尝试读取,然后使用该进程修改另一个进程的资源限制 process:setrlimit 允许。请注意,SELinux不会限制进程通过操纵自己的资源限制 prlimit()。见 prlimit(2)getrlimit(2) 手册页了解更多信息。

(BZ#1549772)

加密库中的TLS 1.3支持

此更新默认在所有主要后端加密库中启用传输层安全性(TLS)1.3。这样可以在整个操作系统通信层实现低延迟,并通过利用新算法(如RSA-PSS或X25519)增强应用程序的隐私性和安全性。

(BZ#1516728)

新功能 OpenSCAP 在RHEL 8中

OpenSCAP 套件已升级到上游版本1.3.0,它引入了许多先前版本的增强功能。最显着的功能包括:

  • API和ABI已合并 - 已删除已更新,已弃用和/或未使用的符号。
  • 探针不作为独立进程运行,而是作为独立进程运行 oscap 处理。
  • 命令行界面已更新。
  • Python 2 绑定已被替换为 Python 3 绑定。

(BZ#1614273)

Audit 3.0取代了 audispdauditd

有了这个更新,功能 audispd 已被转移到 auditd。结果是, audispd 配置选项现在是其中的一部分 auditd.conf。除此之外 plugins.d 目录已被移动 /etc/audit。目前的状况 auditd 现在可以通过运行来检查其插件 service auditd state 命令。

(BZ#1616428)

rsyslog现在 imfile 现在支持符号链接

有了这个更新, rsyslog现在 imfile 模块提供更好的性能和更多配置选项。这允许您将模块用于更复杂的文件监视用例。例如,您现在可以在配置的路径中的任何位置使用具有glob模式的文件监视器,并使用增加的数据吞吐量旋转符号链接目标。

(BZ#1614179)

自动 OpenSSH 服务器密钥生成现在由处理 sshd-keygen@.service

OpenSSH 如果缺少RSA,ECDSA和ED25519服务器主机密钥,则会自动创建它们。要在RHEL 8中配置主机密钥创建,请使用 sshd-keygen@.service 实例化的服务。

例如,要禁用自动创建RSA密钥类型:

# systemctl mask sshd-keygen@rsa.service

/etc/sysconfig/sshd 文件以获取更多信息。

(BZ#1228088)

默认 rsyslog 配置文件格式现在是非遗留的

中的配置文件 rsyslog 软件包现在默认使用非传统格式。遗留格式仍然可以使用,但是,混合当前和遗留配置语句有几个限制。应修改先前RHEL版本中的配置。见 rsyslog.conf(5) 手册页以获取更多信息。

(BZ#1619645)

新的SELinux布尔

SELinux系统策略的此更新引入了以下布尔值:

  • colord_use_nfs
  • mysql_connect_http
  • pdns_can_network_connect_db
  • ssh_use_tcpd
  • sslh_can_bind_any_port
  • sslh_can_connect_any_port
  • virt_use_pcscd

有关更多详细信息,请参阅以下命令的输出:

# semanage boolean -l

(JIRA:RHELPLAN-10347)

4.15. 虚拟化 (机器翻译版本)

KVM支持5级分页

借助Red Hat Enterprise Linux 8,KVM虚拟化支持5级分页功能,可显着增加主机和客户机系统可以使用的物理和虚拟地址空间。

(BZ#1485229)

KVM支持RHEL 8中的UMIP

KVM虚拟化现在支持用户模式指令防护(UMIP)功能,该功能有助于防止用户空间应用程序访问系统范围的设置。这减少了特权升级攻击的潜在载体,从而使KVM管理程序及其客户机更安全。

(BZ#1494651)

KVM来宾崩溃报告中的其他信息

如果guest虚拟机意外终止或无响应,KVM管理程序生成的崩溃信息已经扩展。这样可以更轻松地诊断和修复KVM虚拟化部署中的问题。

(BZ#1508139)

qemu-kvm RHEL 8中的2.12

Red Hat Enterprise Linux 8随附 qemu-kvm 2.12。此版本修复了多个错误,并在1.5.3版本中添加了许多增强功能,可在Red Hat Enterprise Linux 7中使用。

值得注意的是,已经引入了以下功能:

  • Q35客机类型
  • UEFI来宾启动
  • NUMA在客人中调整和固定
  • vCPU热插拔和热插拔
  • 客户I / O线程

请注意一些可用的功能 qemu-kvm Red Hat Enterprise Linux 8不支持2.12。有关详细信息,请参阅Red Hat客户门户上的“RHEL 8虚拟化中的功能支持和限制”。

(BZ#1559240)

NVIDIA vGPU现在与VNC控制台兼容

使用NVIDIA虚拟GPU(vGPU)功能时,现在可以使用VNC控制台显示来宾的可视输出。

(BZ#1497911)

Ceph受虚拟化支持

通过此更新,Red Hat支持的所有CPU架构上的KVM虚拟化都支持Ceph存储。

(BZ#1578855)

Q35 虚拟化现在支持机器类型

Red Hat Enterprise Linux 8引入了支持 Q35, ,一种更现代的基于PCI Express的机器类型。这为虚拟设备的功能和性能提供了各种改进,并确保更广泛的现代设备与虚拟化兼容。此外,在Red Hat Enterprise Linux 8中创建的虚拟机也可以使用 Q35 默认情况下。

还要注意以前的默认值 个人计算机 机器类型已被弃用,只应在虚拟化不支持Q35的旧操作系统时使用。

(BZ#1599777)

IBM Z上虚拟机的交互式引导加载程序

在IBM Z主机上引导虚拟机(VM)时,QEMU引导加载程序固件现在提供交互式控制台界面。这使得可以在不访问主机环境的情况下解决客户操作系统引导问题。

(BZ#1508137)

QEMU沙盒已添加

在Red Hat Enterprise Linux 8中,QEMU仿真器引入了沙盒功能。QEMU沙盒为QEMU可以执行的系统调用提供了可配置的限制,从而使虚拟机更加安全。请注意,默认情况下已启用并配置此功能。

(JIRA:RHELPLAN-10628)

为Intel Xeon SnowRidge启用了GFNI和CLDEMOT指令集

在Intel Xeon SnowRidge系统上的RHEL 8主机中运行的虚拟机(VM)现在可以使用GFNI和CLDEMOT指令集。在某些情况下,这可能会显着提高此类VM的性能。

(BZ#1494705)

添加了一个用于NVMe设备的基于VFIO的块驱动程序

QEMU仿真器为非易失性存储器快速(NVMe)设备引入了基于虚拟功能I / O(VFIO)的驱动程序。驱动程序直接与连接到虚拟机(VM)的NVMe设备通信,并避免使用内核系统层及其NVMe驱动程序。因此,这增强了NVMe设备在虚拟机中的性能。

(BZ#1519004)

改进了巨大的页面支持

使用RHEL 8作为虚拟化主机时,用户可以将支持虚拟机(VM)内存的页面大小修改为CPU支持的任何大小。这可以显着提高VM的性能。

要配置VM内存页面的大小,请编辑VM的XML配置并将<hugepages>元素添加到<memoryBacking>部分。

(JIRA:RHELPLAN-14607)

4.16. 保障性 (机器翻译版本)

sosreport 可以报告基于eBPF的程序和地图

sosreport 工具已得到增强,可在Red Hat Enterprise Linux 8中报告任何已加载的扩展Berkeley数据包过滤(eBPF)程序和映射。

(BZ#1559836)

第 5 章 技术预览 (机器翻译版本)

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

有关Red Hat技术预览功能支持范围的信息,请参阅 Technology Preview Features Support Scope

5.1. 核心 (机器翻译版本)

XDP 作为技术预览版提供

eXpress数据路径(XDP) 功能,作为技术预览版提供,提供了一种上传伯克利数据包过滤器(BPF)程序的方法,用于内核中的高性能数据包处理,使内核的网络数据路径可编程。

(BZ#1503672)

eBPF 作为技术预览版提供

扩展伯克利包过滤(eBPF) 功能可用作网络和跟踪的技术预览。 eBPF 使用户空间能够将自定义程序附加到各种点(套接字,跟踪点,数据包接收)以接收和处理数据。该功能包括一个新的系统调用 bpf(), ,它允许创建各种类型的地图,并且还可以将各种类型的程序插入到内核中。见 bpf(2)手册页了解更多信息。

(BZ#1559616)

BCC 可用作技术预览版

BPF Compiler Collection (BCC) 是一个用户空间工具包,用于创建高效的内核跟踪和操作程序,可作为Red Hat Enterprise Linux 8中的技术预览版提供。 BCC 提供了使用Linux进行I / O分析,联网和监视Linux操作系统的工具 extended Berkeley Packet Filtering (eBPF)

(BZ#1548302)

控制组v2 在RHEL 8中作为技术预览版提供

控制组v2 机制是统一的层次控制组。控制组v2 按层次组织流程,并以受控和可配置的方式沿层次结构分配系统资源。

与以前的版本不同, 控制组v2 只有一个层次结构。这个单一的层次结构使Linux内核能够:

  • 根据所有者的角色对流程进行分类。
  • 消除多个层次结构的冲突策略的问题。

控制组v2 支持众多控制器:

  • CPU控制器调节CPU周期的分布。该控制器实现:

    • 正常调度策略的权重和绝对带宽限制模型。
    • 实时调度策略的绝对带宽分配模型。
  • 内存控制器调节内存分配。目前,跟踪以下类型的内存使用情况:

    • Userland内存 - 页面缓存和匿名内存。
    • 内核数据结构,例如dentries和inode。
    • TCP套接字缓冲区。
  • I / O控制器调节I / O资源的分配。
  • 写回控制器与内存和I / O控制器进行交互 控制组v2 具体。

以上信息基于链接: https://www.kernel.org/doc/Documentation/cgroup-v2.txt。您可以参考相同的链接以获取有关特定信息的更多信息 控制组v2 控制器。

(BZ#1401552)

early kdump 在Red Hat Enterprise Linux 8中作为技术预览版提供

early kdump 功能允许崩溃内核和initramfs尽早加载以捕获 vmcore 即使是早期崩溃的信息。有关的更多详细信息 early kdump, ,见 /usr/share/doc/kexec-tools/early-kdump-howto.txt 文件。

(BZ#1520209)

5.2. 文件系统和存储 (机器翻译版本)

VDO可用作LVM逻辑卷类型

LVM现在可用于创建逻辑卷 虚拟数据优化器 (VDO)类型。VDO是一种虚拟块设备,能够压缩和重复数据删除。

这是技术预览功能。

(BZ#1643553)

支持数据完整性字段/数据完整性扩展(DIF / DIX)

DIF / DIX是SCSI标准的补充。它保留在所有HBA和存储阵列的技术预览中,但特别列为支持的那些除外。

DIF / DIX将常用的512字节磁盘块的大小从512增加到520字节,添加了数据完整性字段(DIF)。DIF存储数据块的校验和值,该值由主机总线适配器(HBA)在发生写入时计算。然后,存储设备在接收时确认校验和,并存储数据和校验和。相反,当发生读取时,校验和可以由存储设备和接收HBA验证。

(BZ#1649493)

NVMe / FC可作为Qlogic适配器中的技术预览版使用 qla2xxx

NVMe over Fibre Channel(NVMe / FC)传输类型可在Qlogic适配器中作为技术预览使用 qla2xxx 驱动程序。

(BZ#1649922)

5.3. 高可用性和集群 (机器翻译版本)

起搏器 podman 捆绑包可用作技术预览版

Pacemaker容器捆绑现在运行在 podman 容器平台,容器捆绑功能可用作技术预览。此功能有一个例外是技术预览:Red Hat完全支持在Red Hat Openstack中使用Pacemaker捆绑包。

(BZ#1619620)

5.4. 安全 (机器翻译版本)

RHEL 8.0版本的SWID标记

要使用ISO / IEC 19770-2:2015机制识别RHEL 8.0安装,软件标识(SWID)标签安装在文件中 /usr/lib/swidtag/redhat.com/com.redhat.RHEL-8-<architecture>.swidtag/usr/lib/swidtag/redhat.com/com.redhat.RHEL-8.0-<architecture>.swidtag。这些标签的父目录也可以通过以下方式找到 /etc/swid/swidtags.d/redhat.com 象征性的联系。

可以使用以下命令验证SWID标记文件的XML签名 xmlsec1 verify 命令,例如:

xmlsec1 verify --trusted-pem /etc/pki/swid/CA/redhat.com/redhatcodesignca.cert /usr/share/redhat.com/com.redhat.RHEL-8-x86_64.swidtag

代码签名证书颁发机构的证书也可以从中获取 Product Signing Keys 客户门户网站上的页面。

(BZ#1636338)

5.5. 虚拟化 (机器翻译版本)

适用于KVM虚拟机的AMD SEV

作为技术预览版,RHEL 8为使用KVM管理程序的AMD EPYC主机引入了安全加密虚拟化(SEV)功能。如果在虚拟机(VM)上启用,则SEV会加密VM内存,以便主机无法访问VM上的数据。如果主机被恶意软件成功感染,这可以提高VM的安全性。

请注意,在单个主机上一次可以使用此功能的VM数由主机硬件决定。目前的AMD EPYC处理器使用SEV支持15个或更少的运行VM。

(BZ#1501618, BZ#1501607)

嵌套虚拟化现在可在IBM POWER 9上使用

作为技术预览版,现在可以在IBM POWER 9系统上运行的RHEL 8主机上使用嵌套虚拟化功能。嵌套虚拟化使KVM虚拟机(VM)充当虚拟机管理程序,允许在虚拟机内运行虚拟机。

请注意,对于可在IBM POWER 9上运行的嵌套虚拟化,主机,guest虚拟机和嵌套guest虚拟机当前都需要运行以下操作系统之一:

  • RHEL 8
  • RHEL 7 for POWER 9

(BZ#1505999)

第 6 章 不推荐使用的功能 (机器翻译版本)

本部分概述了Red Hat Enterprise Linux 8.0中已弃用的功能。

在Red Hat Enterprise Linux 8生命周期结束之前,将继续支持不推荐使用的功能。在此产品的未来主要版本中可能不支持不推荐使用的功能,不建议用于新部署。有关特定主要版本中最新的已弃用功能列表,请参阅最新版本的发行文档。

建议不要将弃用的硬件组件用于当前或未来主要版本的新部署。硬件驱动程序更新仅限于安全性和关键修复程序。Red Hat建议在合理可行的情况下尽快更换此硬件。

可以弃用软件包,不建议将其用于进一步使用。在某些情况下,可以从产品中删除包装。然后,产品文档会识别更新的软件包,这些软件包提供与已弃用的软件类似,相同或更高级的功能,并提供进一步的建议。

6.1. 安装程序和映像创建 (机器翻译版本)

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

使用 --interactive option 在未来的Red Hat Enterprise Linux版本中,将导致致命的安装错误。建议您修改Kickstart文件以删除该选项。

(BZ#1637872)

6.2. 文件系统和存储 (机器翻译版本)

已禁用UDP上的NFSv3

默认情况下,NFS服务器不再打开或侦听用户数据报协议(UDP)套接字。此更改仅影响NFS版本3,因为版本4需要传输控制协议(TCP)。

RHEL 8不再支持NFS over UDP。

(BZ#1592011)

不推荐使用NVMe / FC目标模式

非光纤内存高速通过光纤通道(NVMe / FC)传输协议的目标模式以前在RHEL 7中作为技术预览版提供。在RHEL 8中,不推荐使用NVMe / FC目标模式。

在NVMe目标模式下启用FC主机总线适配器(HBA)端口会导致以下错误消息:

Warning: NVMe over FC Target - This driver has not undergone sufficient testing by Red Hat for this release and therefore cannot be used in production systems.

(BZ#1664838)

6.3. 联网 (机器翻译版本)

RHEL 8中不推荐使用网络脚本

Red Hat Enterprise Linux 8中不推荐使用网络脚本,默认情况下不再提供它们。基本安装提供了新版本的 ifupifdown 调用的脚本 网络管理器 通过服务 nmcli 工具。在Red Hat Enterprise Linux 8中,运行 ifupifdown 脚本,NetworkManager必须正在运行。

请注意,自定义命令 /sbin/ifup-local, ,ifdown-pre-localifdown-local 脚本不会被执行。

如果需要这些脚本中的任何一个,则仍可以使用以下命令在系统中安装已弃用的网络脚本:

~]# yum install network-scripts

ifupifdown 脚本链接到已安装的旧网络脚本。

调用旧网络脚本会显示有关其弃用的警告。

(BZ#1647725)

6.4. 安全 (机器翻译版本)

DSA在Red Hat Enterprise Linux 8中已弃用

数字签名算法(DSA)在Red Hat Enterprise Linux 8中被认为已弃用。依赖于DSA密钥的身份验证机制在默认配置中不起作用。注意 OpenSSH 即使在LEGACY策略中,客户端也不接受DSA主机密钥。

(BZ#1646541)

SSL2 Client Hello 已被弃用 NSS

传输层安全性(TLS)协议版本1.2及更早版本允许与a开始协商 Client Hello 以与安全套接字层向后兼容的方式格式化的消息(SSL)协议版本2。在网络安全服务中支持此功能(NSS)库已被弃用,默认情况下禁用。

需要支持此功能的应用程序需要使用新功能 SSL_ENABLE_V2_COMPATIBLE_HELLO 用于启用它的API。在未来的Red Hat Enterprise Linux 8版本中,可能会完全删除对此功能的支持。

(BZ#1645153)

6.5. 虚拟化 (机器翻译版本)

RHEL 8中未正确支持虚拟机快照

目前创建虚拟机(VM)快照的机制已被弃用,因为它无法可靠地运行。因此,建议不要在RHEL 8中使用VM快照。

请注意,新的VM快照机制正在开发中,将在RHEL 8的未来次要版本中完全实现。

(BZ#1686057)

Cirrus VGA 虚拟GPU类型已被弃用

随着红帽企业Linux的未来重大更新, Cirrus VGA KVM虚拟机将不再支持GPU设备。因此,Red Hat建议使用 stdvga, ,为Virtio-VGA, , 要么 QXL 设备而不是Cirrus VGA。

(BZ#1651994)

virt-manager中 已被弃用

Virtual Machine Manager应用程序,也称为 virt-manager中, ,已被弃用。RHEL 8 Web控制台,也称为 座舱, ,旨在成为后续版本的替代品。因此,建议您使用Web控制台在GUI中管理虚拟化。但是,在Red Hat Enterprise Linux 8.0中,某些功能只能从两者中访问 virt-manager中 或命令行。

(JIRA:RHELPLAN-10304)

第 7 章 已知的问题 (机器翻译版本)

本部分介绍了Red Hat Enterprise Linux 8中的已知问题。

7.1. 安装程序和映像创建 (机器翻译版本)

authauthconfig Kickstart命令需要AppStream存储库

authselect-compat 包裹是必需的 authauthconfig 安装期间Kickstart命令。如果没有此软件包,安装将失败 auth 要么 authconfig 使用。但是,按设计, authselect-compat package仅在AppStream存储库中可用。

要解决此问题,请验证安装程序是否可以使用BaseOS和AppStream存储库,或使用 authselect 安装过程中的Kickstart命令。

(BZ#1640697)

复制内容 Binary DVD.iso 文件到分区省略了 .treeinfo.discinfo

将RHEL 8.0 Binary DVD.iso映像文件的内容复制到本地安装的分区时,“*”在 cp <path>/\* <mounted partition>/dir 命令无法复制 .treeinfo.discinfo 文件,这是成功安装所必需的。因此,不会加载BaseOS和AppStream存储库,并且会在其中加载调试日志消息 anaconda.log 文件是唯一的问题记录。

要解决此问题,请复制缺失的内容 .treeinfo.discinfo 文件到分区。

(BZ#1692746)

7.2. 核心 (机器翻译版本)

i40iw 模块在启动时不会自动加载

由于许多i40e网卡不支持iWarp和 i40iw 模块不完全支持挂起/恢复,默认情况下不会自动加载此模块以确保挂起/恢复正常工作。要解决此问题,请手动编辑 /lib/udev/rules.d/90-rdma-hw-modules.rules 文件以启用自动加载 i40iw

另请注意,如果在同一台计算机上安装了另一台带有i40e设备的RDMA设备,则非i40e RDMA设备会触发 RDMA service,加载所有已启用的RDMA堆栈模块,包括 i40iw 模块。

(BZ#1623712)

连接许多设备时,系统有时会无响应

当Red Hat Enterprise Linux 8配置大量设备时,系统控制台上会出现大量控制台消息。例如,当存在大量逻辑单元号(LUN)时,会发生这种情况,每个LUN都有多条路径。除了内核正在进行的其他工作之外,大量的控制台消息可能会导致内核监视程序强制内核出现紧急情况,因为内核似乎已挂起。

由于扫描在引导周期的早期发生,因此在连接许多设备时系统无响应。这通常发生在启动时。

如果 kdump 在启动后的设备扫描事件期间在您的计算机上启用,硬锁定会导致捕获a vmcore 图片。

若要解决此问题,请增加看门狗锁定计时器。为此,请添加 watchdog_thresh=N 内核命令行的选项。更换 N 用秒数:

  • 如果您的设备少于一千台,请使用 30
  • 如果您有超过一千台设备,请使用 60

对于存储,设备的数量是到所有LUN的路径数量:通常是数量 /dev/sd* 设备。

应用解决方法后,系统在配置大量设备时不再无响应。

(BZ#1598448)

KSM有时会忽略NUMA记忆政治

当使用“merge_across_nodes = 1”参数启用内核共享内存(KSM)功能时,KSM忽略由mbind()函数设置的内存策略,并可能将页面从某些内存区域合并到非统一内存访问(NUMA)节点与政策不符。

要解决此问题,请禁用KSM或将merge_across_nodes参数设置为“0”(如果使用与QEMU绑定的NUMA内存)。因此,为KVM VM配置的NUMA内存策略将按预期工作。

(BZ#1153521)

7.3. 软件管理 (机器翻译版本)

运行 yum list 在非root用户的原因下 YUM 紧急

什么时候跑 yum list 在非root用户之后的命令 libdnf 包已更新, YUM 可以意外终止。如果您遇到此错误,请运行 yum list 在root下解决问题。结果,后续尝试运行 yum list 在非root用户下不再导致 YUM 崩溃。

(BZ#1642458)

yum(8) 手册错误地提到了 yum module profile 命令

yum(8) 手册页错误地指出了 YUM 包管理工具包括 yum module profile 命令提供有关模块配置文件的详细信但是,此命令不再可用,使用时, YUM 显示有关无效命令的错误消息。有关模块配置文件的详细信息,请使用新的 yum module info --profile 而命令。

(BZ#1622580)

yum-plugin-aliases 当前不可用

yum-plugin-aliases 包,提供 alias 用于添加自定义yum别名的命令目前不可用。因此,目前无法使用别名。

(BZ#1647760)

yum-plugin-changelog 当前不可用

yum-plugin-changelog package,它允许在包更新之前和之后查看包更改日志,目前无法使用。

(BZ#1581191)

7.4. 基建服务 (机器翻译版本)

调谐 不设置内核启动命令行参数

调谐 工具不支持默认启用的引导加载程序规范(BLS)。所以, 调谐 没有设置某些内核引导命令行参数,这会导致一些问题,例如性能下降或CPU内核未被隔离。若要解决此问题,禁用BLS并重新启动 调谐

  1. 安装 肮脏 包。
  2. 从中删除以下行 /etc/default/grub 文件:

    GRUB_ENABLE_BLSCFG=true
  3. 重新生成 grub2.cfg 通过运行非EFI系统来运行文件:

    grub2-mkconfig -o /etc/grub2.cfg
    或EFI系统:
    grub2-mkconfig -o /etc/grub2-efi.cfg
  4. 重新开始 调谐 通过运行:

    systemctl重启调整

结果是, 调谐 按预期设置内核引导参数。

(BZ#1576435)

7.5. 外壳和命令行工具 (机器翻译版本)

Python 绑定的 net-snmp 包不可用

Net-SNMP 工具套件不提供绑定 Python 3, ,这是默认值 Python 在RHEL 8中实现。所以, python-net-snmp, ,python2-net-snmp, , 要么 python3-net-snmp RHEL 8中不提供包。

(BZ#1584510)

7.6. 动态编程语言,Web和数据库服务器 (机器翻译版本)

数据库服务器不能并行安装

mariadbmysql 由于RPM软件包冲突,因此无法在RHEL 8.0中并行安装模块。

按照设计,不可能并行安装同一模块的多个版本(流)。例如,您只需要从中选择一个可用的流 postgresql 模块,或者 10 (默认)或 9.6。RHEL 6和RHEL 7的Red Hat软件集合中可以并行安装组件。在RHEL 8中,可以在容器中使用不同版本的数据库服务器。

(BZ#1566048)

问题在于 mod_cgid 记录

如果 mod_cgid Apache httpd模块在线程多处理模块(MPM)下使用,这是RHEL 8中的默认情况,发生以下日志记录问题:

  • stderr CGI脚本的输出没有标准时间戳信息的前缀。
  • stderr CGI脚本的输出未正确重定向到特定于的日志文件 VirtualHost, ,如果配置。

(BZ#1633224)

IO::Socket::SSL Perl模块不支持TLS 1.3

在RHEL 8中实现了TLS 1.3协议的新功能,例如会话恢复或握手后身份验证 OpenSSL 图书馆但不在 Net::SSLeay Perl模块,因此在不可用 IO::Socket::SSL Perl模块。因此,客户端证书身份验证可能会失败,并且重新建立会话可能比使用TLS 1.2协议慢。

要解决此问题,请通过设置禁用TLS 1.3的使用 SSL_version 选项 !TLSv1_3 创建时的值 IO::Socket::SSL 宾语。

(BZ#1632600)

7.7. 身份管理 (机器翻译版本)

KCM凭证缓存不适用于单个凭证缓存中的大量凭据

如果凭据缓存包含太多凭据,则Kerberos操作,例如 使用kinit, ,由于用于在数据之间传输数据的缓冲区的硬编码限制而失败 SSSD,KCM 组件和底层数据库。

要解决此问题,请添加 ccache_storage = memory 选项 KCM 部分 /etc/sssd/sssd.conf 文件。这指示了 KCM 响应者只将凭证缓存存储在内存中,而不是持久存储。如果您这样做,请重新启动系统或 SSSD,KCM 清除凭证缓存。请注意,KCM可以处理高达64 kB的ccache。

(BZ#1448094)

冲突的超时值会阻止SSSD连接到服务器

与系统安全服务守护程序(SSSD)使用的故障转移操作相关的某些默认超时值是冲突的。因此,为SSSD保留与单个服务器通信的超时值可防止SSSD在连接操作之前尝试其他服务器作为整个超时。要解决此问题,请设置值 ldap_opt_timeout 超时参数高于的值 dns_resolver_timeout 参数,并设置值 dns_resolver_timeout 参数高于的值 dns_resolver_op_timeout 参数。

(BZ#1382750)

使用智能卡登录IdM Web UI不起作用

当用户尝试使用存储在其智能卡上的证书登录Identity Management(IdM)Web UI时,系统安全服务守护程序(SSSD)D-Bus接口代码使用不正确的回调来查看用户。因此,查找崩溃。要解决此问题,请使用其他身份验证方法。

(BZ#1642508)

IdM服务器在FIPS中不起作用

由于Tomcat的SSL连接器实现不完整,安装了证书服务器的IdM服务器在启用了FIPS模式的计算机上不起作用。

(BZ#1673296)

nuxwdog HSM环境中的服务失败,需要安装 keyutils 在非HSM环境中打包

nuxwdog 看门狗服务已集成到证书系统中。作为结果, nuxwdog 不再作为单独的包提供。要使用监视程序服务,请安装 pki-server 包。

请注意 nuxwdog 服务有以下已知问题:

  • nuxwdog 如果使用硬件存储模块(HSM),则服务不起作用。对于此问题,没有可用的解决方法。
  • 在非HSM环境中,Red Hat Enterprise Linux 8.0不会自动安装 keyutils 包作为依赖。要手动安装软件包,请使用 dnf install keyutils 命令。

(BZ#1652269)

7.8. 编译器和开发工具 (机器翻译版本)

GCC生成的综合函数会混淆SystemTap

GCC优化可以为其他函数的部分内联副本生成合成函数。SystemTap和GDB等工具无法将这些合成函数与实际函数区分开来。因此,SystemTap可以在合成和实际功能入口点上放置探针,从而为单个实际函数调用注册多个探针命中。

要解决此问题,必须使用诸如检测递归和抑制与内联部分函数相关的探针等措施来调整SystemTap脚本。例如,一个脚本

probe kernel.function("can_nice").call { }

可以尝试避免所描述的问题如下:

global in_can_nice%

probe kernel.function("can_nice").call {
  in_can_nice[tid()] ++;
  if (in_can_nice[tid()] > 1) { next }
  /* code for real probe handler */
}

probe kernel.function("can_nice").return {
  in_can_nice[tid()] --;
}

请注意,此示例脚本未考虑所有可能的方案,例如错过的kprobes或kretprobes,或者真正意图的递归。

(BZ#1169184)

ltrace 工具不报告函数调用

由于改进了应用于所有RHEL组件的二进制加固,因此 ltrace 工具无法再检测来自RHEL组件的二进制文件中的函数调用。作为结果, ltrace 输出为空,因为在此类二进制文件上使用时,它不会报告任何检测到的调用。目前没有可用的解决方法。

作为一个说明, ltrace 可以正确地报告在没有相应强化标志的情况下构建的自定义二进制文

(BZ#1618748, BZ#1655368)

7.9. 文件系统和存储 (机器翻译版本)

无法使用。发现iSCSI目标 iscsiuio

Red Hat Enterprise Linux 8不允许并发访问PCI寄存器区域。结果,一个 could not set host net params (err 29) 已设置错误,并且与发现门户的连接失败。要解决此问题,请设置内核参数 iomem=relaxed 在iSCSI卸载的内核命令行中。这特别涉及使用的任何卸载 bnx2i 驱动程序。因此,现在可以成功连接到发现门户 iscsiuio 包现在可以正常工作。

(BZ#1626629)

XFS DAX挂载选项与共享的写时复制数据扩展区不兼容

使用共享写时复制数据扩展区功能格式化的XFS文件系统与 -o dax 挂载选项。因此,安装这样的文件系统 -o dax 失败。

要解决此问题,请使用以下命令格式化文件系统 reflink=0 元数据选项,用于禁用共享的写时复制数据范围:

# mkfs.xfs -m reflink=0 block-device

因此,安装文件系统 -o dax 很成功。

(BZ#1620330)

7.10. 联网 (机器翻译版本)

nftables 不支持多维IP集类型

nftables 包过滤框架不支持具有连接和间隔的集类型。因此,您无法使用多维IP集类型,例如 hash:net,port, ,与 nftables

若要解决此问题,请使用 iptables 框架与 ipset 工具,如果您需要多维IP集类型。

(BZ#1593711)

7.11. 安全 (机器翻译版本)

OpenSCAP rpmverifypackage 不能正常工作

chdirchroot 系统调用由两次调用 rpmverifypackage 探测。因此,在探测期间使用探测器时会发生错误 OpenSCAP 使用自定义开放漏洞和评估语言(OVAL)内容进行扫描。

若要解决此问题,请不要使用 rpmverifypackage_test OVAL测试您的内容或仅使用来自的内容 scap-security-guide 包在哪里 rpmverifypackage_test 未使用。

(BZ#1646197)

libssh 不符合系统范围的加密策略

libssh 库不遵循系统范围的加密策略设置。因此,当管理员使用更改加密策略级别时,不会更改支持的算法集 update-crypto-policies 命令。

要解决此问题,需要由使用的每个应用程序单独设置广告算法集 libssh。因此,当系统设置为LEGACY或FUTURE策略级别时,使用的应用程序 libssh 与...相比,表现不一致 OpenSSH

(BZ#1646563)

SCAP Workbench 无法从定制的配置文件生成基于结果的补救措施

尝试使用自定义配置文件生成基于结果的修复角色时,会发生以下错误 SCAP Workbench 工具:

Error generating remediation role .../remediation.sh: Exit code of oscap was 1: [output truncated]

若要解决此问题,请使用 oscap 命令与 --tailoring-file 选项。

(BZ#1640715)

OpenSCAP rpmverifyfile 不起作用

OpenSCAP 扫描程序无法在脱机模式下正确更改当前工作目录,并且 fchdir 使用正确的参数调用函数 OpenSCAP rpmverifyfile 探测。因此,使用。扫描任意文件系统 oscap-chroot 如果命令失败 rpmverifyfile_test 用于SCAP内容。结果是, oscap-chroot 在描述的场景中中止。

(BZ#1636431)

无法使用用于安全性和合规性扫描容器的实用程序

在Red Hat Enterprise Linux 7中 oscap-docker 实用程序可用于基于Atomic技术扫描Docker容器。在Red Hat Enterprise Linux 8中,与Docker-和Atomic相关 OpenSCAP 命令不可用。结果是, oscap-docker 或者,目前RHEL 8中没有用于安全性和合规性扫描容器的等效实用程序。

(BZ#1642373)

第 8 章 容器的显着变化 (机器翻译版本)

Red Hat Enterprise Linux(RHEL)8.0提供了一组容器映像。值得注意的变化包括:

  • Docker不包含在RHEL 8.0中。要使用容器,请使用 podman, ,buildah, ,skopeo, ,和 runc 工具。

    有关这些工具以及在RHEL 8中使用容器的信息,请参阅 Building, running, and managing containers

  • podman 工具已作为完全支持的功能发布。

    podman 工具管理单个节点上的pod,容器映像和容器。它建立在 libpod library,它允许管理容器和容器组,称为pods。

    要学习如何使用 podman, ,见 Building, running, and managing containers

  • 在RHEL 8 GA中,红帽通用基础映像(UBI)是最新推出的。UBI取代了Red Hat先前提供的一些图像,例如标准和最小RHEL基础图像。

    与旧的Red Hat图像不同,UBI可以自由再发行。这意味着它们可以在任何环境中使用并在任何地方共享。即使您不是Red Hat客户,也可以使用它们。

    有关UBI文档,请参阅 Building, running, and managing containers

  • 在RHEL 8 GA中,可以使用其他容器映像来提供AppStream组件,容器映像随之分发 红帽软件系列 在RHEL 7中。所有这些RHEL 8图像都基于 ubi8 基本形象。
  • RHEL 8完全支持容器映像64位ARM体系结构的ARM。
  • rhel-tools 容器已在RHEL 8中删除。该 sosredhat-support-tool 工具提供在 support-tools 容器。系统管理员还可以使用此映像作为构建系统工具容器映像的基础。
  • 对无根容器的支持在RHEL 8中作为技术预览提供。

    无根容器是由没有管理权限的常规系统用户创建和管理的容器。

附录 A. 按组件列出的票证列表

零件门票

389-ds-base

BZ#1334254, BZ#1358706, BZ#1693159

NetworkManager

BZ#1555013, BZ#1555012, BZ#1557035

PackageKit

BZ#1559414

anaconda

BZ#1499442, BZ#1500792, BZ#1547908, BZ#1612060, BZ#1595415, BZ#1610806, BZ#1533904

audit

BZ#1616428

bcc

BZ#1548302

bind

BZ#1588592

boom-boot

BZ#1649582

boost

BZ#1494495, BZ#1616244

cloud-init

BZ#1615599

cmake

BZ#1590139

cockpit

BZ#1619993

crypto-policies

BZ#1591620

cryptsetup

BZ#1564540

device-mapper-multipath

BZ#1643550

distribution

BZ#1566048, BZ#1516741, BZ#1516728

dnf

BZ#1622580, BZ#1647760, BZ#1581191

esc

BZ#1538645

firewalld

BZ#1509026

gcc

BZ#1169184, BZ#1607227, BZ#1535774, BZ#1504980, BZ#1246444

gdm

BZ#1589678

glibc

BZ#1512004, BZ#1376834, BZ#1512010, BZ#1304448, BZ#1512009, BZ#1512006, BZ#1514839, BZ#1533608

go-toolset

BZ#1512570

httpd

BZ#1633224, BZ#1632754

iproute

BZ#1640991

iptables

BZ#1644030, BZ#1564596

iscsi-initiator-utils

BZ#1626629, BZ#1582099

kernel-rt

BZ#1592977

kernel

BZ#1598448, BZ#1643522, BZ#1485546, BZ#1562998, BZ#1485229, BZ#1494651, BZ#1485532, BZ#1494028, BZ#1563617, BZ#1485525, BZ#1261167, BZ#1562987, BZ#1273139, BZ#1559607, BZ#1401552, BZ#1638465, BZ#1598776, BZ#1503672, BZ#1664838, BZ#1596240, BZ#1534870, BZ#1501618, BZ#1153521, BZ#1494705, BZ#1620330, BZ#1505999

kexec-tools

BZ#1520209

kmod-kvdo

BZ#1534087, BZ#1639512

libdnf

BZ#1642458

libreswan

BZ#1657854

libssh

BZ#1485241

ltrace

BZ#1618748, BZ#1584322

lvm2

BZ#1643553, BZ#1643543, BZ#1643545, BZ#1643547, BZ#1643549, BZ#1643562, BZ#1643576

mariadb

BZ#1637034

net-snmp

BZ#1584510

nfs-utils

BZ#1592011, BZ#1639432

nftables

BZ#1593711

nginx

BZ#1545526

nodejs-10-module

BZ#1622118

nss

BZ#1645153

nuxwdog

BZ#1652269

openldap

BZ#1570056

opensc

BZ#1595626

openscap

BZ#1646197, BZ#1636431, BZ#1642373, BZ#1618484, BZ#1614273, BZ#1618464

openssh

BZ#1622511, BZ#1228088

pacemaker

BZ#1543494

pcs

BZ#1578891, BZ#1591308, BZ#1615420, BZ#1158816, BZ#1542288, BZ#1549535, BZ#1620190, BZ#1566430, BZ#1595829, BZ#1436217, BZ#1578955, BZ#1596050, BZ#1554310, BZ#1638852, BZ#1640477, BZ#1619620

perl-IO-Socket-SSL

BZ#1632600

perl

BZ#1511131

pki-core

BZ#1565073, BZ#1623444, BZ#1566360, BZ#1394069, BZ#1669257,BZ#1656856, BZ#1673296

pykickstart

BZ#1637872, BZ#1612061

qemu-kvm

BZ#1508139, BZ#1559240, BZ#1497911, BZ#1578855, BZ#1651994, BZ#1621817, BZ#1508137, BZ#1519004

redhat-release

BZ#1636338

rsyslog

BZ#1613880, BZ#1542497, BZ#1614179, BZ#1619645

scap-security-guide

BZ#1618528, BZ#1618518

scap-workbench

BZ#1640715

selinux-policy

BZ#1592244, BZ#1594111, BZ#1549772, BZ#1626446

setup

BZ#1591969

sos

BZ#1559836

sssd

BZ#1448094, BZ#1382750, BZ#1642508, BZ#1620123

subversion

BZ#1571415

swig-3.0-module

BZ#1660051

tomcatjss

BZ#1424966, BZ#1636564

tuned

BZ#1576435, BZ#1565598

valgrind

BZ#1500481, BZ#1538009

virt-manager

BZ#1599777, BZ#1643609

wpa_supplicant

BZ#1582538

其他

BZ#1646563, BZ#1640697, BZ#1623712, BZ#1649404, BZ#1581198, BZ#1581990, BZ#1649497, BZ#1643294, BZ#1647612, BZ#1641015, BZ#1641032, BZ#1641004, BZ#1641034, BZ#1647110, BZ#1641007, BZ#1641029, BZ#1641022, BZ#1649493, BZ#1649922, BZ#1559616, BZ#1646541, BZ#1647725, BZ#1686057, BZ#1582530, BZ#1581496, BZ#1650618, BZ#1650675, BZ#1650701, JIRA:RHELPLAN-10347, JIRA:RHELPLAN-10439, JIRA:RHELPLAN-10440, JIRA:RHELPLAN-10442, JIRA:RHELPLAN-10443, JIRA:RHELPLAN-10438, JIRA:RHELPLAN-2878, JIRA:RHELPLAN-10355, JIRA:RHELPLAN-3010, JIRA:RHELPLAN-10352, JIRA:RHELPLAN-10353, JIRA:RHELPLAN-1212, JIRA:RHELPLAN-1473, JIRA:RHELPLAN-10445, JIRA:RHELPLAN-1499, JIRA:RHELPLAN-3001, JIRA:RHELPLAN-6746, JIRA:RHELPLAN-10354, JIRA:RHELPLAN-2896, JIRA:RHELPLAN-10304, JIRA:RHELPLAN-10628, JIRA:RHELPLAN-10441, JIRA:RHELPLAN-10444, JIRA:RHELPLAN-1842, JIRA:RHELPLAN-12764, JIRA:RHELPLAN-14607, BZ#1641014, BZ#1692746, BZ#1693775, BZ#1580387, BZ#1583620, BZ#1580430, BZ#1648843, BZ#1647908, BZ#1649891

法律通告

Copyright © 2019 Red Hat, Inc.
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat Software Collections is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.

为了尽快向用户提供最新的信息,本文档可能会包括由机器自动从英文原文翻译的内容。如需更多信息,请参阅此说明。