Debian 往事: 与已故创始人 Ian Murdock 的昔日访谈

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: Ian Murdock 走了,但 Debian 常在。今天就从与 Ian Murdock 的访谈来回顾一下 Ian 的 Debian 往事。 Debian 社区前几日宣布,Debian 的著名创始者 Ian Murdock 已经去世,死因至今不明。

Ian Murdock 走了,但 Debian 常在。今天就从与 Ian Murdock 的访谈来回顾一下 Ian 的 Debian 往事。
images

Debian 社区前几日宣布,Debian 的著名创始者 Ian Murdock 已经去世,死因至今不明。到官方公布具体死因之前,恐怕我们多猜测也无益。今天,不如让我们一起来回顾一下 Murdock 对免费软件的发展做出的贡献。

1999 年 11 月,我曾有幸与 Murdock 有过一次访谈。我为写《Rebel Code:Linux and the Open Source Revolution》这本书共做过 50 多次访谈,这就是其中一回。虽说在书中我只引用了 Murdock 所说的寥寥几句,不过如今,借着这个时机,我想用 Murdock 自己的话来分享一下他打造 Debian 的那段历程。

Murdock 第一次接触到 GNU/Linux 是在 1993 年,当时他还是个 20 岁的学生,在普渡大学学习会计学。「那个年代,PC 才刚刚发展到勉强能运行 Unix 操作系统。我当时用的就是 Unix,那时候我觉得 Linux 是能让我更方便地使用 Unix 的一种方式。」用 Murdock 的话来说,当时的软件「完成度还相对粗糙」,但完善、改良软件对他来说也是一种兴趣爱好。

「Linux 最棒的地方之一就是它是第一批你不仅能看到它在干嘛,你还能亲自尝试着对它本身做尝试、做改动的操作系统。」

Murdock 开始研究的时候,GNU/Linux 的发行版还很少。Murdok 当时选择的是 SLS,Softlanding Linux System。后来他在说道 Debian 发行版的时候还曾提到,

「我开发这个版本时的灵感很大程度上来源于 SLS,因为我自己使用 SLS 时我曾对很多地方非常不满。我想着要去改善 SLS,但后来我意识到最好的方法就是从头开始。」

Murdock 在 1999 年那次访谈中曾告诉我:

「开发 SLS 的那个人败就败在他想一个人搞定所有事情。Linux 让我意识到的就是这样做出来的模型永远都不会是最佳的产品。我们真正要做的是找出 Linux 最超前的产品,然后围绕这个型号再打造新的系统。」

简单说,Murdock 的观点就是:Linux 的内核完全可以应用到整个操作系统乃至应用上。

如果你想打造一个完整的操作系统,你该如何给员工分工,给他们每一个人都布置相应的任务,最后再拼凑成一个完整的系统呢?
Linux 系统当时的分割方式基本就是磁盘分割。所以如果你下载了所有的磁盘的话,某种意义上你也就下载了一套 Linux 系统。我们认为这个方法不够好,我们要用更适合分工开发的法子来。
我们决定 Debian 的系统开发由资源包来。也就是说,系统的每一个内容、每一个板块都会以资源包的形式存在,这些资源包能够自动整合成一个完整的系统。你下载了这个资源包的时候,它就知道如何移除自己或是升级自己。
分工也一样按照资源包来,哪个资源包出错了就能非常明确地知道是谁的责任。我们会在开发时设定标准和规定,保证任何来源的资源包都能在我们的系统上照常运行。所以你只要下载全资源包,你就有了一整个系统。这感觉就像手工布艺一样,把很多布片拼成一整个作品,只不过实际上原理要比这复杂不少。

当然 Debian 项目的资源包分割法的灵感有一部分也来自于 Linux。

事实上 Debian 的子任务思路就是继承了 Linux 的理念。有些人负责写文件系统,有些人负责写驱动程式。就算你不过是路人甲,你要是给 Linux 编写一套新的文件系统然后发给 Linus,说不定就你写的东西就真的被采用了。
所以我希望 Debian 的用户也能够毫无顾忌地给我们提意见,比如「嘿你知道吗,我觉得在 Debian 的系统里加这个软件包会超赞的。」我觉得这是件大好事,因为只要跟着我们发布的系统模型走,用户是完全有可能开发出自己的软件包的。而且如果你遵循我们的指南和标准,那你的软件包在我们的系统上运行应该不成问题。

