Linux周年快乐:回顾Linux的起源

安装SLS 1.05展示了Linux内核在26年里取得了多么大的进步。
568 位读者喜欢这篇文章。
Happy birthday, Linux!

litlnemo。由 Opensource.com 修改。CC BY-SA 2.0。

我最早在1993年安装了Linux。那时我运行的是MS-DOS,但我非常喜欢我们校园计算机实验室里的Unix系统,我在那里度过了大学本科时期的大部分时间。当我听说Linux,一个可以在我家里的386电脑上运行的免费Unix版本时,我立刻想尝试一下。我的第一个Linux发行版是Softlanding Linux System (SLS) 1.03,带有Linux内核0.99 alpha补丁级别11。这需要惊人的2MB内存,如果想编译程序则需要4MB,而运行X windows需要8MB。

我认为Linux相对于MS-DOS的世界来说是一个巨大的进步。虽然Linux缺乏MS-DOS上可用的应用程序和游戏的广度,但我发现Linux给了我更大的灵活性。与MS-DOS不同,我现在可以进行真正的多任务处理,一次运行多个程序。而且Linux提供了丰富的工具,包括一个C编译器,我可以用它来构建自己的程序。

一年后,我升级到了SLS 1.05,它采用了全新的Linux内核1.0。更重要的是,Linux 1.0引入了内核模块。有了模块,你不再需要完全重新编译内核来支持新的硬件;相反,你可以加载63个包含的Linux内核模块之一。SLS 1.05在发行版的README文件中包含了关于模块的注释

内核模块化的目标是明确地减少,并最终消除重新编译内核的需求,无论是为了更改/修改设备驱动程序,还是为了动态访问不常用的驱动程序。更重要的是,也许,各个工作组的努力不再需要影响内核本身的开发。事实上,现在应该可以发布官方内核的二进制版本了。

在8月25日,Linux内核将迎来其26周年纪念日。为了庆祝,我重新安装了SLS 1.05,以提醒自己Linux 1.0内核是什么样的,并认识到自1990年代以来Linux取得了多大的进步。加入我,一起踏上这段Linux怀旧之旅吧!

安装

Softlanding Linux System是第一个真正包含安装程序的“发行版”。然而,安装过程与你在现代发行版中找到的流畅过程不同。我需要从安装软盘启动系统,而不是从安装CD-ROM启动,然后在 login  提示符下运行安装程序。

Installing SLS 1.05 from the login prompt

opensource.com

SLS 1.05中引入的一个巧妙功能是支持彩色文本模式的安装程序。当我选择彩色模式时,安装程序切换到浅蓝色背景和黑色文本,而不是我们原始祖先使用的纯白色背景黑色文本。

Color-enabled text-mode installer in SLS 1.05

opensource.com

SLS安装程序很简单,文本从屏幕底部滚动,但它完成了工作。通过响应几个简单的提示,我能够为Linux创建一个分区,在其上放置一个ext2文件系统,并安装Linux。安装SLS 1.05,包括X windows和开发工具,需要大约85MB的磁盘空间。按今天的标准来看,这可能听起来不算多,但当Linux 1.0问世时,120MB的硬盘仍然很常见。

Creating a partition for Linux, putting an ext2 filesystem on it, and installing Linux

opensource.com

First boot

opensource.com

系统层面

当我第一次启动进入Linux时,我的记忆触发了一些关于这个早期版本Linux的系统事情。首先,Linux不占用太多空间。在启动系统并运行一些实用程序来检查之后,Linux占用的内存不到4MB。在具有16MB内存的系统上,这意味着剩下很多内存来运行程序。

Checking out the filesystem and available disk space

opensource.com

熟悉的 /proc 元文件系统在Linux 1.0中就存在,尽管与你在现代系统中看到的相比,它没有提供太多信息。在Linux 1.0中, /proc 包括探测基本系统统计信息(如 meminfostat )的接口。

The familiar /proc meta filesystem

opensource.com

此系统上的 /etc 目录非常简洁。值得注意的是,SLS 1.05借用了 BSD Unixrc 脚本来控制系统启动。一切都通过 rc 脚本启动,本地系统更改在 rc.local 文件中定义。后来,大多数Linux发行版将采用更熟悉的 Unix System Vinit 脚本,然后是 systemd 初始化系统。

The /etc directory

opensource.com

你能做什么

当我的系统启动并运行时,是时候开始工作了。那么,你能用这个早期的Linux系统做什么呢?

让我们从基本的文件管理开始。每次登录时,SLS都会提醒你Softlanding菜单shell(MESH),这是一个文件管理程序,现代用户可能会认为它类似于 Midnight Commander。1990年代的用户会将MESH更紧密地与 Norton Commander 进行比较,后者可以说是MS-DOS上最流行的第三方文件管理器。

The Softlanding menu shell (MESH)

opensource.com

