Linux、GNU 和 自由

发表于:2007-05-26来源:作者:点击数: 标签:
由于 Joe Barr 的文章 批评了我对 SIGLINUX 的作法,我想要使事件以真相呈现, 并阐述我的理由。 ----理查.M.史托曼 From:www.gnu.org 当 SIGLINUX 邀请我演讲的时候,那时它是一个 ``Linux 使用者社团''; 也就是说,一群 GNU/Linux 系统的使用者称呼这整
由于 Joe Barr 的文章 批评了我对 SIGLINUX 的作法,我想要使事件以真相呈现, 并阐述我的理由。
----理查.M.史托曼

From:www.gnu.org

当 SIGLINUX 邀请我演讲的时候,那时它是一个 ``Linux 使用者社团''; 也就是说,一群 GNU/Linux 系统的使用者称呼这整个系统为 ``Linux''。 因此我礼貌地回覆他们 如果要让某个来自 GNU 工程的人为他们演讲, 那么他们理应正确地对待 GNU 工程,称呼这个系统为 ``GNU/Linux''。 这个系统是 GNU 系统中的一种,而且 GNU 工程是它的主要开发者, 因此按照社会的传统,应该以我们所选择的名字来称呼它。 除非有重大的原因造成例外的状况,我通常不会为 拒绝以此方式给予 GNU 适当名声的机构 演讲。我尊重他们的言论自由,但我也有自由不演讲。

其后发生的是,SIGLINUX 的 Jeff Strunk 试着改变此社团的政策, 并且要求自由软件基金会将他的社团列表在我们的 GNU/Linux 使用者社团页面。 我们的网站管理员告诉他,我们不会以 ``SIGLINUX'' 把它列出, 因为这个名字暗示了此一社团是关乎 Linux。接着 Strunk 提议将名字改为 ``SIGFREE'',而我们的网管认为这样可行。 (Barr 的文章说我们拒绝了此提议)。然而,此社团最终仍决定维持 ``SIGLINUX'' 这个名字。

到了此时,这个问题再度引起我的注意,同时我并建议他们考虑其他可能的名字。 为了避免称呼此系统为 Linux,他们有许多的名称可供选择, 并且我也希望最后他们可以选出一个他们喜欢的。这就是我所知道的部分。

正如同 Barr 所写:这是真的吗?有人看到这些行动是一种 可以与微软的垄断相比拟的 ``武力的行使'' 吗?也许是这样。 拒绝一项邀请不是一种压迫,但是这些坚决相信整个系统是 ``Linux'' 的人 有时候会发展出一种让人惊讶的扭曲的情景。为了让这个名字看起来是正当的, 他们必须将小丘视为山,同时也把山视为小丘。 如果您可以忽略这个事实,并且相信 Linus Torvalds 自 1991 年开始 开发了整个系统,或者如果您可以忽略您对于公正的原始信条,并且相信即使 Torvalds 并没有做,他也应该单独获得此声望,那么 相信``在当您提出要求时,我欠您一次演讲'' 也只是一小步而已。

只要想一下:GNU 工程开始了开发整个操作系统,数年之后,Linus Torvalds 加入了一个重要的部份。GNU 工程说 ``请平等地叙述我们的工程'' 但是 Linus 却说 ``不要让他们分享任何名声;单独以我的名字来称呼这整件事!'' 现在想像一下 一个看到这些事件并且指控 GNU 工程太自我本位的人的脑袋 在想什么。 它是以 强烈的成见 来作出如此戏剧性的判断。

一个具有成见的人可以谈论关于 GNU 工程所有型式的不公平的事,并且认为是正当的; 他的夥伴会支持他,因为他们想要彼此的支持来维护他们的成见。 反对者会被斥责;因此,如果我拒绝参与以 ``Linux'' 作为旗帜的活动, 他们也许会认为那是不可饶恕的,并且要我为他们感到是倒退作法的错误期望负责。 当这么多人要称呼这个系统为 ``Linux'' 时,我这个只是开始了它的开发的人, 怎么可能不同意呢? 而且武断地拒绝一场演讲,事实上就是强迫他们不高兴。 那是一种强制,就和微软一样糟糕!

现在,您可能在想为什么我不直接对这个议题充耳不闻以避开所有这些恼人的事。 当 SIGLINUX 邀请我演讲的时候,我大可以说 ``不了,很抱歉'' ,那么这件事到此就结束了。 为什么当时我不那样做呢?我个人很乐意承担起 ``给 消除掉 GNU 工程的成果 一个修正机会'' 的风险。

称呼这个 GNU 系统的派生版本为 ``Linux'' 的人, 是那些基于技术优势来选择他们的软件的人, 他们并不在乎这软件是否尊重他们的自由。 有像 Barr 这类型的人,希望他们的软件是 ``意识型态上的自由'' 并且批评任何人谈论有关自由的事情。 有像 Torvalds 这类型的人,会施加 使用非自由软件 的压力到我们的社团, 并且挑战任何要求立即提供(技术上)较好的工程的人,或者是叫他们闭嘴。 也有一些人说技术的决定不应该 以考虑他们的社会影响力 而被 ``政治化'' 。

在 70 年代,计算机使用者因为他们当时并未珍惜他们的自由, 而失去了重新散布和更改软件的自由。计算机使用者在 80 以及 90 年代重新获得了这些自由,因为一群理想主义者,也就是 GNU 工程, 相信自由能使软件变得更好,并且希望为了他们所相信的事而努力。

