最近两个月我一直在我的旧戴尔笔记本上尝试各种 linux 发行版。算上之前在虚拟机、wsl、服务器端使用 linux 的经历,我也差不多用过 5、6 种发行版了,所以我觉得是时候写一篇博客大致记录一下这段时间使用不同发行版的感受了。
# Ubuntu
无论我现在多么讨厌 Ubuntu,我都必须承认这是我 linux 入门的系统,也是我相对来说比较熟悉的 linux 发行版。我第一次在虚拟机上装的就是 Ubuntu 20.04,第一次在 wsl 上装的也是 Ubuntu,我的个人网站、给北师大这边写的选课社区和课程小游戏的服务器也都用了 Ubuntu server。
我最早是在 2020 年的时候开始用 Ubuntu 的。那个时候疫情关在家里,刚开始学习前端和后端,因为没有找到资料,我那个时候错误地以为服务器只能用 Ubuntu,然后又错误地认为既然服务器用 Ubuntu 那么开发机器也得用同样的系统,于是乎我就搞了 vmware 装上了 Ubuntu。现在回看那个时候的自己,真的是傻的可爱,对于 linux 有着各种错误的认识,运行的命令一大半看不懂,用一下 vim 都能让我困扰很久。不过也是从那个时候开始,我开始慢慢接触命令行,对于计算机的了解算是深入了不少;我也是从那个时候开始对 vim 逐渐感兴趣,直到后来完全使用 neovim 进行开发。
话说回来,我对 Ubuntu 的反感远远早于我对 linux 有更加深入的了解之前。这大抵就是操作性条件作用的影响,我作为一个小白的时候就几乎没从使用 Ubuntu 上得到什么积极的强化,导致我将 Ubuntu 和消极的情绪形成了联结。而在我现在渐渐更多了解 Ubuntu 之后,我发现它默认启用的 snap、曾经收集用户隐私的黑历史、广为流传的“内部错误”,这些都很难让我喜欢这个系统。
另外,我也在别处看到了一句我很认同的话:
Ubuntu is the big dog these days, and people don’t like that.
确实,Ubuntu 现在太为人熟知了,这并不是什么坏事,但是一般来说什么东西做大之后饭圈总会闻着味就来了,现在也不乏有人直接把 Ubuntu 和 linux 划等号,虽然我们不可能根据别人使用什么 linux 发行版直接断定其层次高低,但是我还是难免在用 Ubuntu 的同学问我问题时候咯噔一下,因为无法确定他到底对 linux 有多熟悉。
不过,我们还是得承认 Ubuntu 这些年的优秀之处。我虽然因为种种原因大概率不会回归 Ubuntu 了,但是我并不介意使用那些基于 Ubuntu 的发行版。
# Debian
很长一段时间,我都只在服务器上使用 Ubuntu。后来,我了解了 wsl,然后在 wsl 上装了 Ubuntu,但没过多久我就不知道咋的把 wsl 整挂了。于是借此机会,我决定换一个发行版尝试一下,最终我选择了 Debian。毕竟 Ubuntu 基于 Debian,二者的包管理器都是一脉相承,在切换上应该不会有太大的学习成本。
不过我最终使用 Debian 的时间停留在了 1 个小时左右——Debian 的包太老了,当时我已经开始用 neovim 了,我在 windows 上的 neovim 是 0.8 版本的,而 Debian 上的,是 0.4 版本……我并不是那种对于最新版本有着变态追求的类型,但至少,我不能接受我使用的软件都是几年以前的。于是,我果断放弃了使用 Debian。
不过,最近一直在关注的 Debian 12 似乎很大程度上更新了软件包和内核版本,加上当初我并不知道 Debian 还有 test 和 unstable,所以那时候的看法多少有些偏见在里面,也许今后我还会尝试一下 Debian。
# CentOS
好叭这个可以算是来凑数的了,因为我在这个发行版上花费的时间比 Debian 还短。我唯一一次接触 CentOS 是在服务器上,也就是开发心理学经典研究小游戏的时候。这个项目最早是在 2017 年开始的(疑似),所以服务器用的还是 CentOS 6 和 Python 2,甚至后端只有一个 python 脚本而没有使用框架导致那个游戏频繁挂掉……反正就,我与 CentOS 的第一次相遇真的很不美好,而且那还是我第一次接触 rpm 系的发行版,总之各种 debuff 叠满了,再考虑到 CentOS 已经快寄了,再再考虑到这个系统主要是在服务器上用,估摸着以后我也不会再去碰它了。
# Arch
这是对我意义极其重大的一个发行版,因为这是我第一次在真机上装 linux 系统。第一次就选择装 Arch 一是因为此前我已经在 wsl 上用了半年 Arch,二是因为很长时间总能听到关于 Arch 有多么难装的说法。不过在我照着文档一遍过之后,我意识到这玩意根本没有多难装——你顶多可以说这个安装起来麻烦(不然 Manjaro、Arco 这些衍生版也不会总想着弄图形安装界面了);除非你对命令行一窍不通,那我承认纯命令的安装方式可能有点难度。
真正的难度在于后面的配置——Arch 实在是太干净太清爽了,而相应付出的代价就是什么东西都要自己弄。一开始,我想用 KDE 桌面,但是不知道为什么永远超级卡顿;然后,我换成了 Hyprland,配置了很久终于搞出了一个很不错的配置,但却无法解决输入法窗口以及光标的一些偶发性 bug;再后来,我换成了 Gnome,但是我又不喜欢 Gnome(我总感觉 Gnome 像是平板该用的东西)。
而除了桌面,其他大大小小的问题也给我带来了不少困扰。比如,我的戴尔笔记本的声卡无法被识别,必须要我添加一个奇奇怪怪的文件才行;我配置好了 tlp,但是使用笔记本电池的时候还是掉电飞快;等等。
其实,这些东西都不是什么大问题,当你攒出来一套能用的配置,以后就不太需要在这上面花费太多时间了。而且在攒配置的过程中,真的可以学到很多东西。我就是在整个过程中学到了很多新的概念,比如 DE、WM,如果不自己装一次 Arch,我恐怕永远没有机会接触这些。而且 Arch 能够带来舒适的地方也有很多,比如永远最新的软件包,Aur 带来的丰富的包的选择,全 linux 发行版中最强大的 wiki,热心的论坛……可以说,Arch 实在是一个优秀的选择。
但是我最终还是放弃了 Arch。一个主要的原因,Arch 的滚动更新我虽然很喜欢,但我每年会固定有两次几个月碰不到我装了 linux 的本本(寒暑假),这样真的很容易滚挂。另一个原因,和我讨厌 Ubuntu 的原因一样,我真的总是能看到那种 “Btw I use Arch” 的人,这不是 Arch 的问题,但是一个圈子里 ky 的多了总是招人烦。
# Fedora
Fedora 是我在被配置 Arch 折腾的没了脾气期间用的。Fedora 真的很棒,Linus 现在用的都是 Fedora。但是,一来我不喜欢 Gnome,而 Fedora 提供的其他几个 spin 或多或少有些问题(我用了 i3 和 sway 的 spin 都出了问题);二来我用不来 dnf,因为不够简洁(尤其是考虑到此前我用的是 pacman);再有我总感觉 Fedora 作为红帽的试验田用起来多少有点犯膈应。以及我那个时候多少还有点为放弃 Arch 心有不甘,于是我又离开了 Fedora。
# openSUSE
大蜥蜴是我接触最晚但用的最长的发行版了。我选择的是 openSUSE Tumbleweed,原因很多,因为 tw 有着最稳定的滚动更新,因为 openSUSE 能提供最好的 KDE 使用体验,因为(一开始认为)YAST 很棒。
但是我现在又开始动摇了。大蜥蜴说到底还算是 rpm 系,但 rpm 相比于 deb 包会更少;openSUSE 提供了 obs 和 opi 但是这里很多包都是用户自己构建的,而且也不像 Aur 那样能看到大家对于包的反馈,这导致很多包我根本不敢用);openSUSE 的中文社区看起来还不错,但是它发帖还需要版主审核(我还是更喜欢 Arch 那样的 Newbie Corner);YAST 初看很惊艳但大多数时候我真不太用得到图形界面去进行系统设置,比如换源这种操作我还是喜欢在命令行做;openSUSE 在国内实在过于冷门,一些解决方案也不是很好找……
我仍然在坚持用大蜥蜴,但是我也在尝试找其他的替代方案。最近感觉 Linux Mint 似乎是个不错的选择,也许以后可以进行尝试。