除了MESH之外,SLS 1.05还包含相对较少的全屏应用程序。但是你可以找到熟悉的用户工具,包括Elm邮件阅读器、GNU Emacs可编程编辑器和历史悠久的Vim编辑器。

Elm mail reader

opensource.com

GNU Emacs programmable editor

opensource.com

SLS 1.05甚至包含一个可以在终端上玩的俄罗斯方块版本。

Tetris for terminals

opensource.com

在1990年代,大多数住宅互联网接入是通过拨号连接,因此 SLS 1.05包含了Minicom调制解调器拨号应用程序。Minicom提供了与调制解调器的直接连接,并要求用户导航Hayes调制解调器 AT 命令来执行基本功能,例如拨号或挂断电话。Minicom还支持宏和其他巧妙的功能,以方便连接到本地调制解调器池。

Minicom modem-dialer application

opensource.com

但是如果你想写文档怎么办?SLS 1.05存在于LibreOffice或OpenOffice等软件很久之前。在1990年代初期,Linux根本没有这些应用程序。相反,如果你想使用文字处理器,你可能会将系统启动到MS-DOS并运行你最喜欢的文字处理器程序,例如WordPerfect或共享软件GalaxyWrite。

但是所有Unix系统都包含一组简单的文本格式化程序,称为nroff和troff。在Linux系统中,这些程序被组合到GNU groff软件包中,SLS 1.05包含一个groff版本。我对SLS 1.05的测试之一是使用nroff生成一个简单的文本文档。

A simple nroff text document

opensource.com

nroff text document output

opensource.com

运行X windows

正如SLS安装文件所承诺的那样,让X windows运行起来并不容易,

在PC上运行X windows有时可能有点令人沮丧,主要是因为PC的显卡类型太多了。Linux X11仅支持VGA类型的显卡,但是VGA的类型太多了,只有某些类型得到完全支持。SLS带有两个X windows服务器。全彩色的XFree86支持部分或全部ET3000、ET4000、PVGA1、GVGA、Trident、S3、8514、加速卡、ATI plus等。

另一个服务器XF86_Mono应该适用于几乎任何VGA卡,但仅限于单色模式。因此,它也使用更少的内存,并且应该比彩色服务器更快。但当然它看起来不如彩色服务器漂亮。

X windows的大部分配置信息存储在目录“/usr/X386/lib/X11/”中。特别是,“Xconfig”文件定义了监视器和显卡的 timings。默认情况下,X windows设置为使用彩色服务器,但如果彩色服务器给你带来麻烦,你可以切换到使用单色服务器x386mono,因为它应该支持任何标准VGA。本质上,这只是意味着将/usr/X386/bin/X链接到它。

只需编辑Xconfig来设置鼠标设备类型和timings,然后输入“startx”。

如果这听起来令人困惑,那确实是。手动配置X windows确实可能是一种令人沮丧的体验。幸运的是,SLS 1.05包含了syssetup程序,以帮助你定义各种系统组件,包括X windows的显示设置。在一些提示之后,以及一些实验和调整之后,我终于能够启动X windows了!

The syssetup program

opensource.com

但这是1994年的X windows,桌面的概念还不存在。我的选择是FVWM(虚拟窗口管理器)或TWM(标签式窗口管理器)。TWM设置简单,并提供了简单而实用的图形环境。

TWM

opensource.com

关机

尽管我很享受探索Linux的根源,但最终是时候回到我的现代桌面了。我最初在一台32位386计算机上运行Linux,只有8MB内存和一个120MB硬盘,而我今天的系统要强大得多。我可以在我的双核64位Intel Core i5 CPU上做更多的事情,它配备了4GB内存和一个128GB固态硬盘,运行Linux内核4.11.11。因此,在我的SLS 1.05实验结束后,是时候离开了。

Shutting down

opensource.com

再见,Linux 1.0。很高兴看到你成长得这么好。

标签
photo of Jim Hall
Jim Hall是一位开源软件倡导者和开发者,以在GNOME中进行可用性测试以及作为FreeDOS的创始人和项目协调员而闻名。

15 条评论

看起来即使在那个时候它也相当强大。感谢撰写这篇文章!

Linux的第一个发行版是SLACKWARE,而不是Softlanding Linux System (SLS)。
我仍然有Linux Slackware的原始安装光盘

Jim从未说过SLS是第一个Linux发行版。他写道,SLS是他的第一个发行版,并且是第一个真正包含安装程序的“发行版”。无论如何,Slackware的早期版本是基于SLS的;SLS比Slackware早出现大约一年。

回复 ,评论者 Unixos WinNT (未验证)