我们今天拥有部份的自由,但是我们的自由并不安全。 它受到 CBDTPA(以前的 SSSCA)藉由广播 ``保护'' 讨论群组的威胁 (请见 http://www.eff.org/), 此群组提议禁止自由软件涉足电视广播,它所采取的方式有: 软件专利(欧洲正在考虑是否要有软件专利); 微软的对于 不可或缺的协定的不公开协议; 以及 每个 以非自由软件 ``(在技术上)较好'' 来诱使我们远离可取得的自由软件 ...等方式。 如果我们不够关心如何去保护它, 我们会像我们第一次失去它们一样地再次失去我们的自由。

这些将足够我们来在意吗?取决于许多事情; 在它们之中,GNU 工程有多少影响力,Linus Torvalds 有多少影响力。 GNU 工程说 ``珍惜您的自由!'' 。 Joe Barr 说 ``仅以技术层面来选择 非自由或自由软件!'' 。 如果人们认可 Torvalds 为 GNU/Linux 系统的主要开发者, 那不只是不正确,它也同时让他的讯息更具影响力-- 而那讯息是 ``非自由软件无关紧要;我自己就在使用并开发它'' 。 如果他们承认我们的角色,他们就会多听听我们, 而我们给他们的讯息将是 ``这个系统之所以存在,是因为人们在乎自由。加入我们,珍惜您的自由, 团结在一起我们就能保有它'' 。 请看 http://www.gnu.org/gnu/the-gnu-project.html 以取得相关的历史。

当我要求人们称呼这个系统为 GNU/Linux, 其中一些人以 可笑的藉口和不足为凭的人 来回应。 但是我们有可能并没有失去任何东西,因为他们很有可能一开始就不友善。 在此同时,其他人认可了我给出的理由,并且使用那名字。 藉由这样做,他们帮助其他人了解为什么 GNU/Linux 系统确实存在, 而那样也就增加了我们 传播 ``自由是一个重要价值'' 的观念 的能力。

这也是为什么我的脑中一直为了 偏见、毁谤、和苦恼 而产生冲突。 他们伤害了我的感觉,但是一旦成功,这项努力将会帮助 GNU 工程问鼎自由。

由于这和 Linux 内核以及 Linus Torvalds 目前使用的非自由版本控制系统 Bitkeeper 有关,因此我也在此论述此一议题。

Bitkeeper 议题

使用 Bitkeeper 作为 Linux 源码的储存区对于自由软件社团具有重大的影响, 因为任何 想要密切追踪 Linux 修正的人 只能以安装那个非自由软件才能进行。 一定至少有数打或甚至数百名的 内核黑客 已经做了这件事。 他们之中大部份的人已经渐渐地说服了他们自己 使用非自由软件是没有关系的, 以避免在 有关 Bitkeeper 施加在他们电脑上的压力 的认知不协调所产生的意义。 对此我们可以做些什么?

一个解决方式是为 Linux 源码设定另一个储存区, 使用 CVS 或其他自由的版本控制系统,并安排好可以自动地将新的版本载入进来。 这样可以使用 Bitkeeper 来对最新的版本进行存取, 然后安装新的版本到 CVS 中。 这种更新操作可以自动且经常地运行。

自由软件基金会不能这样做,因为我们不能安装 Bitkeeper 到我们的机器上。 我们现在没有 不自由的系统或应用程序 在这些机器上, 而且我们的原则也告诉我们必须维持这种方式。 运行这个储存区的操作会需要某个愿意将 Bitkeeper 安装在他的机器上的其他人, 除非有人可以找出或做出一个使用自由软件来进行它的方式。

Linux 源码本身有着更严重的问题:它们实际上存在一些非自由软件。 不少的装置驱动程序包含一连串的固件程序安装在这些装置内。 这些程序并不是自由软件。 其中一些写到暂存器中的是一回事(译注:可以视为硬体); 很大数量的程序仅以二进制型式出现又是另外一回事了。

在 Linux ``源码'' 档案中出现的这些 仅二进制码 程序,造成了另一个问题: 那就是,Linux 的二进制码到底是否可以合法地再发布。 GPL 需要 ``完全的相关源码'' ,而一个 0 与 1 所组成的串列并非源码。 按照相同理由,增加一个像是这样的 二进制码到 Linux 源码中破坏了 GPL 的规定。

Linux 开发者有个工程要将这些 固件程序 移到个别的档案中; 它将会需要数年的时间才会成熟,但是当完成时将会解决这个问题; 我们可以作出一个 ``自由的 Linux'' 版本,而其中不包括任何 不自由的 固件档案。但这件事本身有可能做不成,如果大部份的人都使用 不自由的 ``正式版'' Linux。这很有可能发生,因为在许多平台上的自由版本, 如果没有不自由的固件都将无法运行。 ``自由的 Linux'' 工程将会理解到 固件做些什么,并且为它写些源码, 也许会以 汇编语言 为每一种它要运行于其上的嵌入式处理器 来撰写。 它会是件吓人的工作。但如果我们在几年的时间内一点一滴地完成它, 而不是想要一次做成,它就不那么可怕了。 藉由招募人员来作这项工作,我们将会克服 由某些 Linux 开发者所散播的 ``这件工作是不必要的'' 观念。

作为内核的 Linux 通常被视为自由软件的旗舰,然而它目前的版本有部份是不自由的。 为什么会这样?就像其他决定使用 Bitkeeper 的问题一样,这个问题反应出了 Linux 原始开发者的态度,也就是认为 ``较佳技术'' 比自由更重要的态度。

历史告诉我们:珍惜您的自由,否则您将会失去它。 而那些不愿学习此一教训的人,则以 ``不要以政治来烦我们'' 作为回应。

Copyright © 2002 Richard M. Stallman

本文允许在不变更文件内容的前提下刊登在任何形式的媒体中,但需保留此声明。

原文转自:http://www.ltesting.net