萬盛學電腦網

 萬盛學電腦網 >> Linux教程 >> Linux Remote

Linux Remote

class="22026"> 作者: Marc Vuilleumier Stückelberg, Sandro Viale and David Clerc
譯者: 曾元佑 [email protected]
v2.5.2, 九月 1997 


--------------------------------------------------------------------------------
這份文件將說明如何使一群PC擁有相當穩定的 Server-based 架構 , 此法可使每台PC在開機時選擇使用何種作業系統. 此種架構的精要就是 TCP/IP bootprom ,它可以讓使用者在開機時選擇不同的開機區塊. 此份文件的最新版本,包含超文件連結到可供下載的軟體及其它相關的資訊,都可以在這個網址找到 http://cuiwww.unige.ch/info/pc/remote-boot/howto.html. Linuxdoc-SGML,DVI 及 postscript各種版本都在這個目錄下. 
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------

1. 有那些變更...

1.1 ...從 1.x 版後 ? 
一大堆變動: 

Linux server-based 的架構與文件已全部重新設計. 目前是以 RedHat Linux 4.1為主 , kernel 更新成2.0.30 . 更簡化了 Linux 系統的設定與維護. 
DOS 和 Windows 的設定也重新設計過, 幾乎換成 "hard-disk based" . 如此使得架構更加簡化, 開機速度變快, 降低網路的負載,甚至允許Windows NT workstation 采用 server-based setup (雖然還未在本文中談到). 
目前我們用一台 DHCP server, 遵尋 DHCP/BOOTP extensions (RFC 2132). 
在這個架構也用了 Samba 免費的 SMB server , 來取代 Novell server. 事實上, 我們正要丟掉我們的 Novell server... 

1.2 ...從 2.4 版後? 
新的 開機旗幟 功能已加在 bpunzip 這個工具程式. 它現在可以在 VESA-相容型的顯視卡下工作. 開機旗幟可以用 ESC鍵; 從螢幕中移掉; 其他的按鍵已不會干擾到 TFTP 的傳輸. MRZIP,有一只臭□, 在解壓縮 磁碟壓縮影像 時會導至 "Bad compressed data" 錯誤, 我們已發現並修正了. 另外在 BPUNZIP 中發現的兩只會導至電腦當機的臭□也被修正了. 

更加完整的 . 加入連結到相關軟體 ( Shared LAN Cache) 及文件 (from J. Carlstedt, of The Cathedral School of Uppsala, Sweden). 

加入 UNZIPREG 原始程式碼的連結位址. 這些資訊是用來跟Windows 95 OSR2搭配使用的. 

bootptag Linux版的工具程式改采 DHCP 取代 BOOTP. 現在可以跟 Solaris 2.6 DHCP server 一起搭配使用. 



--------------------------------------------------------------------------------
--------------------------------------------------------------------------------

2. 簡介
這裡所描述的架構是從1996 夏季開始在 CUI, University of Geneva所發展的. 這個資訊系有許多的伺服器(大多是 Unix 與 Novell), 和一些個人電腦, 可依用途分為兩類: 

學生使用 
研究與輔助教學 
以下是我們發展這種架構的目標: 
任何一台電腦都可以執行 Linux, DOS, Windows 3.1 or Windows 95. 每次開機時可以選擇所需要的作業系統. 
所有的軟體, 包含作業系統, 可以放在伺服器上, 便於安裝與更新. 
客戶端電腦可以不對伺服器作寫入的狀態下正常工作(為了安全性),home 目錄除外. 
盡可能減少客戶端的設定. 客戶端可以自動由伺服器取得 IP 組態設定, 這些資訊放在一個小檔案, 可供各種作業系統使用. 
大部份的電腦都各自擁有硬碟, 客戶端可以靠這優點來降低網路負載與存放使用者的暫存檔. 
所有的使用者都 必須注冊才能使用電腦. 
注冊資訊必須所有的作業系統都相同且使用者可以存取個人的目錄,而每種作業系統都一致. 
學生所使用的電腦在每次啟動時必須清理一次. 也就是像剛安裝完的樣子. 
每台電腦可以防毒. 
這些限制使我們選用來自 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 它是如何工作 

客戶端個人電腦開機後, 在 TCP/IP Bootprom 獲得控制權之前先做自我測試. 
Bootprom 送出 BOOTP/DHCP 要求而取得 IP 組態參數. 
如果伺服器收到個人電腦所送出的要求, 就會送回 BOOTP/DHCP 回應,內容包括客戶端的 IP 位址, 預設通訊閘道, 及開機影像檔. 否則, 伺服器會忽略這個要求. 
Bootprom 由 TFTP 通訊協定從伺服器下載開機影像檔, 並同時用這個開機影像檔虛擬出一台 BIOS 層級的軟碟機. 
個人電腦透過這個開機影像檔 開機, 這個開機檔只是單純的開機程式(並不包括作業系統). 
如果這台電腦是學生的個人電腦, 開機程式開始就由 TFTP 通訊協定下載一個小 的文字檔其內容是敘述這台電腦的硬碟規劃狀態. 透過這個小檔案, 硬碟的分割區將 重新規劃且 DOS 所使用的分割區也被快速格式化. 當所有的工作完成, 這些工作將在開機後三秒內完成. 
開機程式接著讓使用者選擇所需的作業系統. 
依照使用者的選擇, 新的開機影像檔將從伺服器透過 TFTP 通訊協定下載. 
如果選擇使用 Linux, 開機影像檔將包含 kernel loader 及壓縮過的 kernel, 此 kernel 將支援 NFS root 及caching 檔案系統: 
第一點, IP 組態是透過 BOOTP/DHCP 通訊協定由 Novell 伺服器所接收. 
這個 kernel 可以透過 NFS 掛上一個只能讀的 root filesystem. 
掛上一塊有寫入功能的小型 ramdisk . 
如果在硬碟內發現 swap 分割區, 則為它做好准備並啟動它. 
如果在硬碟內發現 linux 分割區, 掛上它並為它做好 caching NFS 分割區. 
IP 組態一完成, 啟動所有的服務, 也啟動 xdm. 
要求使用者登入. 這台工作站就續. 
如果選擇使用 DOS 或 Windows, 開機影像檔將是一個可以處理 FAT16 分割區壓縮影像的程式. 透過 TFTP 下載開機影像檔, 並且儲存在硬碟中以供未來使用, 包含任何使用過的分割區. 更嚴緊的說法是, 這個程式可以在以下的狀況中執行: 
這個程式下載一個檢查檔 (512 bytes)以確認所選作業系統的開機影像檔 
如果所需的影像檔並不存在磁碟中, 或者與檢查檔不吻合 (可能是由於開機影像檔已被變更或者一個新 的版本被安裝到伺服器上), 整個影相像檔將透過 TFTP 通訊協定來傳輸. 
作業系統的影像檔解壓縮到第一個 FAT16的分割區, 傳輸速度大約是以每秒一 mega bytes. 
程式接著跳到所選的作業系統的開機磁區, 而它現在已存在本機的硬碟中. 
對 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 給 [email protected]. 如果您在重建這種組態中遇到問題, 請在詳細看一次文件 ! 

http://www.katedral.se/system/elevsyst, by Johan Carlstedt of The Cathedral School of Uppsala, Sweden. 
http://vitoria.upf.tche.br/~fred/, in portuguese, by Frederico Goldschmidt of the Passo Fundo University, Brasil. 


----------------------------------------------------------------------------
copyright © 萬盛學電腦網 all rights reserved