我的 Linux 使用现况

· 技术 · 约 3158 字

正在努力学习 Red Hat Enterprise Linux、Debian GNU/Linux 和 Alpine Linux。

Debian GNU/Linux

Debian GNU/Linux 是我用的最多的 Linux 发行版,涵盖了我的 Home Server、我的 NAS,以及我曾经购买的一些云服务器。

本家

第一次接触 Debian 应该是 12 Bookworm 时期,那时或许我正在尝试从 Windows 再次搬迁到 Linux 上,但是失败了。

不过,虽然我确实没能将 Debian 作为我的日用系统,但它成功成为了我的服务器系统首选:Home Server 所用的 PVE、多个 Debian LXC 容器和 Debian Cloud 虚拟机、NAS 所用的 TrueNAS CE(以前的 TrueNAS Scale),甚至买云服务器的时候都会特地勾选它,偶尔用到 WSL 的时候也是盲选它。

Ubuntu

搞笑的是,我第一次尝试 Linux 是 2016 ~ 2017 这两年,尝试的正是从 Debian 衍生出来的 Ubuntu。

不过我也不记得,我是从哪一个时刻开始就不再用 Ubuntu 了。可能是 Canonical 像当年强推 Unity DE 一样强推 Snap、令人感到不适,或是不间断的抽风,亦或是自 22.04 开始、Ubuntu 再也没有当年的味了。

不过嘛,我的电脑上的 VMware Workstation 的虚拟机列表里,静静躺着 22.04 和 24.04 的 Ubuntu 虚拟机。这两个虚拟机是我用来测试 ROS 2 的配置用的——ROS 2 直至现在仍然仅官方支持 Ubuntu。但是,我并不从事需要 ROS 2 的相关行业,所以平常也是吃灰。

Red Hat Enterprise Linux

Red Hat Enterprise Linux 是红帽公司开发的、面向企业的 Linux 发行版本。不过,在几年之前,大家可能对另一个由 RHEL 衍生的系统更为熟悉——CentOS Linux。

本家

去年的 Linux 专业课是以 RHEL 作为教学目标,但是我的笔记本资源不太够用,因此在家里云上安排了一个 RHEL 9 的虚拟机。

RHEL 需要订阅才能够更新软件包、以及使用部分系统功能。不过这个好解决:红帽有一个仅供学习使用的 Individual Subscription 可以申请,申请后拿去激活 RHEL 就能正常使用了。

操蛋的是,如果这个虚拟机比较久不开机,那么系统订阅就会提示 已过期,但订阅里又显示该系统已激活,且在我这里、系统中取消订阅并重新激活也没有作用。太神奇了。

CentOS

2020 年,在 CentOS Linux 8 发布不到两年,红帽和 CentOS 项目将重心转移到了新的 CentOS Stream 项目,并于 2021 年起终止了 CentOS Linux 的开发和维护,同时催促仍然在使用 CentOS Linux 7 ~ 8 的用户迁移到 RHEL。2021 年末,CentOS Linux 8 终止维护,寿命比 2014 年发布的 CentOS Linux 7 还短;2024 年中,CentOS Linux 7 项目停止维护,宣告 CentOS Linux 的终结。

相比 CentOS Linux,这个船新的 CentOS Stream 其实就是从 RHEL 的下游走向了上游,并采用了滚动更新的形式 怎么看都像是提前给下一个 RHEL 版本探路的样子。不过,我对 RHEL 的用途仅限于学习,且当今都有人用更上游的 Fedora Server 搭建服务器、且怎么看都很稳定的样子,那我拿 CentOS Stream 来作学习用途应该没啥大不了的。

openEuler

openEuler 是一个由 开放原子开源基金会 孵化及运营的、疑似是 RHEL 支系 使用 RPM 包管理器的 Linux 发行版。

今年第一学期的 Linux 专业课的教学目标从 RHEL 更换为了 openEuler,但我机上的 openEuler 虚拟机无时无刻都在抽风(在实机上应该没这个问题)。考虑到这门课居然是用 openEuler 学习红帽系统管理,那我私底下就把 openEuler 换成 CentOS Stream 用了。

Alpine Linux

Alpine Linux 是一个以安全为理念的、目前在我用的 Linux 系统中比较轻量的一个 Linux 发行版。相比 Debian 和 RHEL 的区别在于包管理器的不同(dpkgrpm),Alpine Linux 不仅是包管理器不同(apk)、且基于 OpenRC 和 Busybox 打造。

BTW 我目前用到 Alpine Linux 的地方非常少,仅在一个专门为 Tailscale 运行的虚拟机中使用,因为 OpenRC 初始化 Linux 的速度要稍快于 Systemd。

不要问为什么不用 LXC,在 LXC 里配置 Tailscale 的路由转发特别麻烦,这点内存还是不缺的。

运行在容器里的 Alpine Linux 十分轻量。在空载情况下,相比 Debian,Alpine Linux 的 LXC 容器仅仅占用 16MB 内存,而前者占用 64MB 往上的内存。

Arch Linux

BTW I use Arch.

Arch Linux 是我在个人电脑上用的时间最长的 Linux 发行版。第一次接触应当是在 2021 ~ 2022 年,彼时经过几年迭代,Arch Linux 的滚动更新也不至于把整个系统都炸了,所以怀揣着新鲜感体验了一把。最后因我懒得花时间折腾、不再使用。

本家

在我第一次接触 Arch Linux 的时候,官方并没有给予一个便利的 Installation Script(也就是现在的 arch_install),所以每安装一次都要看教程、打完无数指令。我至今都不记得 Arch Linux 的核心包是哪些,但我在不断的安装下学会了 fdisk 的用法(雾),成功在大学领先一帮人。

Manjaro

Manjaro Linux 是 Arch Linux 衍生而来的一个 Linux 发行版。个人在 @Mashirl 的引荐下使用过一段时间,因小问题频繁、系统较为笨重,最后不再使用、选择老老实实自己配好 Arch Linux。

同时,因 Manjaro 在前几年进行商业化推进,引得部分 Linux 用户的不满。

不要纠结选什么 Linux 发行版了

就日常用途来说,本文提到的所有发行版里,除了 Alpine Linux 用的是 OpenRC init,其余几个发行版更体现在包管理器的不同。因此你更适应哪个发行版、哪个发行版有你需要的功能,就选哪个好了。世界上没有绝对十全十美的事物。

喜欢的话,投喂亿下孩子吧(逃)
爱发电

💬 在 s-complex/discussions 上发表你对本文的看法。