比较 AL2 和 AL2023 - Amazon Linux 2023

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

比较 AL2 和 AL2023

以下主题描述了 AL2 和 AL2023 之间的主要区别。

有关 AL1、AL2 和 AL2023 中已弃用的功能的更多信息,请参阅。AL2023 中已弃用的功能

添加、升级和删除了软件包

AL2023 包含数千个可供使用的软件包。有关与之前的 Amazon Linux 版本相比,AL2023 中添加、升级或删除的所有软件包的完整列表,请参阅 AL2023 中的软件包变化

要申请在 AL2023 中添加或更改软件包,请在亚马逊 linux- 2023 存储库中提交问题。 GitHub

针对每个版本的支持

对于 AL2023,我们提供为期五年的支持。

有关更多信息,请参阅 发布节奏

命名和版本控制更改

AL2023 支持的平台识别机制与 AL2 所支持的机制相同。AL2023 还为平台识别引入了新的文件。

有关更多信息,请参阅 命名和版本控制

优化

AL2023 优化了启动时间,以缩短从实例启动到运行客户工作负载的时间。这些优化涵盖 Amazon EC2 实例内核配置、cloud-init 配置和内置于操作系统包(例如 kmodsystemd)中的功能。

有关优化的更多信息,请参阅性能和操作优化

来自多个上游

AL2023 基于 RPM,包括来自多个版本的 Fedora 和其他发行版(例如 CentOS 9 Stream)的组件。Amazon Linux 内核直接源自来自 kernel.org 的长期支持 (LTS) 版本,该版本是独立于其他发行版选择的。

有关更多信息,请参阅 与 Fedora 的关系

网络系统服务

systemd-networkd 系统服务管理 AL2023 中的网络接口。这与 AL2 有所不同,后者使用 ISC dhclient 或 dhclient

有关更多信息,请参阅 网络服务

软件包管理器

AL2023 上的默认软件包管理工具是 DNF。DNF 是 AL2 中软件包管理工具 YUM 的后继版本。

有关更多信息,请参阅 软件包管理工具

使用 cloud-init

在 AL2023 中,cloud-init 管理软件包存储库。默认情况下,在早期版本的Amazon Linux 中,cloud-init 安装了安全更新。但这不是 AL2023 的默认设置。用于在启动时更新 releasever 的确定性升级功能描述了 AL2023 在启动时启用软件包更新的方式。有关更多信息,请参阅在 AL2 023 中管理软件包和操作系统更新确定性升级用于提高稳定性

对于 AL2023,您可以将 cloud-init与 SELinux 一起使用。有关更多信息,请参阅 使用 cloud-init 启用 enforcing 模式

Cloud-init 使用 cloud-init 从使用 HTTP(S) 的远程位置加载配置内容。在早期版本中,当远程资源不可用时,Amazon Linux 不会提醒您。在 AL2023 中,不可用的远程资源会导致严重错误并导致 cloud-init 执行失败。AL2 的这种行为变化提供了更安全的“发生故障时关闭”默认行为。

有关更多信息,请参阅定制 cloud-initcloud-init 文档

图形桌面支持

AL2023 以云为中心,针对 Amazon EC2 的使用进行了优化,目前不包括图形或桌面环境。要提供有关的反馈 GitHub,请参阅 https://github.com/

编译器三元组

AL2023 为 GCC 和 LLVM 设置编译器三元组,以表明 amazon 是供应商。

因此,AL2 aarch64-redhat-linux-gcc 成为 AL2023 上的 aarch64-amazon-linux-gcc

对于大多数用户来说,这应该是完全透明的,并且可能只会影响那些在 AL2023 上构建编译器的用户。

32 位 x86 (i686) 软件包

作为 2014.09版本AL1 的一部分,宣布这将是最后一个生产32位AMI的版本。因此,从 AL1 2015.03 版本开始,Amazon Linux 不再支持在 32 位模式下运行系统。AL2 为 x86-64 主机上的 32 位二进制文件提供了有限的运行时系统支持,并且没有提供开发包来支持构建新的 32 位二进制文件。AL2023 不再包含任何 32 位用户空间软件包。我们建议您完成向 64 位代码的过渡。

如果您需要在 AL2023 上运行 32 位二进制文件,则可以在运行在 AL2023 之上的 AL2 容器中使用 AL2 的 32 位用户空间。

lsb_releasesystem-lsb-core 软件包

过去,一些软件会调用 lsb_release 命令(由 system-lsb-core 软件包在 AL2 中提供)来获取有关其正在运行的 Linux 发行版的信息。Linux Standards Base (LSB) 引入了此命令,Linux 发行版采用了此命令。Linux 发行版已经演变为使用更简单的标准,将这些信息保存在 /etc/os-release 和其他相关文件中。

os-release 标准来自 systemd。有关更多信息,请参阅 systemd os-release 文档

AL2023 不附带 lsb_release 命令,也不包括 system-lsb-core 软件包。软件应完成向 os-release 标准的过渡,以保持与 Amazon Linux 和其他主要 Linux 发行版的兼容性。

Extra Packages for Enterprise Linux (EPEL)

Extra Packages for Enterprise Linux (EPEL) 是 Fedora 社区中的一个项目,其目标是为企业级 Linux 操作系统创建大量软件包。该项目主要制作 RHEL 和 CentOS 软件包。AL2 与 CentOS 7 高度兼容。因此,许多 EPEL7 软件包在 AL2 上运行。但是,AL2023 不支持 EPEL 或 EPEL 类似的存储库。