`
helpbs
  • 浏览: 1154681 次
文章分类
社区版块
存档分类
最新评论

Linux、GNU 和 自由

 
阅读更多

Linux、GNU 和 自由

理查.M.史托曼

 [image of a Philosophical Gnu] <!-- Please keep this list alphabetical!!! -->

<!-- <center> <cite>Richard Stallman's response to Joe Barr's account of the FSF's dealings with the Austin Linux users group.</cite> </center> <p> -->由于 Joe Barr 的文章 批评了我对 SIGLINUX 的作法,我想要使事件以真相呈现,并阐述我的理由。

当 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

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

分享到:
评论

相关推荐

    Emacs配置文件 Linux Gnu free software

    Emacs Linux Gnu free software Linux下Emacs配置文件。属于自由软件。 文件安装: 直接解压或者copy到你的Linux Home目录下。

    Debian GNU/Linux发行版介绍及中文应用

    Debian GNU/Linux是最严谨,最开放和最自由的GNU/Linux发行套件,秉承Linux网络协作开发的完全黑客精神,是目前著名的Linux发行套件中唯一的非商业性版本。目前的稳定版本为Debian version 2.2r2,代号Potato,预计...

    GNU/Linux 基礎指令集

    網路農夫自由共享文件 關於GNU/Linux 基礎指令集介紹

    CHIP-GNU/Linux世界的哲学

    CHIP杂志的文章,对Linux自由至上的精神进行了阐述,并在与Windows相比较的同时,对linux的上上下下、前前后后进行了讲解。如果你想学习Linux,那么这篇文章值得一读。相信读完此篇文章,你会对Linux有清楚的把握。

    gnu-c-manual

    GNU C是一种按照LGPL许可协议发布的,公开源代码的,免费的,方便从网络下载的C的编译... 它最初是自由软件基金会为其GNU操作系统所写,但目前最主要的应用是配合Linux内核,成为GNU/Linux操作系统一个重要的组成部分。

    linux从做系统学习笔记

    Linux是一套免费使用和自由传播的类Unix操作系统,它主要用于基于Intel x86 系列CPU的计算机上。这个系统是由世界各地的成千上万的程序员设计和实现的。它 的建立不受任何商品化软件的版权制约的、全世界都能自由...

    GNU and free software.zip

    一个介绍GNU计划和自由软件运动的介绍稿,另附上PPT,英语课上的作业。

    linux下载安装gcc编译器

    GCC是以GPL许可证所发行的自由软件,也是GNU计划的关键部分。GCC的初衷是为GNU操作系统专门编写一款编译器,现已被大多数类Unix操作系统(如Linux、BSD、MacOS X等)采纳为标准的编译器,甚至在微软的Windows上也...

    Linux操作系统总结与心得.doc

    严格来讲,Linux这个词 本身只表示Linux内核,但在实际上人们已经习惯了用Linux来形容整个基于Linux内核, 并且使用GNU 工程各种工具和数据库的操作系统。Linux得名于计算机业余爱好者Linus Torvalds。 一般可以认为...

    Linux 服务器操作系统社区与生态

    不过通常所说的 Linux 是指 GNU/Linux GNU 是对 UNIX 向上兼容的完整的自由软件系统)操作系统,它包含内核( Kernel )、系统工具程序 Utilities )及应用软件 Application而不是仅指 Linux 系统内核。 Linux有很多...

    linux 早期源码网址

    Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级...

    Linux-运维入门到高级全套系列.pdf

    Linux,全称GNU/Linux,是一套免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹于1991年第一次释出,它主要受到Minix和Unix思想的启发,是一个基于POSIX和Unix的多用户、多任务、支持多线程...

    linux基础入门教程

    是一种自由和开放源码的类Unix操作系统。目前存在着许多不同的Linux,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,从手机、平板电脑、路由器和视频游戏控制台,到台式计算机、大型机和超级计算机。...

    Linux操作系统分析

    严格来讲,Linux这个词本身只表示Linux内核,但在实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程各种工具和数据库的操作系统。Linux得名于计算机业余爱好者Linus Torvalds。

    Linux服务器网络基础

    不过通常所说的 Linux 是指 GNU/Linux GNU 是对 UNIX 向上兼容的完整的自由软件系统)操作系统,它包含内核( Kernel )、系统工具程序 Utilities )及应用软件 Application而不是仅指 Linux 系统内核。 Linux有很多...

    linux的安装.pdf

    Linux,全称GNU/Linux,是一套免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹于1991年第一次释出,它主要受到Minix和Unix思想的启发,是一个基于POSIX和Unix的多用户、多任务、支持多线程...

    MinGW Minimalist GNUfor Windows

    它是一个可自由使用和自由发布的Windows特定头文件和使用GNU工具集导入库的集合,允许你在GNU/Linux和Windows平台生成本地的Windows程序而不需要第三方C运行时(C Runtime)库。MinGW 是一组包含文件和端口库,其...

    Linux服务器文件系统

    不过通常所说的 Linux 是指 GNU/Linux GNU 是对 UNIX 向上兼容的完整的自由软件系统)操作系统,它包含内核( Kernel )、系统工具程序 Utilities )及应用软件 Application而不是仅指 Linux 系统内核。 Linux有很多...

    Linux 服务器系统命令行

    不过通常所说的 Linux 是指 GNU/Linux GNU 是对 UNIX 向上兼容的完整的自由软件系统)操作系统,它包含内核( Kernel )、系统工具程序 Utilities )及应用软件 Application而不是仅指 Linux 系统内核。 Linux有很多...

    Linux 服务器系统概述

    不过通常所说的 Linux 是指 GNU/Linux GNU 是对 UNIX 向上兼容的完整的自由软件系统)操作系统,它包含内核( Kernel )、系统工具程序 Utilities )及应用软件 Application而不是仅指 Linux 系统内核。 Linux有很多...

Global site tag (gtag.js) - Google Analytics