我那时甚至还没有开始编程。所以我不确定,但在WIKI中发现SLS是第一个,SLACKWARE来自SLS。“Slackware最初来源于Softlanding Linux System (SLS),它是最初的Linux发行版中最受欢迎的,也是第一个提供全面的软件集合的发行版,该集合不仅包含内核和基本实用程序,[18] 还包括X11图形界面、TCP/IP和UUCP网络以及GNU Emacs。[19]”。(参考:https://en.wikipedia.org/wiki/Slackware

回复 ,评论者 Unixos WinNT (未验证)

我的第一个Linux是Red Hat 5.1附带的。当时最大的挑战是驱动程序,找到它们、下载它们、安装,然后配置。我花了几个星期才让X Windows运行起来,但是第一次启动进入X的喜悦是令人难忘的。

一篇非常令人愉快的庆祝文章,作者是一位对OSS做出巨大贡献的人。我的第一个Linux发行版是1997年或1998年的Caldera OpenLinux。我记得当时开车很远去零售店买盒装的(那时没有宽带)。回家后,安装了它,对自己嘟囔道:“这没前途……”然后又爬回了我在公司的WinNT和家里的Win95。这清楚地表明了像Linus(和你)这样的开明人士与我们凡人之间的远见、洞察力和智力深度差异。今天热情地使用基于Debian/Ubuntu的Mint,现在我感觉自己哪里都不想去(其他地方)……

谢谢你,来自意大利罗马的Linux生日快乐!

感谢精彩的评论!

我还想指出安装程序截图上的一个有趣的现象。当提示输入IP地址时,我首先输入了127.0.0.1,标准的环回地址。然后我意识到我想使用来自我的私有网络的IP地址,所以我退格并将其更改为192.168.1.100。

但是在安装过程中,控制台还没有正确设置,所以退格键用“\”表示,然后是你退格删除的每个字符,然后是“/”,当正常输入恢复时。

这就是为什么当我退格删除我刚刚输入的内容时,127.0.0.1被反向写成(1.0.0.721)。

这也是为什么你稍后会看到8.8..\./8.8。我在输入DNS地址时错误地输入了第二个点。

那些日子真好……
我仍然记得那些使用20多张软盘(5 1/4英寸)安装SLS的日子……
手动modelines以在我的1024x768x90Hz *隔行扫描*(即实际上是1024x(768/2)x45Hz)上获得无闪烁(非标准)分辨率……
是的,3MB内存……那些日子真好……

我从那些日子里更喜欢的一件事是:开发人员知道如何优化,不像今天这样,我们拥有多GB内存的系统,只是在打开另一个浏览器窗口时不断吞噬更多资源

当您第一次安装Linux时,我已经运行了Digital Research的Concurrent DOS(一个面向他们的Concurrent CPM OS的DOS)。

它具有多任务处理功能,实际上我可以多任务处理我的Clipper程序,并允许它们在不同用户之间交互。在多个窗口中运行Windows 3.0很容易,并且操作系统开销很小。

不幸的是,Linux幸存下来,而Concurrent DOS逐渐消失了。但是,重点是,如果你想在Microsoft友好的DOS环境中获得Unix的优势,那么DR的Concurrent DOS就是它。

很高兴阅读你对早期Linux日子的回忆,Jim - 听起来你和我当时经历的情况或多或少相同。我作为一个贫穷的毕业生,于93年1月在一个1MB系统上使用Slackdist和Kernel 0.99.4,配备了一张不受支持的S3 911显卡。我记得将内核二进制文件和源代码放在一张1.44MB的软盘上。那些日子真好……

没有所谓的x windows……它是X Window。我想相信你实际上对UNIX和Linux了解很多,但是这样一个基本的错误很难忽视。

傻瓜greybeard,x windows,x window,twm,motif,随便什么,每个人都知道他的意思……甚至你。所以,这并不反映他的知识,而更多地反映了你的吹毛求疵的本性。即便如此,为了进一步为他辩护,SLS的发布说明对于他正在演示的发行版(我知道这不是一个词,或者它是吗?)将其称为X-windows - 参见:http://linux-distributions.org/sls-1.05.readme.txt

回复 ,评论者 greybeard (未验证)

感谢这次怀旧之旅!你的文章也可能是我写的。我清楚地记得装满安装SLS所需的软盘的纸板箱,那是我在1993年准备和试验的。

几年后,在1995年,我作为一名自由撰稿人为一个计算机杂志工作,他们要求我写一篇关于Linux的评论,基于一个名为RedHat的新产品。在那之前我玩过Slackware,但RedHat完全不同,我对安装程序以及我在安装过程中遇到一些奇怪问题时收到的支持印象非常深刻。可以说,从那以后我就迷上了RedHat。

我写的评论是我所在国家有史以来第一篇关于Linux的评论,这是我微不足道的成名之举,现在早已消失并埋藏在历史的长河中…… :-)

最常见的计算机是lBM的,我的是一台Caypro,带有便携式键盘和一些松散的胶带字母Æ、Ø和Å。两个5 1/4英寸的软盘。

Linux在过去的26年里发展了很多,从黑白命令提示符到多色、多种多样的发行版。

© . All rights reserved.