采用 RHEL 10 时的注意事项
大约 26 分钟
采用 RHEL 10 时的注意事项
来源:官方文档 原始多页入口:采用 RHEL 10 时的注意事项 内容规模:约 240,284 字符,51 个章节标题,17 个命令/代码块,17 条提示框
阅读提要
- 副标题:RHEL 9 和 RHEL 10 之间的主要区别
- 摘要:本文档概述了自 RHEL 9 以来 RHEL 10 中的变化,以帮助您评估到 RHEL 10 的升级。
- 主要章节:RHEL 9 和 RHEL 10 之间的主要区别;对红帽文档提供反馈;第 1 章 评估升级到 RHEL 10 的主要资源;第 2 章 构架;第 3 章 软件仓库;第 4 章 应用程序流;第 5 章 容器;第 6 章 编译器和开发工具;第 7 章 桌面;第 8 章 动态编程语言、网页服务器、数据库服务器;第 9 章 RHEL for Edge;第 10 章 文件系统和存储
- 推荐阅读顺序:先看“阅读提要”和目录,再按章节查看“关键点/命令/注意”;需要原文细节时点击来源链接。
章节笔记
概览
- 该章节主要为下一级主题的入口。
RHEL 9 和 RHEL 10 之间的主要区别
- 要点:摘要
对红帽文档提供反馈
- 要点:我们致力于为您提供高质量的文档,您的反馈将对我们有很大帮助。为帮助我们改进,您可以通过 Red Hat Jira 跟踪系统提交建议或报告错误。
- 要点:流程
- 列表:登录到 Jira 网站。 如果您还没有帐户,请创建一个。
- 列表:单击顶部导航栏中的 Create。
- 列表:在 Summary 字段中输入描述性标题。
- 列表:在 Description 字段中输入您对改进的建议。包括文档相关部分的链接。
- 列表:点窗口底部的 Create。
第 1 章 评估升级到 RHEL 10 的主要资源
- 要点:查看可用的文档资源,以帮助升级到 Red Hat Enterprise Linux 10。这些资源可帮助您评估系统兼容性并规划成功的迁移策略。
- 要点:采用 RHEL 的注意事项文档概述了 Red Hat Enterprise Linux 两个主要版本:RHEL 9 和 RHEL 10 之间的区别。它提供了评估升级到 RHEL 10 的相关变更的列表,而不是所有变更的完整列表。考虑升级到 RHEL 10 时,请查看以下文档:
- 列表:有关 RHEL 10 用法的详情,请查看 RHEL 10 产品文档。
- 列表:有关从 RHEL 9 到 RHEL 10 的原位升级的指导,请参考 从 RHEL 9 升级到 RHEL 10。
- 列表:有关如何安装 RHEL 10 的指导,请参阅 安装 RHEL。
- 列表:有关 RHEL 8 和 RHEL 9 之间的主要区别的信息,请参考 采用 RHEL 9 时的注意事项。
- 列表:与其它系统版本相比,有关 Red Hat Enterprise Linux 10 的功能和限制的详情,请查看 Red Hat Enterprise Linux 技术功能和限制 知识库文章。
- 列表:有关 Red Hat Enterprise Linux 生命周期的信息,请查看 Red Hat Enterprise Linux 生命周期。
第 2 章 构架
- 要点:查看 Red Hat Enterprise Linux (RHEL) 10 支持的硬件架构,以确保您的基础架构在安装或升级前兼容。
- 要点:Red Hat Enterprise Linux 10 与内核版本 6.12.0 一起发布,它支持以下构架(在括号中声明为最低版本):
- 列表:AMD 和 Intel 64 位构架(x86-64-v3)
- 列表:64 位 ARM 架构(ARMv8.0-A)
- 列表:IBM Power Systems, Little Endian(POWER9)
- 列表:64 位 IBM Z (z14)
第 3 章 软件仓库
- 要点:Red Hat Enterprise Linux (RHEL) 10 软件仓库提供稳定和受支持的环境所需的特定软件、操作系统功能和各种系统组件。
- 要点:Red Hat Enterprise Linux 通过不同的软件仓库发布内容,如 BaseOS、AppStream、CodeReady Linux Builder 和 Supplementary。另外,Red Hat Enterprise Linux 附加组件软件仓库(如高可用性)中提供了特定的内容。
- 列表:软件包清单
- 注意:重要 RHEL 需要 BaseOS 和 AppStream 内容集,它们在所有 RHEL 订阅中都提供。
第 4 章 应用程序流
- 要点:用户空间组件的多个版本会以 Application Streams(应用程序流)的形式提供,其更新频率会比核心操作系统软件包的更新频率更快。这为自定义 RHEL 提供了更大的灵活性,而不影响平台或特定部署的基本稳定性。
- 要点:提供以下格式的应用程序流:
- 列表:RPM 格式
- 列表:Software Collections
- 列表:Flatpaks
- 列表:Red Hat Enterprise Linux 生命周期
- 列表:Red Hat Enterprise Linux Application Stream 生命周期
- 列表:Red Hat Enterprise Linux 10: 应用程序兼容性指南
- 注意:注意 在以前的 RHEL 主版本中,一些 Application Streams 作为 RPM 格式的扩展,以模块形式提供。在 RHEL 10 中,红帽不打算提供任何使用模块化作为打包技术的 Application Streams,因此,RHEL 10 中不会分发任何模块化内容。
- 注意:注意 某些 RPM 格式的初始应用程序流的生命周期比 Red Hat Enterprise Linux 10 的生命周期短。
第 5 章 容器
- 要点:查看 RHEL 9 和 RHEL 10 之间容器的最显著更改。
- 要点:containernetworking-plugins 软件包已删除,且 CNI 网络堆栈不再被支持。
- 列表:如果您从以前的 RHEL 版本升级到 RHEL 10.0,或者有全新的 RHEL 10.0 安装,则 CNI 网络供应商将不再可用。将 CNI 用于网络的现有容器将无法正常工作,需要删除并重新创建。新创建的容器将使用默认的 netavark 网络供应商。
- 列表:如果存在,containers.conf 文件中的 network_backend 选项的 cni 值必须改为 netavark 或可以取消设置。
- 列表:OverlayFS 作为内核接口
- 列表:用于可挂载元数据树的增强的只读文件系统(EROFS)
- 列表:低层文件系统中的 fs-verity 功能(可选)
- 列表:元数据和数据之间的分隔。composefs 不存储任何持久数据。底层元数据和数据文件存储在有效的较低的 Linux 文件系统中,如 ext4、xfs 等。
第 6 章 编译器和开发工具
- 要点:查看 RHEL 9 和 RHEL 10 之间对编译器和开发工具的最显著更改。
- 要点:RHEL 10.0 提供以下系统工具链组件:
- 列表:GCC 14.2
- 列表:glibc 2.39
- 列表:Annobin 12.92
- 列表:binutils 2.41
- 列表:GDB 14.2
- 列表:Valgrind 3.24.0
第 7 章 桌面
- 要点:查看 RHEL 9 和 RHEL 10 之间桌面的最显著更改。
- 要点:在 RHEL 9 中,Files 应用程序提供了一个 Other Location 选项来访问远程文件系统和网络共享,而无需依赖本地挂载的驱动器。
- 命令/配置摘录:
%packages @^graphical-server-environment -redhat-flatpak-preinstall-firefox firefox %end第 8 章 动态编程语言、网页服务器、数据库服务器
- 要点:查看 RHEL 9 和 RHEL 10 之间的动态编程语言、Web 服务器和数据库服务器的最显著更改。
- 要点:RHEL 10 提供以下动态编程语言:
- 列表:Python 3.12
- 列表:Ruby 3.3
- 列表:Node.js 22
- 列表:Perl 5.40
- 列表:PHP 8.3
- 列表:Git 2.47
- 命令/配置摘录:
# dnf install mariadb11.8-server第 9 章 RHEL for Edge
- 要点:查看 RHEL 9 和 RHEL 10 之间的 RHEL for Edge 的最显著更改。
第 10 章 文件系统和存储
- 要点:查看 RHEL 9 和 RHEL 10 之间的文件系统和存储的最显著更改。
- 要点:Virtual Data Optimizer (VDO) sysfs 参数已被删除。除了 log_level 外,kvdo 模块的所有模块级 sysfs 参数已被删除。对于单个 dm-vdo 目标,特定于 VDO 的所有 sysfs 参数也被删除了。所有 DM 目标常用的参数没有变化。通过更新删除的模块级参数设置的当前 dm-vdo 目标的配置值无法再被更改。
第 11 章 硬件启用
- 要点:查看 RHEL 9 和 RHEL 10 之间硬件启用的最显著更改。
11.1. 未维护的硬件支持
- 要点:以下设备(驱动程序、适配器)可用,但不再在 RHEL 10 中进行常规的测试或更新。红帽可能会自行决定修复严重的错误,包括安全漏洞。
- 要点:不维护的设备不应在生产环境中使用,在下一个主发行版本中可能会禁用它们。
- 表格样本(共 57 行):
- 设备 ID | 驱动 | 设备描述
- aacraid | Dell PERC2, 2/Si, 3/Si, 3/Di, Adaptec Advanced Raid 产品, HP NetRAID-4M, IBM ServeRAID & ICP SCSI 驱动程序
- af_key | PF_KEY 套接字
- ahci_seattle | Seattle AHCI SATA platform 驱动程序
11.2. 删除的硬件支持
- 要点:以下设备(驱动程序、适配器)已从 RHEL 10 中删除。
- 要点:PCI 设备 ID 采用 vendor:device:subvendor:subdevice 的格式。如果没有列出设备 ID,则与对应驱动程序关联的所有设备都会被不维护。要在您的系统中检查硬件的 PCI ID,请运行 lspci -nn 命令。
- 表格样本(共 8 行):
- 设备 ID | 驱动 | 设备描述
- firewire_core
- mlx4
- nfp | Netronome NFP 驱动程序
第 12 章 高可用性和集群
- 要点:查看 RHEL 9 和 RHEL 10 之间高可用性和集群的最显著更改。
- 要点:RHEL 10 中不再支持以下 Red Hat High Availability Add-On 功能。
- 列表:捆绑包中的 RKT 容器.Docker 和 Podman 容器仍被支持。
- 列表:upstart 和 nagios 资源类。
- 列表:具有多个顶级规则的位置约束。每个约束只允许一个规则。pcs constraint rule add,pcs constraint rule delete 和 pcs constraint rule remove 命令已被删除。如果您使用多个规则配置了约束,请运行 pcs cluster cib-upgrade 命令更新到最新的 CIB 模式。在更新过程中,Pacemaker 为每个规则创建一个约束,因此每个约束中只有一个规则。
- 列表:Pacemaker 规则的 monthdays,moon,weekdays,weekyears 和 yearsdays 持续时间选项。
- 列表:在位置约束规则中的日期中使用空格。
- 列表:使用 pcs stonith level add | clear | delete | remove 命令中使用逗号分隔 stonith 设备。
第 13 章 身份管理
- 要点:查看 RHEL 9 和 RHEL 10 之间的身份管理(IdM)的最显著更改。
- 要点:SSSD 现在支持使用 DNS-over-TLS (DoT)执行所有动态 DNS (dyndns)查询。当 IP 地址更改时,您可以安全地更新 DNS 记录,如身份管理(IdM)和活动目录服务器。要启用这个功能,您必须安装 bind9.18-utils 软件包中的 nsupdate 工具。
- 列表:dyndns_dns_over_tls
- 列表:dyndns_tls_ca_cert
- 列表:dyndns_tls_cert
- 列表:dyndns_tls_key
- 列表:一个支持的 HSM
- 列表:HSM Public-Key Cryptography Standard (PKCS) #11 库
- 命令/配置摘录:
ipa-server-install -r EXAMPLE.TEST -U --setup-dns --allow-zone-overlap --no-forwarders -N --auto-reverse --random-serial-numbers --token-name=HSM-TOKEN --token-library-path=/opt/nfast/toolkits/pkcs11/libcknfast.so --setup-kra
# authselect opt-out- 注意:注意 不支持将现有 CA 或 KRA 迁移到基于 HSM 的设置中。您需要在 HSM 上使用密钥重新安装 CA 或 KRA。
- 注意:重要 确保 nsslapd-mdb-max-size 足够大,以存储所有预期的数据。但是,参数大小不能太大,以免影响性能,因为数据库文件是内存映射的。
第 14 章 基础架构服务
- 要点:查看 RHEL 9 和 RHEL 10 之间的基础架构服务的最显著更改。
- 要点:Kea 是 RHEL 中新的 Dynamic Host Configuration Protocol(DHCP)服务器解决方案。Kea DHCP 是 Internet Systems Consortium(ISC)的一个实现,其中包括可正常工作的 DHCPv4、DHCPv6 和动态 DNS 服务器。Kea DHCP 服务器有以下优点:
- 列表:它是带有模块钩子的可扩展服务器解决方案。
- 列表:它允许通过 REST API 重新配置。
- 列表:它有一个允许数据分离(租期)和执行环境的设计。
- 列表:tuned-ppd :tune-ppd 是 drop-in power-profiles-daemon 的替代品,其使用 TuneD 作为一个后端。
- 列表:Valkey :此软件包取代了 redis,并提供与其相同的功能。
- 列表:libcpuid :已为 TuneD 中准确的 CPU 模型识别添加了此软件包。
- 注意:注意 仍然通过 OpenSSL pkcs11-provider 软件包支持 PKCS#11 URI 。
第 15 章 安装程序和镜像创建
- 要点:查看 RHEL 9 和 RHEL 10 之间安装程序和镜像创建的最显著更改。
15.1. 图形用户界面
- 要点:查看 RHEL 9 和 RHEL 10 之间的图形用户界面(GUI)的最显著更改。
- 要点:图形远程访问的协议已从 VNC 更改为远程桌面协议(RDP)。RDP 提供一个可靠和加密的连接,克服了 VNC 的限制,VNC 缺乏加密支持并强制实施了密码长度限制。作为这个更改的一部分,引进了以下新内核选项:
- 列表:inst.rdp
- 列表:inst.rdp.password
- 列表:inst.rdp.username
- 列表:确保 /etc/fstab 中所有设备条目的一致性。
- 列表:支持 LV 或卷组(VG)重命名,而无需更改 /etc/fstab。
- 列表:使用 LUKS 重新加密设备后,保持 /etc/fstab 有效。
15.2. Kickstart 的修改
- 要点:查看 RHEL 9 和 RHEL 10 之间 Kickstart 的最显著更改。
- 要点:安装程序包括对新 bootc Kickstart 命令的支持作为技术预览。它允许部署可引导容器。虽然与现有的 ostreecontainer Kickstart 命令类似,但这个实现依赖于 bootc 工具来管理操作系统内容置备和引导装载程序配置。您可以使用以下方法使用以下命令:
- 列表:--isUtc - 改为使用 --utc 选项。
- 列表:--ntpservers - 改为使用 timesource kickstart 命令的 --ntp-server 选项。
- 列表:--nontp - 改为使用 timesource kickstart 命令的 --ntp-disable 选项。
- 命令/配置摘录:
# bootc --source-imgref=<transport>:<registry>/<namespace>/<name>:<tag>
# rdp [--username <USERNAME>] [--password <PASSWORD>]- 注意:注意 这个功能不支持跨越多个存储设备、自定义挂载点配置超过标准布局的复杂分区方案,或者从需要身份验证的容器 registry 中安装。
15.3. 镜像创建
- 要点:查看 RHEL 9 和 RHEL 10 之间镜像创建的最显著更改。
- 要点:磁盘镜像(如 AWS 或 KVM)没有单独的 /boot 分区,它提供以下改进:
- 列表:防止错误,如 /boot 分区空间不足。
- 列表:带有使用 LVM 创建的 / 的磁盘镜像保留 /boot 分区。
- 列表:在 RHEL 镜像中,此更改针对机密计算。
- 列表:防止 /boot 分区耗尽磁盘空间,这通常是 /boot 在独立分区中时的情况。因此,操作故障的几率会较小。
第 16 章 内核
- 要点:查看 RHEL 9 和 RHEL 10 之间内核和引导装载程序的最显著更改。
16.1. 内核的显著变化
- 要点:查看 RHEL 9 和 RHEL 10 之间内核的最显著更改。
- 要点:在 RHEL 10 中,使用 sched_ext,您可以在运行时在扩展的 Berkeley Packet Filter (eBPF)中创建自定义进程调度代码。sched_ext 调度程序允许您使用自己的调度逻辑代替标准的内核调度程序,来控制进程优先级、资源分配和执行行为。
- 列表:sched_min_granularity 现在是 sched_base_slice,它使用相同的单元。sched_base_slice 定义任务可以运行的最短时间。
- 列表:sched_wakeup_granularity 为 CPU 上所有任务设置基准优先级(作为 CPU 的比例)。EEVDF 中未使用 sched_wakeup_granularity,因此它已被删除。
- 列表:LUKS 加密系统上无人值守的崩溃转储,包括无头和远程部署
- 列表:在支持的情况下,使用与根文件系统和 kdump 目标相同的 LUKS 加密设备。
- 列表:加密和未加密的安装之间更一致的行为
- 列表:使用支持 Red Hat Enterprise Linux 10 上带有非零部分地址的 elfutils、SystemTap 和相关工具的版本。
16.2. 引导装载程序的显著变化
- 要点:查看 RHEL 9 和 RHEL 10 之间引导装载程序的最显著更改。
- 要点:Red Hat Enterprise Linux 使用 shim 引导装载程序作为 UEFI 安全引导链中的第一个组件。shim 二进制文件必须使用平台固件信任的密钥签名,shim 必须信任为后续引导组件(如 grub2 和内核)签名的密钥。
- 列表:Microsoft Windows UEFI 驱动程序发布软件(2011)
- 列表:Microsoft UEFI CA 2023
- 列表:Red Hat UEFI publisher 2024
- 列表:从 RHEL 8:更新到 RHEL 8.10,并确保在升级到 RHEL 10.x 前安装 shim-15.8-6 或更高版本。
- 列表:从 RHEL 9:在升级到 RHEL 10.x 前,请确保安装了 shim-15.8-3 或更高版本。您无法直接从 RHEL 9.0 升级 ; 您必须位于 RHEL 9.2 或更高版本上,然后才能移至 RHEL 10.x。
- 列表:验证固件是否至少注册了以下证书之一: Microsoft Windows UEFI 驱动程序发布软件(2011) Microsoft UEFI CA 2023 Red Hat UEFI publisher 2024
第 17 章 命令行助手
- 要点:查看 RHEL 9 和 RHEL 10 之间命令行助手的最显著更改。
第 18 章 网络
- 要点:查看 RHEL 9 和 RHEL 10 之间网络的最显著更改。
- 要点:teamd 服务和 libteam 库已在 Red Hat Enterprise Linux 10 中删除。作为替换,配置绑定而不是网络组。
- 列表:完整的 ipxe-roms 子 RPM 软件包
- 列表:包含 ipxe-bootimgs-x86 子 RPM 软件包中的设备驱动程序的二进制文件: /usr/share/ipxe/ipxe-i386.efi /usr/share/ipxe/ipxe-x86_64.efi /usr/share/ipxe/ipxe.dsk /usr/share/ipxe/ipxe.iso /usr/share/ipxe/ipxe.lkrn /usr/share/ipxe/ipxe.usb
- 列表:/usr/share/ipxe/ipxe-i386.efi
- 列表:/usr/share/ipxe/ipxe-x86_64.efi
- 列表:/usr/share/ipxe/ipxe.dsk
- 列表:/usr/share/ipxe/ipxe.iso
第 19 章 性能
- 要点:查看 RHEL 9 和 RHEL 10 之间性能的最显著更改。
- 要点:dyninst 框架已 rebase 到上游版本 13.0.0 ,此版本提供以下改进的列表:
- 列表:改进了对 AMD GPU 二进制文件的支持
- 列表:改进了 x86 指令和 C++ DWARF 构造的解析 如需更多信息,请参阅 上游文档。
第 20 章 安全性
- 要点:查看 RHEL 9 和 RHEL 10 之间安全性的最显著更改。
20.1. 安全合规性更改
- 要点:查看 RHEL 9 和 RHEL 10 之间的安全合规的最显著更改。
- 要点:RHEL 10 中提供了 OpenSCAP 扫描程序的新版本 1.4.x。最重要的更改如下:
- 列表:openscap 软件包不再为 libopenscap 库提供 openscap-devel 子软件包,其现在是一个内部库,没有公共 API ,也不保证向后兼容性。openscap 软件包不提供对 ABI 和 API 兼容性的保证。
- 列表:以下提供数据流合成功能的 ds 子模块已从 oscap 工具中删除: sds-compose sds-add sds-split rds-create rds-split
- 列表:sds-compose
- 列表:sds-add
- 列表:sds-split
- 列表:rds-create
20.2. 对加密组件的更改
- 要点:查看 RHEL 9 和 RHEL 10 之间的加密组件的最显著更改。
- 要点:使用 RSA 密钥交换的 TLS 密码不再在 RHEL 10 的 DEFAULT 系统范围的加密策略中被接受。这些密码不提供完美转发保密性,并且被认为不如像使用其他密钥交换的密码那样安全,例如 Elliptic-curve Diffie-Hellman (ECDH)密钥交换。
- 命令/配置摘录:
# openssl pkcs8 -in <old_private_key> -nocrypt -topk8 -out <standard_private_key>20.3. 对 SELinux 的更改
- 要点:查看 RHEL 9 和 RHEL 10 之间 SELinux 的最显著更改。
- 要点:在 RHEL 10.0 中,只与 Extra Packages for Enterprise Linux (EPEL)存储库中包含的软件包有关,而不与任何 RHEL 软件包有关的 SELinux 策略模块已从 selinux-policy 软件包移到 selinux-policy-epel 软件包。这减少了 selinux-policy 的大小,允许系统更快地执行如重建和加载 SELinux 策略等操作。
- 列表:selinux-policy-targeted-extra
- 列表:selinux-policy-mls-extra
第 21 章 Shell 和命令行工具
- 要点:查看 RHEL 9 和 RHEL 10 之间的 shell 和命令行工具的最显著更改。
21.1. 系统管理的显著变化
- 要点:查看 RHEL 9 和 RHEL 10 之间的系统管理的最显著更改。
21.2. 对命令行工具的显著更改
- 要点:查看 RHEL 9 和 RHEL 10 之间命令行工具的最显著更改。
- 要点:ReaR 工具已升级至版本 2.9。主要变化包括:
- 列表:在 IBM Z 上,IPL 输出方法现已弃用。提供了 RAMDISK 输出方法作为替代方案。OUTPUT=RAMDISK 功能在所有支持的硬件构架上是一样的,这与特定于 IBM System Z 的、已弃用的 OUTPUT=IPL 功能不同。 请注意,恢复 ramdisk 镜像的名称和 ReaR 生成的内核与 OUTPUT=RAMDISK 不同。内核名为 kernel-$RAMDISK_SUFFIX,ramdisk 镜像命名为 initramfs-$RAMDISK_SUFFIX.img。RAMDISK_SUFFIX 是一个您可以在 /etc/rear/local.conf 中设置的配置变量。如果没有设置变量,则默认为系统的主机名。…
- 列表:ISO_VOLID 配置变量的默认值(其使用 OUTPUT=ISO 设置时指定生成的 ISO 镜像的标签)被改为 REAR-ISO。之前 ReaR 版本中的默认值是 RELAXRECOVER。如果您需要通过标签挂载生成的 ISO 9660 文件系统,请调整 mount 命令,以适应标签更改。或者,您可以将 /etc/rear/local.conf 中的 ISO_VOLID 变量设置为 RELAXRECOVER ,以恢复之前的行为。
第 22 章 软件管理
- 要点:查看 RHEL 9 和 RHEL 10 之间软件管理的最显著更改。
22.1. 对 DNF 的显著变化
- 要点:查看 RHEL 9 和 RHEL 10 之间 DNF 的最显著更改。
- 要点:在 RHEL 10 中,模块化功能已被弃用,并将在以后的主发行版本中删除。因此,DNF module 命令会显示一条弃用警告。
- 列表:dnf list --installed 或 dnf repoquery --installed 列出系统上安装的软件包
- 列表:dnf repolist -v 列出系统上启用的存储库
- 列表:dnf install $(</tmp/list) 将源系统上安装的软件包复制到目标系统。例如: 将源系统上安装的软件包的列表保存到 /tmp/list 文件中: $ dnf repoquery --installed >/tmp/list 将 /tmp/list 文件复制到目标系统。 复制目标系统上的软件包: $ dnf install $(</tmp/list)"
- 列表:将源系统上安装的软件包的列表保存到 /tmp/list 文件中: $ dnf repoquery --installed >/tmp/list
- 列表:将 /tmp/list 文件复制到目标系统。
- 列表:复制目标系统上的软件包: $ dnf install $(</tmp/list)"
- 命令/配置摘录:
(try to add '--skip-broken' to skip uninstallable packages or '--setopt=optional_metadata_types=filelists' to load additional filelists metadata)
$ dnf repoquery --installed >/tmp/list- 注意:注意 在以前的 RHEL 主版本中,一些 Application Streams 作为 RPM 格式的扩展,以模块形式提供。在 RHEL 10 中,红帽不会提供任何使用模块化作为打包技术的应用程序流。因此,RHEL 10 不会发布任何模块化内容。
- 注意:注意 当软件包有需要处理 filelists 元数据的 filepath 依赖项时,事务会失败并显示依赖项解析错误和以下提示: (try to add '--skip-broken' to skip uninstallable packages or '--setopt=optional_metadata_types=filelists' to load additional filelists metadata)
22.2. 对 createrepo_c 的显著更改
- 要点:查看 RHEL 9 和 RHEL 10 之间 createrepo_c 的最显著更改。
- 要点:要保存磁盘空间,createrepo_c 命令不再在 XML 文件旁创建 SQLite 数据库。您可以使用 --database 选项显式地创建数据库。
- 注意:注意 支持使用 createrepo --databases 命令创建 SQLite 数据库已弃用,并将在以后的 RHEL 主版本中删除。
22.3. 对 RPM 的显著更改
- 要点:Red Hat Enterprise Linux 10 与 RPM 版本 4.19 一起分发。与之前的版本相比,这个版本引入了很多改进。
22.3.1. 改进了用户体验和安全性
- 要点:查看 RHEL 9 和 RHEL 10 之间用户体验和安全性的改进。
- 要点:RHEL 10.1 引入了以下对 RPM 加密的更新,其为签名和验证 RPM 软件包提供了主要的安全增强:
- 列表:支持一个软件包中的多个签名
- 列表:支持新的 OpenPGP (RFC-9580)标准
- 列表:支持 RPM 软件包中的 post-quantum 加密(PQC)。PQC 是一组算法,其应该能够抵御量子计算机攻击,从而增强软件安全性。要使用 PQC 算法签名一个软件包,您可以使用 Sequoia PGP 软件。
22.3.2. 改进了打包体验
- 要点:查看 RHEL 9 和 RHEL 10 之间的打包体验改进。
- 要点:当估算构建软件包时要使用的并行进程和线程数量时,RPM 会考虑可用的物理内存和地址空间。这有助于防止性能问题或在具有受限资源的系统(如有大量 CPU ,但内存有限的系统)上的构建失败。
- 列表:通过 Lua 表轻松访问选项和参数 在以前的版本中,您必须使用 rpm.expand () 函数来访问参数化 Lua 宏的选项和参数。有了此增强,这些宏分别以 opt 和 arg 本地表来接收其选项和参数。
- 列表:对宏的简化访问 宏可以通过全局 Lua 环境中的 宏 表访问。此表还可用于调用参数化宏,包括所有内置宏。
- 列表:RPM 版本对象和 I/O 流的新绑定 您可以使用新的 rpm.ver () 函数从 RPM 版本字符串创建对象。您可以使用这些对象执行以下操作: 分别通过 e、v 和 r 字段获取各个预解析的 EVR 组件。 相互比较 RPM 版本字符串。 您还可以使用新的 rpm.open() 函数打开使用 RPM 的 I/O 功能的文件流,如透明压缩和解压缩。
- 列表:分别通过 e、v 和 r 字段获取各个预解析的 EVR 组件。
- 列表:相互比较 RPM 版本字符串。
- 列表:%{rpmversion} 用于获取系统上安装的 RPM 版本。
- 命令/配置摘录:
# dnf install rpm-sign sequoia-sq
$ cp /usr/share/doc/rpm/macros.rpmsign-sequoia /etc/rpm/22.3.3. 其他显著变化
- 要点:查看 RHEL 9 和 RHEL 10 之间 RPM 的以下显著变化。
- 要点:您可以通过以下方式之一指定补丁号:
- 列表:通过使用 -P 选项,例如 %patch -P1 -P2 来应用补丁号 1 和 2。
- 列表:通过将补丁号作为位置参数传递,例如 %patch 1 2 来应用补丁号 1 和 2。
- 注意:重要 %patchN 语法(其中 N 是要应用的补丁号)已弃用。
- 注意:注意 如果没有使用 %patch 指令明确指定补丁号,则构建会终止并显示错误。
第 23 章 系统角色
- 要点:查看 RHEL 9 和 RHEL 10 之间系统角色的最显著更改。
- 要点:在这个版本中,您可以使用 分析、修复 和 升级 Ansible 角色来自动化原位升级的预升级和升级阶段。通过使用这些 Ansible 角色,您可以快速高效地升级大量系统,从而节省时间。
第 24 章 虚拟化
- 要点:查看 RHEL 9 和 RHEL 10 之间虚拟化的最显著更改。
- 要点:在 RHEL 10 中,虚拟机的 i440fx-rhel7.6 机器类型已被 i440fx-rhel10.0 替代。因此,在将主机升级到 RHEL 10 后,使用 i440fx-rhel7.6 的虚拟机无法引导。同样,将使用 i440fx-rhel7.6 的虚拟机实时迁移到 RHEL 10 主机会导致虚拟机停止工作。
- 列表:打开虚拟机的 XML 配置: # virsh edit <vm_name>
- 列表:在 <type> 行上,将 machine 参数改为 pc-i440fx-rhel10.0。
- 列表:保存并退出虚拟机配置。
- 列表:-o rhv-upload
- 列表:-o rhv
- 列表:-o vdsm
- 命令/配置摘录:
# virsh dumpxml <vm-name> | grep "machine=" <type arch='x86_64' machine='pc-i440fx-rhel7.6'>hvm</type>
# virsh edit <vm_name>第 25 章 Web 控制台
- 要点:查看 RHEL 9 和 RHEL 10 之间的 web 控制台的最显著更改。
- 要点:默认情况下,通过 SSH 提供从单个 RHEL web 控制台会话到多个机器的主机切换器的连接已弃用,并默认被禁用。由于网络技术限制,此功能无法保证安全。
- 列表:Web 控制台登录页面(具有在 Web 浏览器会话中只能有一个主机的安全限制)
- 列表:Cockpit Client flatpak
- 命令/配置摘录:
[WebService] AllowMultiHost=yes附录 A. 对软件包的更改
- 要点:查看 RHEL 9 和 RHEL 10 之间的软件包更改,以及 RHEL 10 的次版本之间的变化。
A.1. 新软件包
- 要点:查看新添加到 Red Hat Enterprise Linux (RHEL) 10 中的软件包。
- 表格样本(共 1324 行):
- 软件包 | 软件仓库 | 新内容
- 389-ds-base-bdb | rhel10-CRB | RHEL 10.0
- adcli-selinux | rhel10-BaseOS | RHEL 10.2
- alsa-ucm-utils | rhel10-AppStream | RHEL 10.0
A.2. 软件包替换
- 要点:查看在 Red Hat Enterprise Linux (RHEL) 10 中被替换、重命名、合并或分割的软件包。
- 表格样本(共 285 行):
- 原始软件包 | 新软件包 | 修改自 | 备注
- abattis-cantarell-fonts | redhat-text-vf-fonts | RHEL 10.0
- adobe-source-code-pro-fonts | redhat-mono-vf-fonts | RHEL 10.0
- annobin | annobin-docs, annobin-plugin-gcc | RHEL 10.0
A.3. 移动的软件包
- 要点:查看在 Red Hat Enterprise Linux (RHEL) 10 中的软件仓库间移动的软件包。
- 表格样本(共 438 行):
- 软件包 | 原始软件仓库* | 当前软件仓库* | 修改自
- acpica-tools | rhel9-BaseOS | rhel10-CRB | RHEL 10.0
- ant-openjdk21 | rhel9-AppStream | rhel10-CRB | RHEL 10.0
- ant-unbound | rhel9-CRB | rhel10-AppStream | RHEL 10.0
A.4. 删除的软件包
- 要点:查看属于 RHEL 9 但未随 Red Hat Enterprise Linux (RHEL) 10 一起发布的软件包。
- 表格样本(共 1331 行):
- 软件包 | 备注
- aajohan-comfortaa-fonts
- adwaita-gtk2-theme
- adwaita-qt5
A.5. 带有不被支持的软件包
- 要点:查看 RHEL 9 中支持的存储库以及 CodeReady Linux Builder 存储库 RHEL 10 中的软件包。
- 要点:RHEL 10 中的某些软件包通过 CodeReady Linux Builder 存储库分发,其中包含供开发人员使用的不受支持的软件包。
- 注意:注意 下表包含 RHEL 9 支持但 RHEL 10 不支持的软件包。
- 表格样本(共 21 行):
- 软件包 | RHEL 9 存储库
- acpica-tools | rhel9-BaseOS
- babel | rhel9-AppStream
- evolution-data-server-devel | rhel9-AppStream
完整目录
- RHEL 9 和 RHEL 10 之间的主要区别
- 对红帽文档提供反馈
- 第 1 章 评估升级到 RHEL 10 的主要资源
- 第 2 章 构架
- 第 3 章 软件仓库
- 第 4 章 应用程序流
- 第 5 章 容器
- 第 6 章 编译器和开发工具
- 第 7 章 桌面
- 第 8 章 动态编程语言、网页服务器、数据库服务器
- 第 9 章 RHEL for Edge
- 第 10 章 文件系统和存储
- 第 11 章 硬件启用
- 11.1. 未维护的硬件支持
- 11.2. 删除的硬件支持
- 第 12 章 高可用性和集群
- 第 13 章 身份管理
- 第 14 章 基础架构服务
- 第 15 章 安装程序和镜像创建
- 15.1. 图形用户界面
- 15.2. Kickstart 的修改
- 15.3. 镜像创建
- 第 16 章 内核
- 16.1. 内核的显著变化
- 16.2. 引导装载程序的显著变化
- 第 17 章 命令行助手
- 第 18 章 网络
- 第 19 章 性能
- 第 20 章 安全性
- 20.1. 安全合规性更改
- 20.2. 对加密组件的更改
- 20.3. 对 SELinux 的更改
- 第 21 章 Shell 和命令行工具
- 21.1. 系统管理的显著变化
- 21.2. 对命令行工具的显著更改
- 第 22 章 软件管理
- 22.1. 对 DNF 的显著变化
- 22.2. 对 createrepo_c 的显著更改
- 22.3. 对 RPM 的显著更改
- 22.3.1. 改进了用户体验和安全性
- 22.3.2. 改进了打包体验
- 22.3.3. 其他显著变化
- 第 23 章 系统角色
- 第 24 章 虚拟化
- 第 25 章 Web 控制台
- 附录 A. 对软件包的更改
- A.1. 新软件包
- A.2. 软件包替换
- A.3. 移动的软件包
- A.4. 删除的软件包
- A.5. 带有不被支持的软件包
