我最早在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 提示符下运行安装程序。

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

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

opensource.com

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

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

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

opensource.com
你能做什么
当我的系统启动并运行时,是时候开始工作了。那么,你能用这个早期的Linux系统做什么呢?
让我们从基本的文件管理开始。每次登录时,SLS都会提醒你Softlanding菜单shell(MESH),这是一个文件管理程序,现代用户可能会认为它类似于 Midnight Commander。1990年代的用户会将MESH更紧密地与 Norton Commander 进行比较,后者可以说是MS-DOS上最流行的第三方文件管理器。

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

opensource.com

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

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

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生成一个简单的文本文档。

opensource.com

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了!

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

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

opensource.com
再见,Linux 1.0。很高兴看到你成长得这么好。
15 条评论