Thursday, October 14, 2004

 

Knoppix 提供了一个可引导的、容量为一张光盘的 Linux

Knoppix 提供了一个可引导的、容量为一张光盘的 Linux

解决大问题的小型分发版

Cameron Laird(claird@phaseit.net)
副总裁,Phaseit, Inc.
2003 年 2 月 4 日

如果您曾经希望获得一个能够运行的便携式 Linux 安装,并且它可以在任何硬件上以相同的方式运行,那么请继续阅读本文。Knoppix 将一个专门的、非常有用的 Linux 分发版打包在了一张可引导的 CD-ROM 上。


计算机应当为人服务,但是在很多情况下这种关系被颠倒过来了。但是,诸如 Knoppix 和 Live Eval 这样的技术阐明了一条途径,通过该途径 Linux 从根本上改变了计算的“交易条款”。

Knoppix 能够为您可能会遇到的各种常见情况提供好处。先让我们了解一下一些在您自己计算中可能需要的 Knoppix 具体应用程序以及相关软件包。

Knoppix 引导 Linux
Knoppix 是一个可引导的 CD。尽管这样的可引导 CD 肯定不止 Knoppix 这一种,但 Knoppix CD 的组织和内容是与众不同的。请设想一些方案。假定您是一位讲师。您要在教室里为学生授课,但是只有半个小时来检查所有硬件,并为这些硬件准备配置。通常会出现这样的情况:课上到一半时,一些演示无法进行了,因为至少一些学生的机器上安装了不一致的服务包(Service Pack),或者是因为硬件从未使用过,或者环境是由头脑不大正常的人定制的。

或者您可能有大量商用硬件(commodity hardware)。没人特别关心所有那些硬件的计算能力 — 除了在每年的超级杯(Super Bowl)或缴税日期(Tax Day)的那几天里,或者可能当您的组织每个季度对北太平洋的天气形势进行大规模模拟时才会去关心。如何才能使所有那些异构主机进行有效的协同工作,同时又不会让您为乏味冗长的配置工作投入太多时间呢?

可能您就是一位经常出差的人士;您经常到处旅行,并且乐于使用任何可用的台式机,但是,实际上您发现这些台式机中极少装有满足您最低工作环境条件所必需的软件。您可能希望有一种快速的方法设置安全性扫描程序、装备精良的办公自动化台式机(在建立了防火墙的内部网络上),或者安全的服务器。或者也可能经常要求您检查带有疑难杂症的用户级的机器。如果只运用一套固定的诊断方法就能解决问题,那么您就无须过于依赖最终用户的推测,如“调制解调器中毒了,是吗?”。

这是一些 Knoppix 可以简单地解决的情形,而对于其它工具来说可能比较棘手。Knoppix 发明人 — Klaus Knopper 本身就是一位教员,据他回忆,他是在“1999 年到 2000 年间”开始开发 Knoppix 项目的,将其作为一个培训项目,以满足他自己的需求。

2003 年初,主要的 Knoppix 产品是一个引导到 GNU/Linux 的开放源码 CD-ROM。在检测硬件和安装正确的驱动程序方面,它是相当有效和快捷的,而且它可以“聪明”地使用实时解压缩,来为大约 2 GB 大小的应用程序和数据腾出空间。此外,正如 Knopper 所说的,Knoppix 的主要特性之一是“用于软件集以及所有由我编写的脚本和工具的 GPL 许可证,该许可证允许接受者独立修改、分发和销售 CD”。

尽管如此,这个简单的描述还是掩盖了大量的信息。虽然 Linux 老手们经常试验可引导的介质,并且许多应用程序依赖于数据压缩,但是 Knoppix 展示了一个非凡的优点。它很简单,但这只是因为 Knopper 和其他一些项目志愿参与者在构造它的时候非常注重它的简易性。

Knoppix 特性
考虑下面这些要点:


* Knoppix 非常快捷。大多数 Knoppix 用户都提到它在普通的硬件上引导时间低于两分钟。一个用户告诉我:“把 CD 放入光驱,等上一两分钟,就会出现一个运行着大量应用程序的 KDE”。那就是 Knoppix 的目标:在无须用户交互的情况下,它引导到运行级 5,并启动 X 和 KDE。
* Knoppix 很全面。它包含大量硬件驱动程序集和为检测这些驱动程序而精心制作的工具,以便普通的主机在引导时所有的硬件都处于可运行状态。Knoppix 不仅可以识别各种图形卡和鼠标,而且还可以识别各种声卡、调制解调器及 USB 和 SCSI 设备。软件包括 OpenOffice、安全性应用程序和 GIMP,涵盖了各种常见需求。
* Knoppix 使用起来很方便。它根据广受好评的 Debian 分发版改写的。作为一个 CD-ROM,它是用 iso9660 而不是(只读的)ext2 格式化的(考虑到 ISO 标准比较成熟)。
* Knoppix 的适应性很强。早期的 Knoppix 变体是一张“可引导的名片”— 外型规格中的一个“救援”或“存活”Linux 系统。
* Knoppix 非常灵活。它可以在诸如远程引导这样的环境中执行正确的工作。例如,不带 CD-ROM 驱动器,但是带有支持 Linux 的可引导网卡的客户机可以通过 PXE 从正在运行 Knoppix 的服务器进行远程引导。
* Knoppix 很有“礼貌”。Knopper 在安全性方面很有造诣。Knoppix 开始将其主机的海量存储器作为只读存储器。利用 Knoppix,您可以执行非常有用的工作 — 跟踪网络安全性问题、准备和分发备忘录,或者查看已下载的多媒体演示文稿 — 请您相信:一旦您取出 CD-ROM,主机系统将返回到它的正常操作。
* Knoppix 是自由的。它的标准版本,以及用于构造它的软件都是开放源码的。Knopper 还为那些使用特殊许可证、特殊配置或有其它所有权需求的人定制 Knoppix。



本文后面的参考资料一节提供了其它几种有趣的 Knoppix 用法。顾问 Rolf Ade 告诉我 Knoppix 是如何伴随他的购物之旅的:“随身携带一张 Knoppix CD 真的很棒,如果您希望购买一台新的 Intel 机器来运行 Linux。只需用 Knoppix CD 引导新机器,您就会知道是否存在支持它所有硬件的 Linux 驱动程序。”

许多人喜欢将 Knoppix 当成是最可能的 Debian 安装程序。Knopper 还打算允许 Knoppix 配置终端服务器。

开始使用 Knoppix
开始自己使用 Knoppix 的最简单方法是使用公开出售的 CD-ROM。在北欧、美国和澳大利亚,大约有二十家分销商经销 Knoppix CD(包括 beta 测试版)。

如果您有宽带可以烧制光盘,那么您可以下载超过 600-MB 的 Knoppix ISO 映象,该映象可以通过 Knoppix 下载/订购页面(请参阅参考资料)免费下载。世界各地都有镜像站点。请记住,您可以从任何操作系统烧制 CD-ROM;制作 Knoppix CD 时无需 Linux。

一旦手边有了标准的 Knoppix CD-ROM,您差不多已跨入 Linux 的天地了。您所需的全部东西就是一台具备 PC 级别能力的机器:80486 或更高、至少 20 MB RAM(尽管如果少于 128 MB,您将不得不放弃办公软件产品,可能还要放弃桌面管理器,或者甚至是 X11 服务器)、标准的 SVGA 和一种引导方式。即使没有这些,通常也可以使用 Knoppix。但是,首先看看常规的情形:



* 如果从 CD-ROM 引导 PC,放入 Knoppix CD,那么两分钟后您将拥有一个可识别的、有用的 Linux。许多 BIOS 都具备从 CD-ROM 引导的能力,但可能并未这样配置。在这种情况下,您可能需要重新启动 PC,然后在启动的时候按 Delete 或另一个特定于硬件的键来进入“BIOS setup”或“BIOS features”。当您配置引导介质的时候,请记住,不必将 CD-ROM 设置为唯一的引导介质,甚至不必将 CD-ROM 设为第一个引导介质;在启动顺序中将软盘驱动器排在 CD-ROM 前也很不错。您所需的全部工作就是确保 CD-ROM 是作为一个可识别的引导源出现。保存新配置,这样您就可以准备启动了。


* 另一种方案是从一张可识别 CD-ROM 的软盘进行引导,然后把引导控制交给 CD-ROM。这些软盘通常称为“启动软盘”。Knoppix 映象文件包含一个“rawrite”程序,可使用该程序准备这样的软盘。



如果 Knoppix 可以很好地为您工作,那么下一步很自然地您会希望更改它。尽管 Knoppix 的定制不是秘密,但是对该项目所进行的大多数工作已经使标准安装具备了“防弹”功能。在几种截然不同的改变 Knoppix 的方法中,极有可能引起最广泛兴趣的是重新灌录(remastering),在该过程中,您可以用自己的软件代替标准 Knoppix CD-ROM 上的某一个部分。2002 年末,Jubal John 准备了一份权威的“How to remaster ……”文档,参考资料列出了该文档。定制过程相当精细,并且很复杂,以致于无法在这做简要的描述。主要困难在于,如果任何事情发生错误,那么磁盘分区的低级管理将危及系统完整性。

