Linux 小型化之旅,第一部分
偶尔,你会发现自己身处一种非 Linux 不可的情境。好吧,这种情况每天都在发生,但偶尔你会坐在运行那个其他操作系统的工作站前。你希望以只有 Linux 似乎才能提供的工具来访问资源。当然,问题在于 Linux 没有运行在该工作站上。幸运的是,你口袋里有 Linux,就在一张 3.5 英寸的软盘上,没错。
听起来很疯狂?
本周,红帽发布了其卓越发行版的 6.2 版本。它以 CD-ROM 的形式发布,包含数百兆字节的信息,并提供了一些强大的工具。它是一个庞大的 Linux 发行版。Caldera、Slackware 和 Debian 也是如此。最近,我花了一些时间探索 Linux 的另一个方面,询问我能拥有多“小”的 Linux,并且仍然可以获得我最喜欢的操作系统的益处。事实证明,只需一点点就能完成很多事情。让我向您介绍我的微型 Linux 的第一个候选者,然后我将向您展示这些工具对系统管理员有多么有用。
既然我们谈论的是软盘上的 Linux,那么我首先要介绍 LOAF 是理所当然的,它代表 Linux On A Floppy(软盘上的 Linux)。您可以访问 http://loaf.ecks.org/ 来获取 LOAF。
当您访问该网站时,您会注意到有几个版本(或镜像)可用,确切地说是九个。每个镜像都包含特定的网络驱动程序,因此您需要获取最适合您办公室环境的一个(或多个)。我选择了 loaf3.img,其中包含 3Com 3x59x 驱动程序。然后我放入一张空白软盘,并使用以下命令创建了我的软盘
dd if=loaf3.img of=/dev/fd0
贴上标签,这就是您所需要的一切。为了测试它,我将软盘带到我办公室唯一仍在运行那个其他操作系统的 PC 上,将其放入驱动器并重启了 PC。
当出现登录提示时,只需输入 root 即可开始使用。要让 LOAF 识别您的网络并在其上工作,您需要执行以下命令
ifconfig eth0 local_ip_address netmask your_network_mask broadcast broadcast_address route add -net network_address echo "nameserver gateway_address" > /etc/resolv.conf route add default gw gateway_address
在我的例子中,我使用的是本地私有 C 类网络,地址为 192.168.1.0,客户端地址为 192.168.1.2。我的网关和域名服务器地址为 192.168.1.10(一台进行 IP 地址伪装的 Linux 服务器)。以下是它的实际样子
ifconfig eth0 192.168.1.2 netmask 255.255.255.0 broadcast 192.168.1.255 route add -net 192.168.1.0 echo "nameserver 192.168.1.10" > /etc/resolv.conf route add default gw 192.168.1.10
我输入了 lynx https://linuxjournal.cn,突然,我就可以上网冲浪了。
LOAF 包含一套不错的实用工具。您可以使用诸如 ifconfig、traceroute 以及当然还有 lynx 之类的工具,这使您可以愉快地浏览 Web 或本地网络。顺便说一句,如果您只是输入 lynx,您将获得本地 LOAF 文档。(别担心;它很快就能读完。)您还可以获得 ssh (安全外壳) 客户端,用于安全访问您的网络、老牌的 telnet 和 ftp。LOAF 是一个出色的轻量级网络客户端。 嘿,如果您只想使用旧的 386 运行哑终端应用程序,LOAF 可能适合您。唯一的缺点是 LOAF 对硬盘一无所知。 对于可以让您本地访问硬盘的微型 Linux,请继续阅读。
另一个很酷的超微型 Linux 是 tomsrtbt,它代表 “Tom 的软盘,它有一个根文件系统并且也是可引导的。” 嘿,我编不出这种东西。Tom 在这里取得的成就实际上是一个小型化奇迹。他使用了一个很棒的小技巧来扩展他可以放在软盘上的东西,方法是使用 1.7 MB 的软盘空间 而不是通常的 1.4 MB。尽管如此,他所取得的成就仍然非常了不起。您可以在 http://www.toms.net/rb/ 获取 tomsrtbt。
在我写这篇文章时,tar 和 gzip 压缩文件中的最新发行版是 tomsrtbt-1.7.185.tar.gz。下载后,您只需解压缩它并从安装脚本创建软盘。最简单的安装形式如下。首先将空白软盘放入驱动器,然后按照以下步骤操作
tar -xzvf tomsrtbt-1.7.185.tar.gz cd tomsrtbt-1.7.185 ./install.s
这就是创建 tomsrtbt 软盘真正需要的全部。之前,使用 LOAF 时,我们必须在每次启动时配置网络设置,但 tomsrtbt 则不然。因此,您会发现默认安装启动到 预配置的一组网络地址,包括 DNS 条目。要为自己的网络自定义 tomsrtbt,请编辑发行版目录中的 settings.s 文件。在我更改后,该文件看起来像这样
DOMAIN=yourcompany.com IF_PORT=10baseT DNS_1=192.168.22.10 IPADDR=192.168.22.3 NETWORK=192.168.22.0 NETMASK=255.255.255.0 PASSWD=xxxx FD=/dev/fd0u1722 FN="b 2 60"
原始网络号在网络 “192.168.1.0” 中,域名为 rb.com。
当我第一次启动时,我很高兴得知日期是 “Boomtime, the 14th day of Discord in the YOLD 3166”。这是 ddate,一个小程序,由 SubGenius 教会提供,它将公历日期转换为 Discordian 日历的日期。短暂的停顿之后,我开始探索 tomsrtbt 提供的功能。
可用的工具之多令人印象深刻,至少可以这么说。tomsrtbt 具有 SCSI 支持和 PCMCIA 支持。它包含一些有用的 shell 工具(没有特定的顺序),例如 find、grep、vi、e2fsck、tar、cpio 和许多其他命令行工具。这个微型 Linux 确实 了解硬盘,并允许您挂载它们。例如,我创建了一个名为 /mnt/ddrive 的目录,并像这样挂载了我的 PC 的 D 盘
mount /dev/hd5 /mnt/ddrive
完成此操作后,我可以执行诸如在磁盘上创建 tar 归档之类的操作,然后我可以将其 ftp 到我网络上的另一台服务器。由于有许多 Linux 文件系统工具可用,这使其成为在所有其他方法都失败时使用的理想通用救援软盘。正如他们所说,可能性几乎是无限的。我还可以使用 NFS 挂载网络驱动器。LOAF 可以为您提供而 tomsrtbt 没有的功能是 Web 浏览器 (lynx) 和安全外壳 (ssh)。
虽然这与 tomsrtbt 的功能无关,但我确实喜欢他的徽标,并决定在此处包含它。
.~. /V // \\ /( ) ^`~'^
很多时候,我在一个陌生的办公室工作,心想,“如果我在这里有我的 Linux 系统就好了,我可以做……” 或者在企鹅思想的国度里,它的近亲是,“如果这台 PC 运行的是 Linux 就好了,那样我就能……” 好吧,如果将您的 Linux 系统从建筑物的一部分拖到另一部分不切实际,但您需要 Linux 系统的强大功能,请考虑软盘上的 Linux 的强大功能。不久前,我遇到一个 Windows 机器或多或少死机的情况。我无法启动。我无法访问网络,也无法访问任何可以备份的设备(软盘不是一种选择)。重要数据危在旦夕,而 PC 却不合作。拯救这一天的是一个便携式 Linux,它启用了网络服务,让我可以归档和压缩文件,然后允许我将它们 ftp 到安全的地方(实际上是几个地方)。一旦我的数据安全了,就该重新安装 Windows 了。当天的教训是 “不要低估小型 Linux 的力量”,或者 “小型 Linux 大有作为”。无论哪种情况,那天晚上都喝了很多酒,一切都恢复了正常。
您选择 LOAF、tomsrtbt 还是其他微型 Linux 之一将取决于您需要做的具体事情。 嘿,考虑到这些家伙占用的口袋空间非常小,为什么不携带几种不同的口味呢? 这样,您就可以为任何事情做好准备。 这里有一个临别赠言,可能会鼓励您随身携带这些软盘之一。 如果您在质疑各种机器安全性的网络上工作(也许有人在监视或监听),那么您可以保证您的操作系统完全不受网络上可能存在的任何妥协的影响。 毕竟,当您的操作系统完全驻留在 RAM 中时,没有多少东西可以触及它。
如果说这些微型发行版没有其他作用,它们清楚地说明了 Linux 在小型网络设备或嵌入式系统中的可能性。 忠实的读者们,我已经看到了未来。 下周,我们将登上微型 Linux 的阶梯。 世界仍然很小,但工具却非常强大。 我们将看看几年前系统管理员只能 梦想 的东西。 在下周之前,请记住,即使是最小的 Linux 也能发挥作用。
电子邮件:ljeditors@ssc.com