如何选择 Linux 发行版

介绍

要建立云服务器,首先需要做的是安装操作系统. 在现代背景下,这几乎是Linux操作系统的全部时间. 历史上,Windows服务器和其他类型的Unix在具体的商业环境下都很受欢迎,但由于Linux得到广泛的支持,自由或灵活的许可,以及服务器计算中整体上无所不在,现在几乎每个人都在运行. 有许多Linux发行,每个都有自己的维护者,有些有商业供应商的支持,有些没有. 以下各节所详述的分布是运行云服务器的一些最受欢迎的操作系统.

景观概览

Ubuntu 是为服务器和桌面计算机提供的最受欢迎的 Linux 发行版之一. 每六个月发布一次新的 Ubuntu 版本,并且每两年发布一次新的 Ubuntu 长期支持版本,并且支持五年。

Debian 是Ubuntu的** 上流** ,指其核心建筑决定通常为Ubuntu发布提供参考,它使用与Ubuntu使用的同** .deb** 软件包格式和"apt"软件包管理器. Debian因其保守的包装选择和缺乏商业支持,对出品服务器来说并不那么受欢迎. 然而,许多用户选择Debian是因为其可移植性,以及它作为不同平台上许多其他Linux发行的基准,包括** Raspbian** ,最受欢迎的Raspberry Pi OS.

Red Hat Enterprise Linux 或** RHEL** ,是最受欢迎的商业支持的Linux发行版,与 Debian 系列不同,它使用** .rpm** 包和名为dnf的包管理器,以及它自己的工具生态系统。

{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}雷德的下游 帽上Ubuntu在德比安下游的方式,与大多数其他Linux发行版不同,RHEL可以像其他Linux发行版一样自由使用,使其成为已经采用"红帽"工具但可能没有使用"红帽"商业支持"的用户的流行选择. 之前,一个名为CentOS 的发行填补了与Rocky Linux相同的角色,但其发行模式正在发生变化. Rocky Linux版本与RHEL版本密切跟踪,大多数文档可以由两者共享.

Fedora Linux 是红帽的上游,和Ubuntu一样,在桌面环境和服务器上使用。Fedora是大多数RHEL生态系统包的实际开发家,以及Ubuntu和其他人默认使用的Gnome桌面环境。

Arch Linux 是另一个流行的以桌面为中心的Linux发行版,它既不是Debian或Red Hat Linux家族的一员,但提供自己的独特的包装格式和工具。与其他发行版不同,它不使用任何类型的发布版本 - 它的包总是最新的可用。

Alpine Linux 是一个最低限度的Linux发行版,默认情况下不提供许多常见的工具。历史上有许多Linux发行版创建了这个目标。Alpine通常用于现代集装箱部署,如Docker,您的软件可能需要一个虚拟化操作系统来运行,但需要保持其总体足迹尽可能小。

以前,在他们选择 init systemwindow manager 和其他库时,发行版之间存在更多的差异,但现在几乎所有主要的 Linux 发行版都已对 _systemd 和其他类似工具进行标准化。

选择一个分布

有许多其他Linux发行版,但大多数其他发行版目前可以从这七个版本中理解,正如你从这个概述中可以看到的那样,你对Linux发行版的选择标准大多会是:

  • 您是否有 Debian 衍生产品或 Red Hat 生态系统的要求 * 您是否将主要开发用于云、桌面或容器 * 您是否需要使用最新的可用或稳定的包

选择一个发行版取决于偏好,但如果你在云中工作,并且对红帽生态系统没有任何生产要求,Ubuntu 是受欢迎的默认选择。你也可以从他们的面向网络的包存库中查看给定发行版的可用包。例如,Ubuntu 22.04 )。

包装管理

大多数Linux发行版在第三方软件包——从寄存器自己的软件包源中无法获取的软件包——是如何创建,发现,安装的方面也有很大差异. Red Hat,Fedora,和Rocky Linux一般除了官方的包外,只使用几个受欢迎的第三方包寄存器,符合他们更权威,更注重出产的方法. 其中一款是"企业Linux的外包"(https://docs.fedoraproject.org/en-US/epel/)或_EPEL_. 因为 RHEL 生态系统对商业支持的软件包和不支持的软件包进行了区分,所以许多在Ubuntu 上的盒子中可用的常见软件包需要您配置 ETEL 以安装在红帽上. 在这种和许多其他情况下,从你自己的寄存器上向上游提供的软件包往往比任何其他情况都更具有权威性和维护责任。 许多第三方的软件包来源被广泛信任,它们可能只是超出了您的发行维护者的范围.

Ubuntu允许个人用户创建_PPAs_,或个人软件包档案,为他人安装维护第三方软件. 然而,同时使用过多的 PPA 会导致不相容性头痛,因为Debian 和 Ubuntu 软件包的版本都具有特定的要求,因此 PPA 维护者需要相当接近 Ubuntu 的上游更新. Arch Linux有一个用户提交包的单一寄存器,适切地称为Arch用户寄存器或-AUR_,虽然它们的方法比较看似比较混乱,但如果使用几十个第三方包,实际上会更方便.

通过Homebrew或通过Docker安装第三方软件,也可以避免给系统包管理器增加复杂性. 虽然容器化或集装箱化部署在磁盘使用和安装间接费用方面可能效率不高,而Alpine Linux正是在这种情况下被考虑的,但它们是可移植的,在分发过程中并不对您的系统提出任何版本要求。 然而,任何由您的系统包管理器未安装的软件包可能默认不会收到自动更新,这应该是另一个考虑因素.

结论

在本教程中,您审查了选择云 Linux 发行版的一些最重要的考虑因素。现在广泛使用 Docker 和其他容器引擎意味着选择发行版在你可以运行的软件方面并不像过去那样具有影响力。

有关如何在不同的 Linux 发行版上使用系统包管理器的更多信息,请参阅 Package Management Essentials

额外资源

Published At
Categories with 技术
comments powered by Disqus