可以替代 Knoppix 的产品
我非常热衷于 Knoppix,而且象我这样的发烧友也很多。我收到过许多管理员和网络管理员的来信,他们对 Knoppix 也怀有如此深的感情:“没有 Knoppix,就走不出家门了”。任何在一个完全动态的环境中进行操作的 Linux 专业人员或业余爱好者 — 即使只是偶尔需要在其它设备上运行 — 都应该试用 Knoppix 的副本。这样做的成本几乎为零,而潜在的收益和便利却很多。

已经证实 Knoppix 对于商业创新也很“友好”。Knopper 说“有很多 Knoppix 派生产品;有些已经由购买者发布,而有些只在某个公司内部使用。是否发布其购买的自由软件产品由消费者自己决定,因为 GPL 不要求您发布或分发定制的版本,甚至不强求您在同一个介质上只包含免费软件。因此,一些公司使用 Knoppix 作为其免费软件的平台,或者也可作为其专有软件的平台,以便向潜在的客户展示其产品的演示版本,而不必在可以使用前争论是否在硬盘上进行安装。”

但是,请注意,对于一些特殊的 Knoppix 应用情况,一些其它软件或许可以提供更好的服务。参考资料一节展示了其中的一些替代产品。例如,如果您多是使用比较旧的设备,那么 Knoppix 可能就不实用。Knoppix 的标准配置需要太多内存 — 32 MB 是不够的。在这种情况下,诸如 muLinux 这样的项目可能会更有帮助。

也可以将 Knoppix 看成是“最小公分母”:它的目的是为了让计算机在尽可能少的延迟或人员辅助的情况下运行。跟其它结果一样,这意味着在应用 KDE 之前,标准 Knoppix 不会让用户有机会配置外来视频或网络设置。

诸如 SuSE 的 Live Eval 这样的产品采用了不同的方法。Live Eval 旨在从一个 CD-ROM 尽可能模拟完整的 SuSE 分发版。特别地,它希望在确定其引导顺序和配置时能与用户进行交互。这样提供了更大的灵活性,但是刚好有一位有经验的 SuSE 工程师告诉我,如果 Live Eval 和 Knoppix 完成同样的引导任务,通常 Live Eval 大约要花费 7 分钟时间,而 Knoppix 花费的时间通常不到 2 分钟。另一方面,Live Eval 会话使我们可以更精确地看到在标准的工作环境中使用一个功能齐全的 Linux 分发版的情况。

Pascal Scheffers(Erasmus University 的一名程序员)却描述了另一种 Knoppix 和供应商产品提供了不同的解决方案的情形。假定您需要测试产品的安装。如果手头的工具是 Knoppix,您可能会使用一台主机专门进行安装测试,并可能使用 Ghost(或 Ghost-for-Unix)来帮助使安装自动化。Knoppix 为使用主机提供了一个标准的起点。

对于这类问题,Scheffers 喜欢使用 VMware 及其“非持久”选项。VMware 可以在特定的会话中管理操作系统、进行安装,然后将所有更改回滚到它们的初始状态。

结束语
Knoppix 可以解决许多问题 — 至少可以解决我经常遇到的许多问题。

除此之外,我还喜欢 Knoppix 使人们重新控制计算机的方式。现在许多用户都习惯于相信:比方说,准备一份简单的幻灯片演示文稿需要对硬件和软件进行昂贵和耗时的升级,以及费力地进行安装和配置。如果某件事出错了,就会把它当成一个谜,可能只有通过从零开始才能解决它。无论如何,人们都得等待,而计算机按照它们自己的计划在运行。

Knoppix 与那些令人伤心的情形完全不同,它体现了 Linux 开放和灵活的优点。Knoppix 可以管理各种硬件,并且可以迅速地使这些硬件进入工作状态。那是一个值得效仿的典范。

非常感谢 SuSE 的 Gernot Hillier、Brett Schwarz、Larry Virden 和 Joe Mistachkin,感谢他们在我编写本篇 Knoppix 简介过程中对我的帮助。

参考资料


* “Knoppix — Live Linux Filesystem on CD”是 Knoppix 的英文主页。


* Knopper 的 Annual Linux Showcase 2000 上的演讲文稿描述了一打有用的 Knoppix 应用,以及 Knoppix 的联网和安全性功能。


