本篇文章为视频稿,成品视频见:Linux与PC——成也开放,败也开放

(注:本期视频讨论的Linux均指GNU/Linux)
Linux,三大计算机操作系统之一,由Linus Torvalds开发,绝大多数功能由开源社区驱动。熟悉他的人知道,它广泛运用于服务器领域,但在个人PC上,却依旧难以与Windows与macOS平齐。为什么开源免费的系统得不到大众认可?这可能是一众搞机佬困惑已久的问题。这期,让我们探讨一下,Linux与个人市场的种种不合之处。

  1. 国内软件适配
    对于许多专业软件只支持Windows,我们这里不再赘述。最令我抓狂的其实并不是这个,而是当你知道自己使用的软件支持Linux,满心欢喜地安装好系统后,发现它的适配是“有条件”的适配。腾讯会议,一款令中国Linux用户痛骂“不作为”的软件,在2025年,竟然还不支持Wayland桌面!对,你没听错,它依然仅仅支持老古董X11!想要在Wayland下用?不好意思,自己去改/opt目录下面的启动脚本。改完了,不好意思,屏幕共享开不了,自己去找办法吧。这些公司应该做的事,最终完成的是Github上的广大码农!当你过五关斩六将,手动编译wemeet-wayland-screenshare或者安装flatpak包腾讯会议,高高兴兴地想要投入使用的时候,你会发现你得到的是阉割版,连互动批注这样简单的功能都不能使用!不好意思,这个真的没办法。类似的软件还有搜狗输入法,不仅不支持Wayland,在fcitx5盛行的年代竟然还只支持十多年前的fcitx!你说它落后吧,它好歹支持Linux,你说它不落后吧,它依赖的是十多年前的老古董。

  2. 包管理
    apt这个词,对于Debian系的用户来说再熟悉不过了,它是Debian的包管理器。我记得我一开始接触树莓派的时候,印象最深的指令是sudo,第二深的就是apt。Linux的各种软件包存在着错综复杂的依赖关系,因此被戏称为依赖地狱(Dependency Hell)。LinusTechTips中的Linus在他挑战使用Linux一个月的时候遇到的第一个挫折就是:一个Steam安装包搞垮了他的Pop!_OS桌面,究其原因,就是包管理的依赖过于复杂。A软件要1.2,B软件要1.3,C要qt5,D要qt6,谁也不让谁,最终只能二选一。同样的悲剧,也上演在Python3的pip,每次装新库,永远要带上那万恶的--break-system-packages,装的时候总是生怕一不小心,系统完蛋。Flatpak/Snap?给我的感觉是:原生适配不多,安装包也臃肿,Steam的.deb安装包仅几十MB,而其Flatpak安装要占用上百MB,但不可否认,它确实在一定程度上缓解了依赖问题。

  3. 终端优先
    Linux给普通用户的第一印象,基本都是如山一样堆积的复杂的系统命令,而事实也确实如此。随便翻开任何一个Linux软件的安装说明,你几乎总能看到命令行,有的一两行装依赖,有的十来行装证书,ppa源。问题是:为什么Linux不能够像Windows,macOS那样足够简单上手?我知道有的人会说:哎呀KDE上的Discover不也挺不错的吗?但你忽略了一个问题:并不是所有开发者都认为你在使用图形界面安装软件。举个例子:Howdy,一个Windows Hello样式的人脸解锁软件包,它的初次安装配置就是要在安装过程中的命令行手动执行的。这种配置映射到"应用商店"的结果是什么呢?进度卡死!你又会说:pkill终止任务再sudo apt --fix-broken install不就好了。但是,你真的认为一个普通用户知道如何修复吗?你真的认为一个普通用户会有心思热衷于熟练掌握apt的命令吗?对于只想“用电脑”而不是“玩电脑”的用户,这道鸿沟确实难以逾越。

说了这么多,概括起来,Linux对于个人用户的特点就6个字——没生态,还折腾。Linux在服务器市场中的广泛应用不可否认,它用轻量,强大,开源,免费的核心特质,支撑起了全球的网络服务,我本人也依然在使用诸如apache2等Linux服务器软件来搭建网站。而至于个人市场,虽然在最近几年,我们确实能看到Linux在个人PC上市占率的进步,但是,至于能否完全赶上Windows和macOS?我的个人结论是:为时尚早。