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