Patrick Volkerding与Linux

简介:

    目前可供Linux用户使用的 发行版有很多种,它们虽基于共同的内核,但在安装、提供的应用程序、服务等方面各具特色,并拥有各自的用户群体。Slackware Linux是一个历史比较悠久的发行版,它的存在见证了Linux的发展历程,它的创始人Patrick Volkerding究竟是怎样创办的Slackware Linux的呢?

    从Slackware Linux 1.0版发布到现在已经有十年的时间了。而事实上,这个项目的部分开发最早可追溯到1992年。因此,Slackeware可谓是目前市场存活时间最长的 Linux发行版之一。Slackware是创始人Patrick Volkerding主持设计,并发行的一个高级Linux操作系统版本,以易用和稳定为设计宗旨,其原形基于一个称作SLS(Soft Landing Systems)的Linux项目。

    Patrick Volkerding 1993年毕业于美国明尼苏达州的Moorhead大学计算机专业。Slackware获得成功时,年仅27岁。作为Slackware项目的创始人,他 多年来为该项目倾注了大量的心血,因此在Slackware社区及使用者中树立了很高的威信。直到现在,在有关Slackware的论坛中,仍可以看到很 多崇拜他的言语,他们甚至把他称作“英雄”。

    计算机情结

    Patrick Volkerding初次接触计算机是在1973年。当时他还是个小孩子,有次与同学一起参观North Dakota州立大学的计算机系。来到机房,那里存放的机器令他震惊了—许多闪着指示灯快速运转着的“大家伙”塞满了整间屋子,并存放着成排的大型磁盘驱 动器。管理员还向他们展示了如何操作一台带有打字机的终端。这些使他一下就迷上了计算机。

    但是在那时,Volkerding没有任何途径能获得一台家用计算机,甚至都不 敢想象会有这种事情。因此,他开始对电子学产生了兴趣,因为它显得更实际。过了几年,第一批个人计算机开始陆续出现,如TRS-80、苹果Ⅱ和Atari 400/800等。Volkerding就跑到出售这些计算机的商店里打工,但是他仍旧买不起计算机。幸运的是,有位商店的老板允许他使用他们的机器。从 此,Volkerding开始自学BASIC,并时不时地为商店编写一些小演示程序,以期能够继续留在那里。

    1980年,Volkerding终于获得了一台当时十分热门的苹果Ⅱ计算机。这台机器他使用了很长时间,还在这台机器上安装了C编译器和类Unix的操作系统,但后者与Linux还不太搭边。

    接触Linux

    1992年末,Volkerding从一位朋友那里听说了Linux,但当时并 没有立即下载试用。直到有一天,学校的一个项目需要一个LISP解释器,他才突然记起有人曾提过的Linux上面有类似的东西。因此,他下载了一个SLS Linux(最早的商业Linux发行版之一)。

    Volkerding开始并没有想过要去搞一个Linux发行版。人工智能学教 授让Volkerding给他展示如何安装Linux,以便于他可以在家里的机器上使用,并与一些已毕业的在LISP上很有研究的学生分享使用心得。因 此,Volkerding和他的教授一起去PC实验室安装SLS Linux。

    项目悄然诞生

    在接触了SLS Linux几周以后,Volkerding发现安装后的这个操作系统有很多地方需要修改,多到不得不列上一个长单子来进行记录。Volkerding自己 动手基本修改了单子上所列的问题,并为其编写了一些基本的软件。他的教授询问道:“有没有办法把它原先安装盘上的程序修改一下?这样每次安装新机器的时候 就不必那么费事了。”这一语惊醒梦中人,也促成了Slackware项目的开始。Volkerding开始修改部分SLS的原始安装脚本及一些漏洞,并增 添了新的功能,使得系统可以自动安装共享库和内核映像等软件包。此外,他还编辑了一些描述文件,使得介绍安装的内容更加详实。更重要的一点 是,Volkerding深入到那些软件包中,把能够找到的问题都修改了一遍。大部分软件包都能够良好运行,但仍旧有一些需要改动。在邮件、网络和 UUCP等应用程序中有大量不正确的文件许可现象,使这些软件无法正常发挥应有的功能。还有一些程序可能会引起内核阻塞,但系统却没做任何说明。对于这 些,Volkerding都到网上重新查找并整理了源代码。

    当时的SLS版本使用的Linux内核是0.98pl4,Volkerding 把改进的版本与0.99pl9内核整合在一起。此时,他已经对这个发行版中将近一半的软件包进行了改进,并对剩余的一半进行了重新确认。针对一些长期存在 的问题,Volkerding还编写了一些代码来解决它们。所以,Slackware之于SLS,不仅仅是装饰的关系。

    获得认可

    1993年5月,Volkerding把4.4.1 C语言库和Linux 0.99pl11A内核同Slackware整合起来,使网络功能和系统稳定性方面得到了显著的改善。Volkerding的几个密西根州立大学 (MSU)的朋友认为它很棒,强烈要求把它放到FTP上。但是,当时Volkerding认为SLS很快就会推出新的版本,说不定也会做类似的改善工作, 因此迟疑了几个星期。在这期间,他不断地看到许多人在网上询问什么时候会有一个功能较完善的Linux新版本推出。因此,他在网上发出了一个帖子,标题是 “有人需要类似SLS的0.99pl11A内核的操作系统吗”。不久便得到了无数个回复的帖子。

    因此,在征得了密西根州立大学系统管理员的同意后,Volkerding在大学 一台十分老旧的计算机上搭建了一个可匿名登录的FTP服务,并为此做了一份声明。此后,该FTP不断获得很多人提供的新镜像点,还有许多使用过 Slackware 1.0的用户在网上为它做积极的宣传。很快,FTP存储空间的问题也得到了解决—有人联系了Walnut Creek CDROM公司,为其提供了存储空间。

    这之后,Slackware的开发队伍开始壮大,一些人帮助了该项目的编写。其 中,Savio Lam负责编写了创建彩色选单安装界面的会话程序;Ian kluft整合了smail软件包;Vince Shankan的配置脚本集合对elm和UUCP等程序的编译十分有帮助;Louis Labash贡献了一套工具,用来编译Perl脚本;Allen Gwinn编写了一个lpd软件包。此外,反馈自使用者的错误报告也帮助Slackware不断改进。所有这些更加激励了Volkerding继续做好 Slackware项目的决心。

    1994年,Morse电信公司的Michael Johnston主动联系Volkerding,问他是否有兴趣发行Slackware的商业版本。这使他意识到只有这样才能让Slackware项目继 续走下去,因此接受了合作的邀请。6个月后,Volkerding又为Slackware找到了一个合作条件更优惠的合作伙伴—Walnut Creek公司。至此,Slackware开始逐步走上了正轨。

    重要的贡献者

    对于Slackware Linux,除了Patrick Volkerding外,还有几位重要的开发人员。David Cantrell的全职工作是开发和维护Slackware Linux,主要负责处理SPARC端口、用邮件进行技术支持、测试及新软件包的开发工作。此外,他还为系统管理员编写了autoslack和 protopkg两个实用的工具。他的个人网站地址是http://www.burdell.org。Logan Johnson肄业于美国乔治亚州科技大学,钟爱音乐和Linux。他主要负责图形方面的功能处理,并在组织网站设计及内容维护队伍方面做了大量工作。 Chris Lumens是最近才真正全职加入到Slackware工作中来的。他处理Slackware Alpha端口,并编写了一本《精通Slackware Linux》的指导性书籍。他有时还使用PHP和MySQL做一些开发工作。他真正喜欢的是Perl,并十分热衷于学一些被人认为是神秘古怪的语言。他的 个人主页是http://bangmoney.org。

    挑战与机遇并存

    10年的时间或许并不长。但是相对于计算机及Linux短暂的历史,10年的时间可以改变很多事情。鼎盛与辉煌是那样令人陶醉,但挫折始终是不可避免的。幸运的是,机遇总会与挑战并存。

    版本回顾
    老牌Linux用户都记得从前的 Slackware 1.0是放在24张软盘上的,其中13张是精髓部分,其余11张包含了XFree86和图形应用程序。当时使用的Linux内核是0.99pl11 alpha。一切显得那么简陋(与现在相比),但是却足以给当时的Linux用户带来惊喜。Slackware 1.0的推出获得了认可。很快,那一年的5个月中又有6个新的Slackware版本推出。正式的Slackware Linux 2.0是1994年7月面世的。用户可在稳定Linux内核1.0.9和开发内核1.1.18之间进行选择。它还包含了XFree86 2.1.1。这时,Patrick Volkerding把Slackware发行版带到一个商业层面,与Morse电信公司合作,策划将产品刻录在可启动光盘上,并随之发行印刷版文档说明 书。这一年,Volekerding刚满27岁。

    随着Slackware进一步得到用户的好评,1995年8 月,Slackware Linux 3.0面世。这之后,其版本的发行频率趋于减缓。Slackware 4.0的发布用了4年的时间。然而这一趋势并没有延续,5个月后,新的Slackware发行版再次面世。但是令许多人惊讶的是,这个版本是以 Slackware 7.0的名称出现的。Volkerding对此及时做出了解释:因为那时Linux发行版开始逐渐增多,市场竞争激烈起来,版本号也日益膨胀。为了避免更 多用户对产品升级的一再询问,Slackware将其新产品的版本号跳至7.0。在接下来的几年里,Slackware的版本发放趋于平和,大约每年发布 一个版本。1996年到1999年间,Slackware达到了其鼎盛时期。

    挫折
    网络泡沫的破灭影响了整个IT 业,Slackware的运作形式也受到了冲击。Slackware原来的主要发行商Walnut Creek公司与BSDi合并,之后又被WindRiver公司购并。2001年,该公司称将不再给予Slackware开发进行支持。

    受到这个事件的影响,Volekerding开始着手建立一个公司,以便自己处理发行工作。但是不幸的是,受当时大环境的影响,Patrick Volkerding面临破产,虽然可以依靠将现有产品出售给捐赠者过活,但他还是一度出现没钱支付给合作伙伴的窘境。

    转机
    幸运的是,事情出现了转机。Patrick Volkerding与前Walnut Creek公司的创始人之一Bob Bruce再度合作,成立了一个公司进行产品的销售。Slackware通过改变商业模式获得了一笔可观的收入。

    但由于这场变故,Slackware在市场的占有率也受到了影响(1996年其 发行版市场占有率曾经达到90%)。尽管如此,Slackware在受欢迎程度及服务器开发方面仍旧保持在前五名之列。它的邮件列表(现在变成了一个在线 的用户论坛userlocal.com)积累下17万次的邮件,拥护Slackware的网络社区数量能够与以此著称的Debian相媲美。这些都表 明,Slackware仍旧保持着强大的动力。但同时也告诉我们,市场总是选择优胜者,不管资历如何,始终都要通过其考验。(T111)