* LINUXISO.ORG 致力于 ISO 9660 CD-ROM 及其如何用于 Linux 的主题。它演示了如何使用诸如 Nero 和 Toast 这样的程序来烧制 CD。


* Luigi Bitonti、Morten Kjeldgaard 和 Peter von der Ah 就如何烧制 Linux 的 CD-ROM 提供了一份独立的 How To。


* 根据 Knoppix-customize 主页的介绍,“Knoppix-customize 是一个程序,它允许您更改 Knoppix ISO 映象的引导选项和文件,或者在不重新灌录的情况下引导磁盘”。


* “如何重新灌录 Knoppix 以包含 GNUmed 和其它医疗软件”是了解如何制作您自己的演示 CD 的最佳场所。


* Gnome.org 提供了有关 Knoppix 重新灌录和定制的另一个介绍页面。


* Live-Eval 是 SuSE Linux 的一个版本,它“完全从可引导 CD 运行,并且不安装在硬盘上”。它作为一个 ISO 映象可免费下载。


* Coollinux 和 DemoLinux 是其它两个 CD-ROM,它们可以引导至完整的、能正常运行的系统。


* “Etlinux 是一个完全基于 Linux 的系统,旨在非常小型的工业计算机上运行。它的设计标准是小型、模块化、灵活和完整”。其中,这里的“灵活”指,使 Etlinux 尽可能多地实现脚本化。


* 据 MuLinux 主页介绍,“MuLinux 是一种要求最低的 Linux 分发版”。MuLinux El-Torito 是最新的 MuLinux 修订版。Knoppix 使用 El-Torito 的 LILO 作为其初始引导进程。此外,Lepton 是一个基于 2.4 内核的单张软盘 MuLinux 实验版本。


* “A Guided Tour of a Linux Boot”和“How does Linux boot?”阐明了 Knoppix 实现背后的大多数概念。


* 在 Windows 世界中,通常会使用 Symantec 的 Ghost 使安装、应用程序部署和用户迁移自动化。它的最初形式是 DOS 实用程序,可以从单个备份映象提供多个安装。


* Ghost 4 Unix(g4u)是一个有趣的磁盘克隆程序。尽管它做的工作与 Knoppix 完全不同,但是许多使用 Knoppix 的人同样会对它感兴趣。例如,您想对实验室中的许多机器进行相同设置,那么使用 g4u 就挺好。


* VMware 是用于“虚拟”操作系统的几个产品之一。本文作者近来在 developerWorks 上发表的有关交叉编译的专栏文章中描述了其它产品。


* Tomsrtbt 是另一个可以从一张软盘上引导 Linux 的实验版本。


* KDE 是 Knoppix 引导进入的桌面。


* FAQ: PreBoot Execution Environment 说明了通常称为“PXE”(或“PiXiE”)的 Intel 规范。PXE 允许联网的计算机从中央服务器装入和执行网络自举程序(NBP)。searchNetworking.com 提供了有关该主题的更多信息。


* “Knoppix Hard Disk Installation HOWTO”介绍了如何使用 Knoppix 作为 Debian 的安装程序。将 Knoppix 安装在硬盘上会使访问和操作比从 CD-ROM 工作时进行的更快。


* Gnumed 是一个创建和分发开放源码医疗应用软件的项目,其演示 CD-ROM 以 Knoppix 为基础。


* 此外,如果您阅读“用户模式 Linux 简介”,您将学会如何管理 Linux 映象以使它不会扰乱主机上的其它安装。


* TopologiLinux 是旨在在 DOS 或 Windows 安装中运行的几个 Linux 分发版之一。TopologiLinux 基于 Slackware 9,支持 NTFS 和 FAT。这类分发版的一个用途就是提供标准化的 Linux 工作空间,而又不会扰乱标准配置的现有桌面。因此,它的用途有点类似 Knoppix。


* “技巧:双引导 Linux”展示了如何在一台机器上设置多个可引导的 Linux 实例。


* IBM VMware ESX Server 让您可以在一台 xSeries 服务器上运行几个作为虚拟机的操作系统。更多信息,请访问 IBM and VMware 页面。


* 在 developerWorks Linux 专区中可以找到更多用于 Linux 开发人员的参考资料。






关于作者
Cameron 是 Phaseit, Inc. 的全职顾问,他经常就开放源码和其它技术主题撰写文章和发表演讲。他自己的开发工作经常涉及到的轻量级但集成可靠的现有组件。可以通过 claird@phaseit.net 与 Cameron 联系。
来自:www-900.ibm.com

Comments: Post a Comment



<< Home

This page is powered by Blogger. Isn't yours?