吉隆坡的 Linux

作者:Junaid Ahmed Zubairi

我与 Linux 的渊源始于 1994 年,当时我的一位朋友为我购买了全套 Slackware 软盘。那时,我正在巴基斯坦 Sir Syed 大学建立计算设施。Linux 被设置为校园内的第一台电子邮件服务器,后来被系统管理员赋予了 Web 服务器的角色 (http://www.ssuet.edu.pk/)。此后不久,我在马来西亚国际伊斯兰大学 (IIUM) 担任教职。IIUM 最近搬到了占地 700 英亩的新校区,并拥有现代化的光纤 155Mbps ATM 核心网络,为各个学院的完全交换网段提供服务。升级和组织工程学院计算机实验室的责任交给了我,我担任了计算机协调员。

Linux in Kuala Lumpur

图 1. 工程学院大楼

我设置了两个由 70 台新计算机组成的集群,全部都是戴尔 PII 机器,由两台双 CPU 服务器提供服务。在一个实验室中,设置了一台 Windows NT 服务器,为学生提供 Windows 应用程序和打印服务。在另一个集群中,我安装并将服务器配置为双启动机器。默认情况下,服务器启动进入 Linux,通过 NIS 提供用户身份验证,并通过 NFS 提供用户主目录。如果 Windows NT PDC(主域控制器)发生故障,则可以将 NIS 服务器启动为备份 PDC NT 服务器。

Linux in Kuala Lumpur

图 2. 工程计算机实验室

服务器设置

由于戴尔 RAID 控制器不受支持,我们不得不将 RAID 控制器更换为磁带备份单元,以便 Linux 可以识别硬盘。现在,fdisk print 命令生成了清单 1 中所示的输出。

清单 1。

为了设置名为 garden 的 NIS 服务器,我们不得不克服许多小问题。使用 Dejanews (http://www.deja.com/) 的搜索功能,从 Usenet 上发布的讨论中快速获得了解决方案。通过使用 pwconv 命令禁用阴影密码,解决了阴影密码的问题。检查 NIS 是否正常工作的一个方便方法是发出命令

ypserv -d

当 NIS 客户端尝试验证用户帐户时,这会打印所有调试信息。

通过取消注释 Makefile 中的 SMP=3D1 行并重新编译内核,可以轻松启用 SMP。一旦我在 /etc/lilo.conf 文件中添加了 append=3Dmem=3D128M 行并执行了 /sbin/lilo,Linux 就可以识别出 128MB 的 RAM。此行中的任何空格都会导致它被忽略。

我通过 NFS 导出 /home 有两个目的。一是为 NIS 用户提供主目录,另一个原因是让他们查看重要公告。为此,在用户的配置文件中添加了以下行

cat /home/motd

我配置了一台单独的 PII 机器,名为 jasmine,作为应用程序服务器。Jasmine 通过 NFS 提供应用程序,包括 VLSI 布局工具、Netscape、Scilab、GNUplot、Ghostview 等。为了成为 30 台 PII 客户端的高效 NFS 服务器,jasmine 不参与 NIS。第三台 Linux 服务器,一台奔腾,被配置为学院的电子邮件和 Web 服务器 (http://eng.iiu.edu.my/)。

客户端设置

集群中的所有 30 台 PII 客户端都配置为双启动,以减少 Windows 忠实用户的烦恼。由于实验室管理员对学习 Linux 不感兴趣,我不得不给他一本操作手册,介绍如何将使用 Linux 启动的机器转换为 NIS 客户端工作站。以下是 NIS 客户端设置的步骤。

在使用正确的 NIC 驱动程序设置基本 Linux 系统后,从“模型”客户端复制以下文件

/etc/hosts  {To avoid setting up DNS service
     in localized cluster}
/etc/profile  {To set up paths and issue initial
     commands for an NIS user}
/etc/host.conf  {To set up the host lookup order
     with NIS}
/etc/defaultdomain {To set up NIS domain name}
/etc/rc.d/rc.inet2 {To start ypbind using
     /etc/defaultdomain as domain name}
/etc/fstab   {To import NFS directories into
     existing mount points}

在 /etc/passwd、/etc/group 和 /etc/shadow 文件中添加包含“+”的行。重新启动并以“test”NIS 用户身份登录以验证功能。

这本操作手册非常有效,因为管理员能够在无需了解设置细节的情况下启动 NIS 客户端。后来,为了用户的方便,添加了启动消息,以便他们了解客户端的双启动属性。所有必要的操作只是在 /etc/lilo.conf 文件中添加几行

#start LILO global section
boot=/dev/sda
message=/boot/boot.msg
prompt
timeout=100

boot.msg 文件包含以下文本

Type "linux" or "nt" to boot into operating
system of your choice.
为了设置 X Window 系统,我转向了 XSuSE (http://www.suse.de/XSuSE/XSuSE_E.html),因为它们拥有针对各种卡的最大驱动程序集。接受大多数问题的默认选择后,我能够通过填写正确的卡类型、监视器 hsyncvsync 值以及视频 RAM 大小来快速启动 X。

我没有在每次添加应用程序时都更改全局配置文件中的路径,而是在配置文件中包含了路径 /usr/local/apps/cad/bin。在此目录中,我使用 shell 脚本或符号链接来添加新应用程序。如果应用程序需要从其主目录运行,则将从此路径运行带有应用程序名称的 shell 脚本。例如,应用程序 exchek shell 脚本包含以下行

cd /usr/local/apps/exchek
/usr/local/apps/exchek/exchek

另一种方法是使用符号链接。例如,使用以下命令为 Netscape 创建了符号链接

ln -s /usr/local/apps/netscape/netscape netscape
IIUM 的 Linux 应用程序

Linux 在为高年级课程 ECE4330 VLSI 设计提供实验室课程方面派上了用场。如果没有真正的实验室,这门课程将无法进行,因为商业 VLSI(超大规模集成)布局工具对我们来说太昂贵了。我在 X 下设置了 MAGIC VLSI 布局编辑器,并用 SPICE(集成电路重点仿真程序)对其进行了补充,用于小型布局仿真和验证。由于没有许可问题,学生可以在多台工作站上同时使用这些工具。

在阅读了 1998 年 1 月 LJ 上关于 PVM(并行虚拟机)的文章后,我在一台 Linux 机器上设置了 PVM Web 课程服务器。我将学生分成几个小组,并为每个小组分配了两台 Linux 机器。他们的目标是将一台机器设置为主服务器,另一台设置为 PVM 环境中的从服务器,然后测试各种程序。尽管学生们未能完全成功运行各种程序,但他们很乐意在完全控制计算机的情况下研究如此重要的概念。

当前项目

我当前的项目包括使用 Red Hat Linux 设置过滤防火墙,以及将 HP 工作站集群绑定到 Linux NIS 服务器以进行用户帐户身份验证。因此,我们将能够阻止一些浪费互联网的行为,并为所有 UNIX 用户提供集中式帐户。

Linux in Kuala Lumpur
Dr. Junaid Ahmed Zubairi 博士 (junaid@iiu.edu.my) 是吉隆坡马来西亚国际伊斯兰大学电气与计算机工程系的副教授。除了教学和协调计算机实验室外,他还对与妻子和两个孩子一起探索马来西亚的自然美景感兴趣。
加载 Disqus 评论