Next Previous Contents

2. 简介

这里所描述的架构是从1996 夏季开始在 CUI, University of Geneva所发展的. 这个信息系有许多的服务器(大多是 Unix 与 Novell), 和一些个人电脑, 可依用途分为两类:

以下是我们发展这种架构的目标: 这些限制使我们选用来自 Köppen EDV GmbH TCP/IP Bootprom 因为这种 Bootprom 跟操作系统无关而令我们相当感兴趣; 它只是模拟出一台软驱, 而且当以 Linux 开机时就跟 DOS 或 Windows 95 一样简单. 另外,开机磁盘的 影像档,可由自制的程序来取代, 这个功能使我们能在操作系统启动前,先做许多初始设定.

2.1 网络

Geneva 大学拥有 B 级网域, 分割成许多子网络. CUI 共使用了四个子网络, 其中之一供学生使用.

原本,我们的个人电脑使用两种网络的通讯协议: IPX 与 IP. IPX 这一类,我们由一台 Novell Netware 3 的服务器共用 DOS 与 Windows的软件. IP 这一类, 我们由一台 SUN 服务器靠 NFS 共用 Linux 软件及个人的分割区.

在我们最新的架构中, 已不再使用 IPX 通讯协议. 改由一台 Unix 服务器 (可以是 Linux 或 SUN)担任, Linux 客户端 可通过 NFS 而 DOS与Windows则由 SMB (NetBIOS) over TCP/IP 共用软件及使用者的文件.

2.2 它是如何工作

  1. 客户端个人电脑开机後, 在 TCP/IP Bootprom 获得控制权之前先做自我测试.
  2. Bootprom 送出 BOOTP/DHCP 要求而取得 IP 组态参数.
  3. 如果服务器收到个人电脑所送出的要求, 就会送回 BOOTP/DHCP 回应,内容包括客户端的 IP 地址, 预设网关道, 及开机影像档. 否则, 服务器会忽略这个要求.
  4. Bootprom 由 TFTP 通讯协议从服务器下载开机影像档, 并同时用这个开机影像档虚拟出一台 BIOS 层级的软驱.
  5. 个人电脑通过这个开机影像档 开机, 这个开机档只是单纯的开机程序(并不包括操作系统).
  6. 如果这台电脑是学生的个人电脑, 开机程序开始就由 TFTP 通讯协议下载一个小 的文本文件其内容是叙述这台电脑的硬盘规划状态. 通过这个小文件, 硬盘的分割区将 重新规划且 DOS 所使用的分割区也被快速格式化. 当所有的工作完成, 这些工作将在开机後三秒内完成.
  7. 开机程序接著让使用者选择所需的操作系统.
  8. 依照使用者的选择, 新的开机影像档将从服务器通过 TFTP 通讯协议下载.
  9. 如果选择使用 Linux, 开机影像档将包含 kernel loader 及压缩过的 kernel, 此 kernel 将支持 NFS root 及caching 文件 系统:
    1. 第一点, IP 组态是通过 BOOTP/DHCP 通讯协议由 Novell 服务器所接收.
    2. 这个 kernel 可以通过 NFS 挂上一个只能读的 root filesystem.
    3. 挂上一块有写入功能的小型 ramdisk .
    4. 如果在硬盘内发现 swap 分割区, 则为它做好准备并启动它.
    5. 如果在硬盘内发现 linux 分割区, 挂上它并为它做好 caching NFS 分割区.
    6. IP 组态一完成, 启动所有的服务, 也启动 xdm.
    7. 要求使用者登入. 这台工作站就续.
  10. 如果选择使用 DOSWindows, 开机影像档将是一个可以处理 FAT16 分割区压缩影像的程序. 通过 TFTP 下载 开机影像档, 并且储存在硬盘中以供未来使用, 包含任何使用过的分割区. 更严紧的说法是, 这个程序可以在以下 的状况中执行:
    1. 这个程序下载一个检查档 (512 bytes)以确认所选操作系统的开机影像档
    2. 如果所需的影像档并不存在磁盘中, 或者与检查档不吻合 (可能是由於开机影像档已被变更或者一个新 的版本被安装到服务器上), 整个影相像档将通过 TFTP 通讯协议来传输.
    3. 操作系统的影像档解压缩到第一个 FAT16的分割区, 传输速度大约是以每秒一 mega bytes.
    4. 程序接著跳到所选的操作系统的开机磁区, 而它现在已存在本机的硬盘中.
    DOS 与 Windows 3.1 而言, 我们使用免费的 Microsoft LanManager for DOS (请通过网络找到较接近您的 mirror 站; 它是由三个文件所组成 disk1 to disk4) 当成 SMB 客户端. Microsoft LanManager 可藉 DHCP 而支持动态设定. 在登入後, 使用者会看到 DOS, 并且可以打 win 启动 Windows 3.1 . 请注意这点, DOS 与 Windows 3.1 就如同安装在客户端一般. 对 Windows 95 而言, 我们也使用 Microsoft SMB 客户端 (叫 Client for the Microsoft Network), 它也可藉 DHCP 而支持动态设定. 我们为降低网络负载使用了 Shared LAN Cache, 一个强而有力的 network-to-disk cache 程序.
学生所使用的电脑可以很暴力的直接关掉电源而不会有任何问题, 因为硬盘的数据在每次开机都会重新建立.

对于比较 "安全的" 电脑 (如辅助教学的电脑), 或许有时会使用上述的方法来开机, 有时则直接载入硬盘内的开机影像档而不再清理硬盘. 这样可以允许使用者保留数据在硬盘中. 而当组态修正後又可以完整的更新开机影像档 就如同重新安装一般.

2.3 相关非商业

这种组态已经成功的移殖到世界上的许多地方. 少数人已经开始篆写一些技巧跟提示来完成这份 How-To. 如果您 也曾做过但在本文件中未备引用欢迎送一份 e-mail 给 Marc.VuilleumierStuckelberg@cui.unige.ch. 如果您在重建这种组态中 遇到问题, 请在详细看一次文件 !


Next Previous Contents