Deb-Ian

这个名字的来源想必已是众所周知的了;Murdock 在 1999 年告诉我,

我妻子叫 Deb,我叫 Ian。所以连起来就是 Debian。

1993 年 8 月,Murdock 在 comps.os.linux.development 消息组中发布了 Debian 开发的消息,一如几年前的 Linux 发布公告。Murdock 还号召人们来评论和给建议:

你对于软件包或者系列有什么想法?或是对最终发布产品有什么期待?请务必告诉我们!

Murdock 说当时他收到的评论多得都快把他淹没了。

Debian 踩准的第一个点就是人们当时对于 SLS 已经非常不满了。Linux 显然是一个非常强大而有潜力的系统,但是败笔就在于产品没有很好地把这些优势展现出来。比如「打造一个人人都可以参与开发和改造的系统」这个理念就非常值得推广普及。经常会用户对我说「嘿,有些东西你没想到不过我可以做出来。」这般抛砖引玉的手法也是吸引用户的关键因素之一。

开发一个新版本就必定会面临新的编程难题。不过 Murdock 自有他的「秘密武器」:

我倒是无知者无畏,因为不了解自己将会面对什么,于是也就无所畏惧。我只知道我的目标和方向,但我当时完全不知道这一路会有多艰难。除此之外,Debian 的「分散式」定位就是用户可以随时参与开发过程前来帮忙。Debian 是开放式的,因此有些我不精通的地方我可以向公众寻求帮助。比如我有个 2400 波特的调制解调器,但是我这辈子都没用过以太网卡,所以关于这方面我实在了解不多;但是有人肯定比我精通,可以帮我们忙。

Murdock 指出,Debian 的这个优势其实也同样是 Linux 和其他所有免费软件的最大武器。

这就是为什么 Linux 这样的软件质量会如此之高,因为它并不是单单为了解决一小群人的问题而开发的。或者说,也许一开始的确是因此而开发,但是随便谁都能参与改良和开发的这个特点使得这个软件往更大的方向发展,最后的成品可能是连当初的开发者都未曾想到的。所以最后你拿到手的软件功能和应用范围都是非常广泛的。Debian 自然也采取了这个方法。

我们是从一个非常基础的系统开始做起的。当初,系统只有驱动器和最简单的 Unix,以及我们加的编译器和调试器(因为这是用户感兴趣的重点)。然后我们基本就是在任其发展:比如用户喜欢业余无线电,所以他们就开发了相关软件包然后放到系统里。虽说我对业余无线电基本是一无所知,但是懂的人可以参与进来和我们一起搭建系统。Debian 还带了快速运动跟中资源包,因为我们的系统是分散式的,所以一个个任务都会交给不同的人去做最后在拼凑起来。我可以很自豪地说,这方面我们做的真不错。

Linux>Hurd

热心群众帮忙开发系统的意思并不是热情的黑客在 Murdock 宣布 Debian 的时候主动联系了他提出要帮忙。

我宣布 Debian 项目之后,Free Software Foundation(FSF)的 Richard Stallman 第一时间联系到了我。FSF 的热情回应给了我莫大的信心,不过也让我再一次认真地考虑了这个方法的合理性,毕竟我觉得在那个年代每个人都有比改进电脑系统更重要的事情要做。

GNU/Linux 是因为 Debian 才开始真正走进人们视线中的。Stallman 也基本上是参与了 Debian 项目以后才对 Linux 有所了解。Debian 在塑造 FSF 对 GNU/Linux 的系统方面起到了至关重要的作用。Stallman 曾有过这样的感想:「我们对 Linux 了解的越来越多,我们甚至也开始考虑如何开发这个系统。」说这句话是因为当时 Debian 的系统开发遇到了瓶颈,开发团队在无意间看到 Linux 时发现他们的想法和他们想做的系统竟然与 Linux 是如此的相似。

有一段时间,Murdock 是拿着 FSF 给的工资在开发 Debian 的。

