4.3. 準備以 TFTP 網路開機用的檔案

如果您的機器連接到了一個區域網路,您可以從網路上的另外一台機器上面透過 TFTP 來開機。如果您傾向從另外一台機器上面啟動安裝系統,則開機檔案需要放在那台機器上面的某個特殊地方,並且設定您的機器從該機器進行開機。

您需要設置一台 TFTP 伺服器,對於很多機器來說,還需要一台 BOOTP 伺服器 。

不像 Sparc 和 PowerPC 機器上的 Open Firmware , SRM 控制台將使用 RARP 來取得它的 IP 位址。因此您必須使用 BOOTP 來從網路啟動您的 [2]。您也可以直接在 SRM 控制台中直接輸入網路介面的 IP 設定。

普通檔案傳輸協定 (Trivial File Transfer Protocol, TFTP) 能為客戶端提供開機映像。理論上,任何伺服器,在任何平台上只要實做這些協定就都能夠被應用。在這一節的一些例子裡面,我們將提供在 SunOS 4.x、SunOS 5.x (即 Solaris) 和 GNU/Linux 上面的一些操作例子。

4.3.1. 啟用 TFTP 伺服器

要準備好 TFTP 伺服器,您首先需要確定 tftpd 已經啟動。這通常可以在 /etc/inetd.conf 加入下列設定來完成:

tftp dgram udp wait nobody /usr/sbin/tcpd in.tftpd /tftpboot

Debian 套件通常在安裝後會自動把這條設定好。

檢查那個檔案並且記住被用作 in.tftpd 參數的目錄,您接下來將會需要它。-l 參數能夠讓某些版本的 in.tftpd 將所有請求記錄到系統日誌中。這在檢查錯誤的時候會很有用。如果您必須修改 /etc/inetd.conf,您將必須提醒正在運作的 inetd 程序該檔案已經被改變。在 Debian 系統中,您應該執行 /etc/init.d/inetd reload﹔而在其它系統中,找到 inetd 所對應的程序 ID,並且執行 kill -HUP inetd-pid

4.3.2. 將 TFTP 映像放到適當的位置

接下來,將在 節 4.2.1, "哪裡能找到安裝映像檔" 中找到的 TFTP 開機映像放到tftpd 開機映像目錄中。一般來說,這個目錄將是 /tftpboot。您必須將該檔案鏈結到 tftpd 用來啟動客戶端的檔案名稱。不幸的是,這個檔案名稱完全決定於 TFTP 客戶端程式,並且沒有一個強制的標準。

4.3.2.1. Alpha TFTP 開機

在 Alpha 上,您必須透過 -file 參數將檔案名 (與開機映像目錄的相對路徑) 指定給 SRM 的 boot 指令,或者設定 BOOT_FILE 環境變數。或者,也可以透過 BOOTP 提供檔案名稱 (在 ISC 的 dhcpd 中,使用 filename 指令)。與 Open Firmware 不同的是,這裡的 SRM 沒有預設檔案名稱,因此您必須透過以上方法之一來指定一個檔案名稱。



[2] Alpha 機器。Alpha 系統也能使用 DECNet MOP (Maintenance Operations Protocol) 來進行網路開機,但是這裡不使用此技術。相信您的本地 OpenVMS 操作員樂於協助您燒錄,以便在您的 Alpha 機器上用 MOP 來開機 Linux。