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