「我发现我无法把开发 Debian 当成我的业余生活;我在工作空闲时完全没有好的灵感;我要全心全意投入到这项事业中去。」但是不久后团队就出现了分歧。「到那时候 Debian 的影响力已经超过了我本人,我也对 Debian 的方向有了更明确更坚定的想法。然而我也不再是一个人,我的身边有了越来越多的人,越来越多的观点。很多人都不赞成 FSF 的目标。FSF 是 Debian 的赞助者,所以自然对我有所期望;但同时我在要求别人在闲时帮忙开发 Debian,所以那些人对我自然也有期望。有时候这两边的期望会出现分歧,我无法两边都满足。」

就这样,Debian 和 FSF 的正式合作关系画上了句号。不过 Murdock 始终都非常强调 Stallman 为 Debian 做出的贡献:

倘若没有他,没有他过去 15 年内从未动摇的坚定立场,我们也就不会有如今「免费软件」的理念。

不久之后,1996 年 3 月,Murdock 决定辞退 Debian 项目领导人的身份。

我最近结婚了,我想花更多的时间陪伴我的家人。我已经为 Debian 埋头苦干了三年,我想我也是时候开始新的生活了。

在我们 1999 年面谈的时候,Murdock 表示他看到 Debian 在他离开之后还能持续发展非常欣慰。

我总是说,我离开 Debian 这个项目之后才发现这个项目肯定会成功。因为我的离开意味着 Debian 将会自生自灭自力更生,它将在没有我的情势下独立发展。事实证明它做到了,而且不仅仅是生存下来了,还做到了大范围的推广普及。对此我非常自豪。

2016 年的今天,我们终于发现 Murdock 是多么有先见之明。最近的 GNU/Linux 发展史家谱明确地告诉了我们 Debian 在免费软件领域究竟有多大的影响力,开发 Debian 的那位伟人对此做出了多大的贡献。

本文转载自: http://tech2ipo.com/10027118,英文原文参考这里


原文发布时间:2016-01-22
本文来自云栖社区合作伙伴“ Debian社区”,了解相关信息可以关注“ Debian社区”。
相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
Linux
Debian 社区发表悼念声明,缅怀创始人 Ian Murdock
美国时间 2015 年 12 月 28 日晚,著名 Linux 发行版 Debian GNU/Linux 的创始人 Ian Murdock 被发现在旧金山的家中离世,30日,Debian 社区正式发表了悼念声明,Linux Story 将全文翻译如下: 我们怀着沉重地心情哀悼刚刚离我们而去的 Ian Murdock,开源软件的坚定支持者,父亲,儿子,和 Debian 中的 "ian"。
1492 0
|
23天前
|
Ubuntu
ubuntu和debian 的安装包dpkg管理命令对安装包进行安装,查询,卸载
Ubuntu dpkg 软件包管理命令概览:安装、卸载、查看和配置软件包。包括解决依赖、强制卸载、列出及过滤已安装包、查看包详情等操作。
53 10
|
2月前
|
Oracle Java 关系型数据库
在 Debian 12 上安装 Java 21
在 Debian 12 上安装 Java 21
|
4月前
|
Kubernetes 应用服务中间件 nginx
debian11使用kubeadm安装k8s
debian11使用kubeadm安装k8s
|
4月前
|
安全 Ubuntu Shell
深入挖掘Debian系统中安装Docker
【8月更文挑战第21天】在Debian系统中安装Docker需按步骤操作:首先确保软件包更新,执行`sudo apt update`并安装必要软件包支持HTTPS;接着添加Docker官方GPG密钥以验证包的完整性和安全性;然后设置Docker稳定版仓库,通过`tee`命令配置仓库文件;再更新软件包索引;最后安装Docker Engine并通过运行测试容器确认安装成功。此指南适用于多数Debian版本,如遇问题请查阅官方文档。
300 0
|
4月前
|
存储 Linux 开发工具
在Debian 8上安装Git的方法
在Debian 8上安装Git的方法
39 0
|
4月前
|
SQL 关系型数据库 Linux
如何在 Debian 8 上安装和使用 PostgreSQL 9
如何在 Debian 8 上安装和使用 PostgreSQL 9
56 0
|
4月前
|
数据可视化 关系型数据库 MySQL
在Debian 7上安装和保护phpMyAdmin的方法
在Debian 7上安装和保护phpMyAdmin的方法
60 0
|
4月前
|
安全 Linux 网络安全
如何在Debian 9上安装和配置VNC
如何在Debian 9上安装和配置VNC
109 0