本文转自 tiger506 51CTO博客,原文链接:http://blog.51cto.com/tiger506/1564125,如需转载请自行联系原作者

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
14天前
|
Web App开发 Linux 网络安全
工作中常用到的Linux命令
工作中常用到的Linux命令
|
14天前
|
Web App开发 Java Linux
Linux之Shell基本命令篇
Linux之Shell基本命令篇
Linux之Shell基本命令篇
|
11天前
|
NoSQL Linux Shell
常用的 Linux 命令
常用的 Linux 命令
33 9
|
2天前
|
机器学习/深度学习 缓存 监控
linux查看CPU、内存、网络、磁盘IO命令
`Linux`系统中,使用`top`命令查看CPU状态,要查看CPU详细信息,可利用`cat /proc/cpuinfo`相关命令。`free`命令用于查看内存使用情况。网络相关命令包括`ifconfig`(查看网卡状态)、`ifdown/ifup`(禁用/启用网卡)、`netstat`(列出网络连接,如`-tuln`组合)以及`nslookup`、`ping`、`telnet`、`traceroute`等。磁盘IO方面,`iostat`(如`-k -p ALL`)显示磁盘IO统计,`iotop`(如`-o -d 1`)则用于查看磁盘IO瓶颈。
|
2天前
|
Linux Perl
Linux系统替换字符串常用命令
请注意,`sed`命令可以非常强大,可以根据不同的需求使用不同的选项和正则表达式来进行更复杂的字符串替换操作。
16 0
|
5天前
|
安全 Linux 开发工具
Linux中可引起文件时间戳改变的相关命令
【4月更文挑战第12天】Linux中可引起文件时间戳改变的相关命令
11 0
|
6天前
|
域名解析 网络协议 Linux
Linux 中的 Nslookup 命令怎么使用?
【4月更文挑战第12天】
25 6
Linux 中的 Nslookup 命令怎么使用?
|
7天前
|
运维 网络协议 Unix
18.系统知识-Linux常用命令
18.系统知识-Linux常用命令
|
7天前
|
网络协议 Ubuntu Linux
Linux 下 TFTP 服务搭建及 U-Boot 中使用 tftp 命令实现文件下载
Linux 下 TFTP 服务搭建及 U-Boot 中使用 tftp 命令实现文件下载
|
7天前
|
Linux Go
Linux命令Top 100驱动人生! 面试必备
探索Linux命令不再迷茫!本文分10部分详解20个基础命令,带你由浅入深掌握文件、目录管理和文本处理。 [1]: <https://cloud.tencent.com/developer/article/2396114> [2]: <https://pan.quark.cn/s/865a0bbd5720> [3]: <https://yv4kfv1n3j.feishu.cn/docx/MRyxdaqz8ow5RjxyL1ucrvOYnnH>
58 0