2003,Linux 遇到法律阴影
古董级程序员,大厂出来后一直在创业公司,现在仍活跃在一线做 AI 相关开发。更完整的更新写在微信公众号「字与码」:工作经历、对新技术的想法,以及这些年折腾工具、模型和工程系统的记录,会不定期发在那里。
2003 年,Linux 的上升感还在,但空气里多了一点阴影。
前一年,Linux 正在学会做生意。Red Hat 推出面向企业的 Advanced Server,UnitedLinux 试图联合几家发行版公司,OpenOffice.org、Mozilla、GNOME、KDE 又让桌面 Linux 继续有想象力。
到了 2003 年,另一个问题开始变得更具体:我们每天使用、修改、分发的这些开源软件,到底意味着什么?
这不是一句哲学问题。
它会落到许可证,落到产品边界,落到客户合同,落到公司能不能闭源一部分代码,落到工程师能不能随手把网上找到的代码放进项目里。
这里需要修正一个时间线。
Richard Stallman 并不是 2003 年由我当时所在公司接待来华。更准确的说法是:1999 年,他由 TurboLinux 公司邀请来到中国,而 TurboLinux 是后来我进入的那家公司的前身。这个细节很重要。它说明自由软件运动和中国 Linux 热潮的交汇,比我进入 Linux 公司更早,也不是我个人经历中的“当年现场”。
所以这一篇不写“我见到 Stallman”。这一篇写 2003 年 IT 历史里真正发生的变化:SCO 诉 IBM 让 Linux 第一次被大规模放进法律争议里,Red Hat Enterprise Linux 3 和 Fedora Project 让企业版与社区版路线更清晰,自由软件、开源、商业化和合规这几件事开始缠在一起。
自由软件不是“免费软件”
很多人第一次听到 free software,会自然理解成“免费软件”。
但 Stallman 反复强调的 free,不是价格上的 free,而是自由上的 free。
使用软件的自由,研究软件如何工作的自由,修改软件的自由,分发原始版本和修改版本的自由。这个说法在今天看起来很基础,在当时却会带来很多争论。
因为国内很多人接触 Linux,最开始确实是从“不要钱”进入的。
操作系统授权太贵,开发工具太贵,服务器软件太贵。Linux 和一大批开源软件忽然摆在面前,能装,能用,能看源码,当然很有吸引力。可是“免费”只是入口。如果停在这里,就很容易误解开源。
自由软件真正改变程序员的,是它重新定义了软件和使用者的关系。
你不是只能等厂商修 bug,也不是只能猜测系统内部发生了什么。理论上,你可以读源码,可以改,可以重新编译,可以把修改反馈给社区。哪怕你最终没有提交补丁,知道这条路存在,也会改变你看待软件的方式。
这也是 Linux 对那代程序员最大的训练之一。
它让人意识到:软件不是黑盒,系统不是神秘物,权威也不是不可挑战的。
GPL 让理想变成了规则
自由软件如果只停留在口号,很难保护自己。
GPL 的重要性,就在于它把理念变成了法律和工程规则。
你可以使用、研究、修改、分发 GPL 软件,但如果你分发修改后的版本,通常也要遵守相应的源码开放要求。对很多商业公司来说,这正是 GPL 最有争议的地方。
工程师喜欢自由,老板未必喜欢。
销售喜欢说“我们基于 Linux 做了自己的系统”,客户喜欢听“源代码可控”,但产品负责人很快会问:哪些代码可以闭源?哪些修改必须开放?动态链接算不算?内核模块怎么算?我们能不能把某个组件拿出来卖?客户定制代码归谁?
这些问题没有“热爱开源”四个字那么简单。
在 Linux 公司里,许可证不是贴在 README 里的装饰。它会影响产品设计、交付方式和商业模式。你必须知道自己在用什么,改了什么,分发了什么,承诺了什么。
这也是很多程序员早年容易忽略的地方。
写代码的时候,总觉得能跑最重要。真正做产品以后才知道,代码能跑只是第一步。它从哪里来,能不能合法分发,将来怎么维护,出了问题谁负责,都同样重要。

