设置 SPARCstation
许多 PC 用户已经投入了 Linux 的 Unix 世界,而且我想象,像我这样的很多 Unix 铁杆用户也已经开始使用 PC 硬件,同样使用 Linux 迈出了他们的第一步,蹒跚学步。我不得不说,对于一个长期的 Sun 用户来说,尝试过渡到 PC 并非没有考验。BIOS 的神秘运作和扩展与扩充内存仍然让我难以捉摸,因此,当我在去年年底注意到 Red Hat 4.0 for SPARC architecture 发布时,我感到一丝欣慰。现在我们 Sun 用户可以在我们最喜欢的硬件上运行我们最喜欢的操作系统,而 PC 用户有机会在许多人可能直到最近才认为相当奇异的硬件上运行熟悉的操作系统。许多机构正在出售,甚至报废他们的第一代 SPARC 工作站,因为当运行 Sun 现在发布的相对“庞大”的操作系统时,它们变得越来越没用。许多这些主力机正以极低的成本甚至零成本向个人用户提供,而 Linux 为使用哪个操作系统的问题提供了一个理想的解决方案。
SPARC 工作站通常比同等年龄的 PC 提供更好的性能,并配备相对标准的 Peripherals 和接口。其中的好处是比旧的基于 VGA 的 386 机器更高的屏幕分辨率(Sun 的标准分辨率为 1152x900)以及内置的音频、以太网和 SCSI 控制器。
在本文中,我希望向那些不熟悉 Sun 硬件的读者介绍该品种的一些特性,提供关于哪些系统是好的购买选择以及哪些应该避免的指针,并提供足够的信息让您在您的机器上启动并运行 Red Hat 的 SPARC 发行版。
有哪些系统可供选择?在购买用于运行 Linux 的 Sun 工作站时,您应该注意什么?
首先,Red Hat Linux/SPARC 当前不支持几组机器,并且在 4.0 或 4.1 版本下无法工作。
所有基于 VME 的桌面或服务器机器都不受支持(即 400 和 600 系列)。
SS1000 和 SS2000 服务器不受支持。
较新的“Ultra”基础机器不受支持。
我应该在此强调,SPARC Linux 是变化非常迅速的平台之一(感谢那些敬业的移植大师们),我预计当您实际阅读本文时,Ultra 版本将可用。然而,此处讨论的 Red Hat 4.0 和 4.1 版本不支持该架构。
最近的桌面机器,Classic 和 SPARCstation 10 和 20(均为 “4m” 架构),可以非常愉快地运行 SPARC Linux,并且本文后面给出的测试和启动详细信息通常对它们有效。然而,普通的家庭用户不太可能在市场上遇到这些机器,并且价格是他愿意为不熟悉的硬件支付的价格,因此我想在此重点关注您最有可能遇到的机器,即较旧的 “4c” 架构系统。
首先,您需要意识到 Sun 的几个机箱可以容纳几种不同类型的 CPU。一个很好的例子是原始的 “披萨盒” SPARC 工作站机箱(尺寸与大号披萨外卖盒差不多,正面有独特的 “酒窝” 图案,侧面有相同图案的冷却孔)。这种机箱在几种不同的型号之间几乎没有变化,即 SPARCstation 1、1+ 和 2(SPARCstation 2 增加了一个小型风扇和一个地板格栅用于磁盘冷却)。
对于潜在的买家来说不幸的是,这种机箱也容纳了 Sun 3/80 CPU。3/80 是基于 68030 的(不是 SPARC),而且目前,没有 Linux 端口可用于它。除非您打算加入致力于 Sun3 移植项目的志愿者行列,否则您不想购买披着 SPARC 工作站外壳的 3/80。不要接受机器正面徽标实际反映内部情况的说法。仔细查看 CPU 的业务端。即使您无法打开机箱检查 CPU 芯片,机器实际上是 3/80 的一个明显标志是 CPU 上存在一个 9 针 D 型串行端口。尽管大多数桌面 SPARC 工作站(包括 3/80)都有一个 15 针 D 型以太网连接器,但没有一个具有这种类型的连接器,因此请数一下那些引脚。
图 1. Red Hat 发行版 & SPARCstation 1+
上面提到的任何其他机器,SPARCstation 1、1+ 或 2,都可以非常愉快地运行 Linux。它们通常配置有软盘驱动器和一个或两个内部硬盘驱动器。但是,它们没有板载帧缓冲器,必须牺牲三个可用的 SBus 卡槽之一来添加一个。注意:在 1 和 1+ 机器上,第三个 SBus 插槽标记为 “从” 插槽,仅适用于帧缓冲器板卡。它不支持 I/O 卡,例如 SCSI 或以太网。
现在在二手市场上更频繁出现的其他两个型号是 SPARCstation SLC 和 ELC 系统。这两款机器都很容易被误认为是普通的单色显示器,因为 CPU 内置在 17 英寸灰度显示器的外壳中。线索是机器后面板上的 SCSI、RS232 和键盘连接器。留意这两款,您可能会捡到便宜货。
尽管这两个型号都是在原始 SPARCstation 1 之后才问世的,但它们明确地针对市场低端,并且大多最终成为无盘工作站。ELC 是这两款中功能更强大的,尽管差距不大,并且可以通过显示器外壳顶部后部的 CPU 访问面板来识别它。然而,与前面提到的机器一样,CPU 和机箱是可互换的,因此确定您拥有哪台机器的唯一方法是开机。
另外两个具有通用机箱的系统是 IPC 和 IPX。这两个系统的外壳在宽度和深度上都较小,并且比 “披萨盒” 机器略高,并且设计为具有与(单独的)显示器相同的桌面 “占地面积”。此机箱可以安装在显示器下方,也可以使用 Sun 随系统提供的 “L” 形蓝灰色塑料支架立起来。
外壳的紧凑设计强调了这些系统是针对桌面用户的。机箱仅限于一个 3.5 英寸硬盘驱动器托架(加上一个软盘),并且非标准的 mini-DIN 样式插座用于 CPU 背板上的 RS232 连接器。
这两款机器都具有内置帧缓冲器。IPC 随附的板载帧缓冲器仅为单色,尽管可以通过利用两个可用的 SBus 插槽之一来添加彩色。IPX 配备彩色帧缓冲器,并使用不同类型的 SIMM,这使得 IPX 可以具有更大的整体内存容量,同时实际上只有 IPC 的 SIMM 插槽数量的三分之一。在这两者中,IPX 也是功能更强大的。
在上面提到的所有 “4c” 架构机器中,可能最好的选择是 SPARCstation 2。它提供了三个 SBus 插槽和一个双硬盘机箱的多功能性,并且具有比其两个外观相似的型号 1 和 1+ 更强大的 CPU。在安装阶段,需要一个 SBus 插槽用于帧缓冲器——Red Hat Linux/SPARC 4.0 需要一个位寻址控制台设备进行安装。它可以稍后移除,并使用 RS232 端口之一进行控制台连接,从而释放插槽用于另一个 SCSI 控制器,例如。软盘和硬盘安装座之间的额外风扇意味着该型号的驱动器运行温度稍低。尽管如果您正在寻找彩色桌面机器,IPX 可能是更合适的选择,但 SPARCstation2 可能是用作低成本、高容量服务器的理想选择。
SPARCstation 1 和 1+ 确实是这一代较旧机器的老旧纺织女工。虽然两者都有用于两个 3.5 英寸 SCSI 硬盘的安装点,但当今市场上可用的大多数驱动器都需要比此机箱所能提供的冷却更多的冷却。除非您计划仅使用 Sun 安装的内部驱动器并在外部 SCSI 总线上进行所有添加和扩展,否则最好避免使用这两个系统。切勿 将高速、高容量、高发热驱动器(例如 Seagate Barracuda)安装到这两台机器中。驱动器托架周围的气流不足,您将严重降低驱动器的可靠性和寿命。
虽然 SLC 和 ELC 从表面价值上看似乎是最没有吸引力的,但它们仍然有其优点。两者都没有冷却风扇(或磁盘),因此运行安静。许多人仍然喜欢单色系统,因为它们的显示清晰稳定,尤其是在长时间使用机器进行简单的任务(例如文本处理)时。这两个系统都需要一个外部硬盘驱动器才能运行 Red Hat Linux/SPARC。如前所述,ELC 是两者中最好的选择。
IPC 和 IPX 比 Sun4c 系列中的其他型号更紧凑,并且两者都具有内置帧缓冲器的优势。但是,由于只有一个内部磁盘和两个 SBus 插槽,它们可能最适合用作桌面机器,而不是用于服务器应用。SPARC Linux 邮件列表中的一些人提到了 IPC 的安装困难,但这仅仅是因为它是一个如此常见的系统,还是由于特定的系统问题,在撰写本文时仍然是一个未解决的问题。无论如何,IPX 是这两者中最好的选择,因为它功能更强大,具有更大的内存容量和彩色帧缓冲器作为标准配置。
有两种基本选项可用于获取 Red Hat Linux/SPARC 发行版。对于我们这些没有直接连接到互联网的人来说,购买 Red Hat CD-ROM 套件可能是最好的选择,因为该软件包包括一本软皮手册和通过电子邮件或传真提供的技术支持。这就是 Linux,已经有一些其他 CD-ROM 合集可用,其中包括 Red Hat 发行版(但没有纸质手册或技术支持选项)。另一方面,如果您有快速的互联网连接,您可能希望直接从 Red Hat ftp 服务器或其众多镜像站点之一下载发行版。由于 Red Hat 安装程序具有 ftp 选项,您甚至可以将初始下载限制为安装镜像,并使用该选项仅下载您在交互式安装过程中指定的软件包组。ftp 选项还具有额外的优势。Red Hat 的工作人员通常会在 “devel” 树中提供他们的最新版本,因此可以使用此方法下载 “最新版本”。
无论您如何获取发行版,您都必须访问 Red Hat 的网站并在开始安装之前获取最新版本的勘误表文件。这将为您节省一些浪费的时间和烦躁的情绪。
尽管 SPARC Linux 的总体表现非常出色,但 Red Hat 最初的 4.0 发行版存在一些问题,如果您不了解它们,这些问题可能会破坏您的一天,这些问题仅在 CD-ROM 套件创建后才被发现。您应该查看两个文件,Linux/SPARC 勘误表和您正在加载的任何版本的通用勘误表。后者涵盖所有架构的常见问题。表 2 包含承载发行版的 ftp 镜像站点列表和勘误表的 URL。
有几种方法可以启动进入 Red Hat 安装程序。不幸的是,初始版本中的许多最糟糕的错误都直接与启动过程有关,因此 4.0 可能很难安装,特别是对于任何一开始就不熟悉 SPARC 工作站特性的人来说。虽然 4.1 版本解决了许多这些问题,但 CD-ROM 上的启动软盘镜像仍然存在一些剩余的错误,并且您最好从 Red Hat 服务器 ftp 最新镜像。
从 CD-ROM 启动是第一个也是最明显的方法。请注意,虽然官方 Red Hat CD-ROM 是可启动的,但在其他供应商的 “合集” CD-ROM 套件上的发行版副本通常不可启动。从 4.0 CD-ROM 启动的缺点是存在一个错误,阻止跨多个分区在目标磁盘上进行安装。如果您从 4.0 CD-ROM 启动,您必须 将所有内容安装到一个大的分区中。如果您尝试跨多个分区安装,则安装过程将在硬盘上创建文件系统后不久失败。我需要在此强调,此问题仅限于从 CD-ROM 和 4.0 启动。下面概述的任何其他安装方法都将规避此问题,从 4.1 CD-ROM 启动也是如此。
对于那些启动 PROM 版本低于 2 的机器,从 CD-ROM 启动的命令是 bsd(0,6,0)(来自 > 提示符),对于那些启动 PROM 版本为 2 或更高的机器,命令是 boot cdrom(来自 ok 提示符)。单分区问题可以通过网络启动您的机器(见下文),然后继续从本地 CD-ROM 进行安装来克服。
对于任何通过互联网下载发行版或必须从 CD-ROM 启动的人来说,创建启动和根软盘是显而易见的方法。创建软盘只是在 Linux 或 Unix 系统上使用 dd,或在 DOS 机器上使用提供的 “rawrite.exe” 程序。从软盘启动是 bfd()(PROM 版本低于 2),或 boot floppy(PROM 版本 2 或更高)。
不幸的是,如前所述,来自 4.0 和 4.1 CD-ROM 的 v0 软盘镜像都存在重大问题,并且启动过程几乎总是会失败,并显示似乎是介质本身有故障的消息。
ok boot floppy Booting from: fd(0,0,0) SILO Read error on block 1 Read error on block 8 Fatal error: Unable to open filesystem boot:
第三种启动方法,也是我推荐的方法,是网络启动。如果您的系统既没有软盘驱动器也没有本地 CD-ROM 驱动器,这是您的唯一选择,并且它是优雅地解决困扰 CD-ROM 和软盘安装问题的变通方法。假设您可以访问网络并且至少有一个其他 Linux 或 Unix 系统,这是迄今为止最可靠的方法。请注意,我们在此处讨论的只是通过网络启动,而不是设置无盘客户端。创建无盘客户端需要一个具有相当大块空闲磁盘空间的服务器,并假设服务器具有支持客户端机器的马力和网络带宽,而启动服务器只需要足够的磁盘空间来保存安装镜像文件并在启动时将其提供给客户端一次。客户端机器在其他方面不依赖于服务器,并且一旦安装程序在客户端上运行,它就永远不需要再次引用服务器。
CD-ROM 和 ftp 服务器上的 “images” 目录都包含软盘文件(boot-v0.img 和 boot-v2.img)和一个单独的 tftpboot.img 文件。与软盘镜像一样,最新的 tftboot.img 文件可以从 Red Hat 镜像站点之一下载。
这是网络启动所需的后一个文件。用于配置启动服务器的方法对于 Linux、SunOS 和 Solaris 系统几乎相同。我们将使用一个示例配置,其中我们的启动服务器是一台名为 tyne.gaijin.co.jp 的机器,而 SPARC 工作站客户端是 coquet.gaijin.co.jp。服务器 IP 地址是 172.17.172.50。
在与启动服务器相同的子网上为您的新机器分配一个 IP 地址。在我们的示例中,客户端 “coquet” 的下一个可用 IP 地址是 172.17.172.52。它的硬件以太网地址 (MAC) 是 8:0:20:3:9:96。
在服务器上为 tftp 启动文件创建一个目录。SunOS 和 Solaris 机器默认使用 /tftpboot,我们也可以在 Linux 系统上使用此目录。
将 tftpboot.img 文件复制到新创建的目录。
从 tftpboot.img 文件创建一个符号链接到 SPARC 工作站启动 PROM 通过网络请求的唯一文件名。符号链接的格式为 <CLIENT_HEX_IP_ADDRESS>.<ARCHITECTURE>。取您在第一步中分配的 IP 地址,并将其逐段转换为十六进制,然后添加您系统的架构。在我们的示例中,我们需要将 172.17.172.52 转换为十六进制字,并且由于我们不太确定我们的新系统是什么架构,我们将为 4c 和 4m 机器创建链接。
172 = AC 17 = 11 172 = AC 52 = 34 ln -s ./tftpboot.img AC11AC34.SUN4C ln -s ./tftpboot.img AC11AC34.SUN4M
请注意,与 SunOS 和 Solaris 不同,相同的启动镜像可以用于 4c 和 4m 架构。
在 /etc/inetd.conf 中启用 tftp 守护进程。Linux 和 SunOS/Solaris 系统之间此条目的语法略有不同。在 Sun 系统上,有一个 -s 选项,可在 “安全” 模式下启用守护进程。Linux tftp 守护进程不使用此选项,如果它存在于配置文件中,则将其视为目录名,并且所有 tftpd 访问都将失败。Linux 和 SunOS/Solaris 之间的另一个区别是,大多数最新版本的 Linux 都附带配置了 tcpd 日志守护进程作为默认配置的 inetd.conf 文件。
Linux
tftpd dgram udp wait nobody /usr/sbin/tcpd\ in.tftpd /tftpboot
SunOS
tftpd dgram udp wait root /usr/etc/in.tftpd\ in.tftpd -s /tftpbootSolaris
tftpd dgram udp wait root /usr/sbin/in.tftpd\ in.tftpd -s /tftpboot
使用 kill -HUP <inetd PID> 或重新启动服务器来重新初始化 inetd。
确保客户端的以太网地址在服务器上的 arp 缓存和 Linux 系统上的 rarp 缓存中。
arp -s 172.17.172.52 08:00:20:03:09:96 rarp -s 172.17.172.52 08:00:20:03:09:96请注意在两种情况下添加到以太网地址的前导零填充。
rarp 命令可能会产生此错误
cat: /proc/net/rarp: No such file or directory
它表明 rarp 没有编译到内核中,并且 rarp 模块尚未加载。使用 insmod 加载它并重新运行 rarp 命令。
server# insmod /lib/modules/2.*.*/ipv4/rarp.o如果模块不存在,您将必须使用启用的 rarp 重新构建内核。
客户端系统通常需要大约三分钟才能启动进入安装程序。屏幕从默认的黑底白字变为白底黑字,字体更小,一旦内核加载。当设备被探测和识别时,您将开始看到正常的 Linux 启动消息。在启动序列结束时,系统直接进入安装程序,从那时起,提示几乎都是不言自明的。但是,仍然有一些事情需要注意。
Red Hat 安装在整个安装过程中为用户提供虚拟控制台。<ALT>F1 让您进入主安装屏幕,<ALT>F2 是一个 shell,<ALT>F3 显示来自安装程序的信息消息,<ALT>F4 显示控制台消息,<ALT>F5 显示来自各个软件包安装程序的消息,因为它们正在运行。
图 3. 连接到 SPARCstation ELC 的裸连接
SPARC-Linux 安装要求您创建一个 “全磁盘” 分区(文件系统类型 “5”),跨越从柱面 0 到最后一个可用柱面。Root、swap 和 /usr 分区以正常方式创建并与此 “全磁盘” 分区重叠。
正如您所看到的,SPARC-Linux 也从 0 开始编号柱面,而不是 i386 Linux 的默认值 1。
如果您的初始安装是从 4.0 CD-ROM 开始的,则有一些事情您需要了解(请参阅 Red Hat 的勘误表列表以获取最新信息)。您真的应该尽快更新您的内核,以规避一个特别糟糕的网络错误,该错误困扰着此版本随附的 2.0.18 内核。该问题会导致随机挂起和崩溃,尤其是在机器连接到也存在 IPX 数据包的网络时。在更新系统上的内核时,请务必同时更新内核可加载模块。新的内核和模块软件包以 Red Hat 的 RPM 软件包格式在他们的 FTP 服务器上提供,或者,您可以从 vger.rutgers.edu 获取最新内核的二进制 “快照”(参见表 2)。
如果您事先不知道,另一个可能令人困惑的问题是 dump 程序。这在没有检查 “字节序” 的情况下 slipped into 发行版,因此行为非常奇怪,抱怨搜索负编号的扇区和块。同样,Red Hat 站点提供了更新的 dump 软件包。版本 0.3-5 或更高版本应该可以工作。
在我撰写本文时,一群人正在整理 SPARC Linux 的第一个 Debian 发行版。然而,Red Hat 是 CD-ROM 上提供的唯一完整的打包发行版。虽然 Red Hat 最初的 4.0 发行版遇到了一些初期问题,但它已将 SPARC Linux 带入主流 Linux 领域,而不是像某种怪异事物一样被限制在死水一潭。最糟糕的问题已在 4.1 中修复,并且这个较新的版本也以更具吸引力的价格提供。通过 FTP 和其他供应商的合集 CD-ROM 提供这两个版本,增加了这种架构的普及性,并且安装基础正在迅速扩展,SPARC Linux 邮件列表上增加的流量就证明了这一点。虽然 IT 专业人士可能仍然不愿将其整个用户群迁移到 SPARC Linux,但似乎确实有越来越多的组织至少正在评估一个或两个系统。许多旧的 SPARC 主力机正在通过 Linux 获得新的生命,并在互联网上作为 FTP 和 Web 服务器弹出。
