Skip to main content

「碎碎念」我有多久没有用过 Linux 桌面环境了

· 5 min read

仔细想想,虽然工作流没有离开过 Linux,但是我大概有两年没使用 Linux 的桌面环境了。最近又遇到了诸如 centos 停止维护,chroot里跑不起来chrome-sandbox等事情,感觉已经可以拿这个主题写一篇文了。

我曾经热衷于对 Linux 的桌面环境动手动脚,搞一些花里胡哨的东西,在这点上 Linux 比起 Windows 和 MacOS 确实更自由,但是后来逐渐需要安装一些工程软件、需要边码代码边用 IM 了,Linux 桌面环境逐渐变成了累赘,兼容性、流畅度、各种小bug就比较糟心了,虽然 Windows 的桌面环境同样有一些祖传问题,但整体上还是省心很多的。要说抛弃 Linux 的桌面环境,还是要感谢时代发展的。~~当然,前提是我的工作对 Linux 内核不敏感。~~

我目前的工作设备大概就三个/种:台式机、笔记本、服务器,分别对应下面的三个小节。至于 Mac,要入就入全套,入了全套打游戏还得是 Windows。

AWSL:啊,Windows Subsystem for Linux

Windows 10 Build 20211 之后的 Windows Subsystem for Linux 2 让我哪怕一点在电脑上安装 Linux 的想法都没有了,Windows 10 的预览版本我是开了又关了又开,上一次还是为了把 WSL 更新到 WSL2。Build 20211 实现的读写挂载 ext4 分区可以说是我最后一个在机器上装独立 Linux 的理由了。 在平时的使用上 WSL 和独立 Linux 没什么差别,可以选择自己喜欢的发行版也可以多版本共存,不仅仅是 WSL 本身,VSCode 的 Remote - WSL 官方插件提供了更好的 shell 环境,Docker 可以将 WSL2 作为容器内核运行,JetBrains 套件也为 WSL 做了适配,X Window 系统的 c/s 结构也方便了将 WSL 中的 GUI 投到 Windows 桌面中,还有什么不使用它的理由吗。无论是娱乐聊天还是开发调试都可以在一个 Windows 上解决,何必又要用双系统或虚拟机呢?

CROS:便携轻薄本的神

ChromeOS 我认为并不能称为正统的 Linux 发行版,就像 Android 一样。但谷歌确实比较取巧,CROS 除了一个桌面以外,其他部分可以说直接使用了谷歌在 Android 和 Web 上的生态,而谷歌在这两个领域的庞大生态不言而喻,关于 CROS 我的博客写过太多文了就不多提了。我并不想将 CROS 的桌面环境称为 Linux 的桌面环境,和 gnome、kde 一众比起来,CROS 的桌面环境既专用又简陋。 我曾经通过 ChromeBrew 将 CROS 自己的 shell 作为开发环境,但后来发现这并不十分合适,一方面是因为确实不安全,另一方面是谷歌并没有给根路径预留多少空间。所以后来还是选择了容器,一个是官方的 lxc 容器 crostini,一个是社区的 chroot 容器 crouton,考虑到 lxc 仍然存在低于 10% 的性能损耗,我用了很久的 crouton,但是最近一次调试过程中发现 crouton 还没有实现 namespace 功能,而且目前 crouton 的开发并不积极,或许最后还是要用 crostini。

WebUI:网页技术大胜利

服务器上的 WebUI 倒不是什么新鲜事,给我一个 shell,再给我一个 browser,我就能 ops。