自由软件不是一句“免费使用”,它同时牵涉源码、许可证、社区、商业支持和法律边界。图为按年代氛围生成的示意图。
开源和自由软件的分歧
2003 年前后,国内技术圈也会讨论 open source 和 free software 的差别。
今天很多人把它们混着用,当年也一样。
但两者的出发点并不完全相同。自由软件更强调用户自由和道德立场,开源更强调开发方法、工程效率和商业友好。前者问“用户是否拥有自由”,后者问“开放源码是否带来更好的软件和更好的协作”。
这不是纯粹的文字游戏。
对公司来说,“开源”更容易对外讲。它听起来中性,务实,适合商业合作。对一些理想主义者来说,“自由软件”才是根本,它提醒大家不要把源码开放仅仅变成一种开发策略。
我当时并没有能力把这些问题想得很深。
那时更多是听,看,参与一些零散讨论。真正理解它们之间的差别,是很多年以后。等你经历过商业项目、客户交付、闭源产品、开源依赖、安全合规、法律审查,才会明白这些看似抽象的词,最后都会变成实际约束。
软件世界里,词很重要。
因为词背后是利益,是权利,是边界。
SCO 诉 IBM,让 Linux 忽然有了阴影
2003 年还有一件大事:SCO 起诉 IBM。
这场诉讼后来拖了很多年,也成为 Linux 历史上最著名的法律事件之一。站在今天看,Linux 已经成为服务器、云计算、手机、容器、AI 基础设施的底座,SCO 的故事更像旧时代的一段插曲。
但在 2003 年,它带来的心理冲击很真实。
Linux 能不能放心用?企业客户会不会担心法律风险?开源代码是不是也会卷进版权争议?这些问题会被销售、客户、媒体反复提起。
对 Linux 公司来说,这不是遥远新闻。
一个客户如果问“这个系统会不会有法律问题”,工程师不能只回答“我们相信开源”。你要解释许可证,解释代码来源,解释发行版如何管理上游组件,解释风险边界。即使很多问题不是一线工程师能最终回答的,它也会改变大家对开源的理解。
这件事让我很早意识到,开源不是一个只有程序员参与的世界。
它有代码,也有法律;有社区,也有商业;有理想,也有风险控制。
RHEL、Fedora 和路线分叉
同样是 2003 年,Red Hat 的路线也开始变得清晰。
Red Hat Enterprise Linux 3 发布,Fedora Project 也在这一年前后出现。简单说,Red Hat 把企业级稳定发行版和社区创新发行版分开了:企业客户要稳定、支持周期和商业服务;社区需要更快的迭代、更开放的实验和更自由的参与。
这个分叉后来影响很大。
它说明 Linux 商业化不是简单卖一张盘,而是要区分用户、节奏和责任边界。
企业版要慢,要稳,要可支持。社区版可以快,可以新,可以承载实验。两者之间有联系,但不能混为一谈。
国内很多 Linux 公司当时也在面对类似问题,只是资源、生态和市场条件完全不同。
我们也想做桌面,也想做服务器,也想做政企项目,也想做社区影响力。每一条路都对,每一条路都需要投入。问题是,一个公司很难同时把所有事情做好。
这就是基础软件公司的残酷之处。
方向都重要,钱和人不够。
1999 年那条前史
Stallman 1999 年由 TurboLinux 邀请来到中国,应该放在这条历史线的前面看。
那时国内 Linux 热潮刚刚起来,TurboLinux、红旗、蓝点、冲浪等名字陆续进入技术媒体和社区视野。TurboLinux 面向亚洲市场,重视本地化,也较早和中国高校、企业、社区发生联系。它后来成为我进入的那家公司的前身,所以这条线对我来说不是抽象资料,而是公司历史的一部分。
这个前史能解释为什么 2003 年的开源讨论并不是凭空出现。
自由软件的理念,GNU/Linux 的命名争论,GPL 的约束,企业发行版的商业化,早就在国内 Linux 圈里被谈论过。只是到了 2003 年,SCO 诉 IBM 让这些问题突然不再只是理念和社区争论,而是变成了企业客户会问、公司法务会看、销售和工程师都绕不开的现实。
Stallman 那类人很少见。他不是来介绍一个产品,也不是来讲一个融资故事。他讲的是自由,是用户权利,是许可证,是软件不应该被完全锁进黑盒里。
这种话放在商业公司里,有时会显得不合时宜。
公司要赚钱,客户要交付,产品要按期发布,工程师要解决 bug。自由软件运动听起来太理想,太硬,甚至有点不近人情。
但很多年以后再看,我反而觉得这种“不近人情”有它的价值。
产业会天然滑向方便、垄断和封闭。商业公司会说这是效率,平台会说这是体验,用户会因为省事接受很多限制。总要有人站在一个更硬的位置上,反复提醒大家:软件不只是商品,它也会决定人和机器、人和知识、人和平台之间的关系。
我未必完全同意自由软件运动的每一个主张。
但我尊重那种坚持。
对程序员的真正影响
2003 年以后,我对“开源”这两个字不再只是兴奋。
它开始带着责任感。
使用别人的开源代码,要尊重许可证。修改开源软件,要知道自己改了哪里。对客户交付系统,要能说清楚组件来源。做公司产品,要知道哪些地方可以开放,哪些地方不能随便承诺。
这对一个程序员是很重要的训练。
它让你从“写代码的人”慢慢变成“对软件生命周期负责的人”。
后来无论是在大厂,还是在创业公司,开源依赖都变得越来越多。今天一个普通 Web 项目,可能间接依赖几百上千个开源包。AI 时代更是如此:模型、推理框架、向量数据库、前端组件、Python 包、容器镜像,全都离不开开源。
如果没有早年在 Linux 公司里被这些问题撞过一下,很容易把开源当成免费的仓库。
但开源不是免费的仓库。
它是一套协作方式,也是一套责任关系。
下一年,脚本语言变成日常工具
2003 年这条线,写的是自由软件和开源观念。
到了 2004 年,我想写另一件更贴近日常开发的事:Perl、PHP、Java,以及我开始使用 Python。那几年做系统、网站、内部工具和自动化,语言选择很杂,但也正是这种杂,让人更早理解“语言只是工具”。
下一篇,就写脚本语言和早期 Python。
2003 年 IT 大事记
- SCO 起诉 IBM。 这场围绕 UNIX、Linux 和知识产权的诉讼在 2003 年爆发,给企业采用 Linux 带来过明显的法律阴影,也让开源合规问题更受关注。
- Red Hat Enterprise Linux 3 发布。 RHEL 企业版路线进一步成形,Linux 商业化开始更清楚地走向订阅、稳定支持和企业客户服务。
- Fedora Project 出现。 Red Hat 将社区发行版和企业发行版分开,Fedora 后来成为社区创新和 RHEL 上游的重要角色。
- WordPress 第一版发布。 2003 年,WordPress 出现。它后来成为最重要的开源 CMS 和博客系统之一,也深刻影响个人出版和网站建设。
- Skype 发布。 2003 年,Skype 面世,P2P 通信和网络语音进入更多普通用户视野。
- iTunes Music Store 上线。 Apple 在 2003 年推出 iTunes Music Store,数字音乐分发开始进入新的商业秩序。
参考资料
- Free Software Foundation:What is Free Software?
- GNU General Public License
- SCO v. IBM 背景资料
- Red Hat Enterprise Linux 3 发布资料
- Fedora Project 历史资料
- Wired:China’s OS Rebellion
- Turbolinux 背景资料
- WordPress 官方历史
- Skype 背景资料
- Apple:iTunes Music Store 新闻稿
微信公众号
欢迎关注「字与码」
如果这篇文章对你有用,也欢迎在微信里继续关注后续更新。