當您使用 add_install_client -d 程序檔於安裝伺服器上增加用戶端時,該程序檔會將 DHCP 配置資訊報告到標準輸出。當您建立用於將網路安裝資訊傳輸至用戶端的選項與巨集時,可以使用此資訊。
您可以在 DHCP 服務中自訂選項和巨集,以執行下列類型的安裝。
特定類別安裝 - 您可以指示 DHCP 服務為特定類別的所有用戶端執行網路安裝。例如, 您可以定義一個 DHCP 巨集,該巨集在網路上的所有 Sun Blade 系統中執行相同的安裝。使用 add_install_client -d 指令的輸出來設定特定類別安裝。
網路專用安裝 – 您可指示 DHCP 服務為特定網路中的所有用戶端執行網路安裝。例如,您可定義 DHCP 巨集,對 192.168.2 網路中的所有系統執行相同的安裝。
特定用戶端安裝-您可以指示 DHCP 服務為具有特定乙太網路位址的用戶端執行網路安裝。例如,您可以定義一個 DHCP 巨集,該巨集在乙太網路位址為 00:07:e9:04:4a:bf 的用戶端上執行特定安裝。使用 add_install_client -d -e ethernet_address 指令的輸出來設定特定用戶端安裝。
如需有關設定用戶端以使用 DHCP 伺服器執行進行網路安裝的更多資訊,請參閱下列程序。
若為使用 DVD 媒體的網路安裝,請參閱使用 DVD 影像增加要從網路安裝的系統。
若為使用 CD 媒體的網路安裝,請參閱使用 CD 影像增加要從網路安裝的系統。
若要從網路安裝 DHCP 用戶端,您必須建立供應商目錄選項以傳送安裝 Solaris 作業系統所需的資訊。下表說明您可用以安裝 DHCP 用戶端的常用 DHCP 選項。
從 Solaris 10 1/06 發行版本開始,您可使用列於表 6–4 中的標準 DHCP 選項配置與安裝基於 x86 的系統。這些選項通用於各平台,並可用以在各型基於 x86 的系統上安裝 Solaris 作業系統。請使用 DHCP 以這些選項在基於 x86 的系統上安裝 Solaris 10 1/06 發行版本。如需標準選項的完整清單,請參閱「dhcp_inittab(4) 線上手冊」。
表 6–5 會列出可用來安裝 Sun 用戶端系統的選項。本表列出的供應商用戶端類別可決定使用此選項的用戶端類別。請使用這些選項在 SPARC 系統上安裝 Solaris 10 作業系統,或在基於 x86 的系統上安裝 Solaris 10 3/05 發行版本。此處列出的供應商用戶端類別僅為範例。在您想要從網路進行安裝的用戶端中,您應該指定其用戶端類別。如需有關如何決定用戶端之供應商用戶端類別的資訊,請參閱「System Administration Guide: IP Services」中的「Working With DHCP Options (Task Map)」。
如需有關 DHCP 選項的詳細資訊,請參閱「System Administration Guide: IP Services」中的「DHCP Option Information」。
表 6–4 標準 DHCP 選項的值
選項名稱 |
字碼 |
資料類型 |
顆粒性 |
最大 |
說明 |
---|---|---|---|---|---|
BootFile |
不適用 |
ASCII |
1 |
1 |
用戶端的啟動檔案路徑 |
BootSrvA |
不適用 |
IP 位址 |
1 |
1 |
啟動伺服器的 IP 位址 |
DNSdmain |
15 |
ASCII |
1 |
0 |
DNS 網域名稱 |
DNSserv |
6 |
IP 位址 |
1 |
0 |
DNS 名稱伺服器清單 |
NISdmain |
40 |
ASCII |
1 |
0 |
NIS 網域名稱 |
NISservs |
41 |
IP 位址 |
1 |
0 |
NIS 伺服器的 IP 位址 |
NIS+dom |
64 |
ASCII |
1 |
0 |
NIS+ 網域名稱 |
NIS+serv |
65 |
IP 位址 |
1 |
0 |
NIS+ 伺服器的 IP 位址 |
Router |
3 |
IP 位址 |
1 |
0 |
網路路由器的 IP 位址 |
表 6–5 用於建立 Solaris 用戶端供應商種類選項的值
名稱 |
字碼 |
資料類型 |
顆粒性 |
最大 |
供應商用戶端類別 * |
說明 |
---|---|---|---|---|---|---|
若要使 DHCP 伺服器支援 Solaris 安裝用戶端,需要以下供應商種類選項。該選項在 Solaris 用戶端的啟動程序檔中使用。 備註 – 此處列出的供應商用戶端類別僅為範例。在您想要從網路進行安裝的用戶端中,您應該指定其用戶端類別。SUNW.i86pc 供應商用戶端類別僅對 Solaris 10 3/05 發行版本和相容版本有效。 |
||||||
SrootIP4 |
2 |
IP 位址 |
1 |
1 |
SUNW.Sun-Blade-1000、SUNW.Sun-Fire-880、SUNW.i86pc |
根伺服器的 IP 位址 |
SrootNM |
3 |
ASCII 文字 |
1 |
0 |
SUNW.Sun-Blade-1000、SUNW.Sun-Fire-880、SUNW.i86pc |
根伺服器的主機名稱 |
SrootPTH |
4 |
ASCII 文字 |
1 |
0 |
SUNW.Sun-Blade-1000、SUNW.Sun-Fire-880、SUNW.i86pc |
根伺服器上用戶端根目錄的路徑 |
SinstIP4 |
10 |
IP 位址 |
1 |
1 |
SUNW.Sun-Blade-1000、SUNW.Sun-Fire-880、SUNW.i86pc |
JumpStart 安裝伺服器的 IP 位址 |
SinstNM |
11 |
ASCII 文字 |
1 |
0 |
SUNW.Sun-Blade-1000、SUNW.Sun-Fire-880、SUNW.i86pc |
安裝伺服器的主機名稱 |
SinstPTH |
12 |
ASCII 文字 |
1 |
0 |
SUNW.Sun-Blade-1000、SUNW.Sun-Fire-880、SUNW.i86pc |
安裝伺服器上安裝影像的路徑 |
用戶端啟動程序檔可以使用以下選項,但這些選項不是程序檔所必需的。 備註 – 此處列出的供應商用戶端類別僅為範例。在您想要從網路進行安裝的用戶端中,您應該指定其用戶端類別。SUNW.i86pc 供應商用戶端類別僅對 Solaris 10 3/05 發行版本和相容版本有效。 |
||||||
SrootOpt |
1 |
ASCII 文字 |
1 |
0 |
SUNW.Sun-Blade-1000、SUNW.Sun-Fire-880、SUNW.i86pc |
用戶端根檔案系統的 NFS 掛載選項 |
SbootFIL |
7 |
ASCII 文字 |
1 |
0 |
SUNW.Sun-Blade-1000、SUNW.Sun-Fire-880、SUNW.i86pc |
用戶端的啟動檔案路徑 |
SbootRS |
9 |
數字 |
2 |
1 |
SUNW.Sun-Blade-1000、SUNW.Sun-Fire-880、SUNW.i86pc |
載入核心程式時由獨立式啟動程式使用的 NFS 讀取大小 |
SsysidCF |
13 |
ASCII 文字 |
1 |
0 |
SUNW.Sun-Blade-1000、SUNW.Sun-Fire-880、SUNW.i86pc |
sysidcfg 檔案路徑,格式為 server:/path |
SjumpsCF |
14 |
ASCII 文字 |
1 |
0 |
SUNW.Sun-Blade-1000、SUNW.Sun-Fire-880、SUNW.i86pc |
JumpStart 配置檔案路徑,格式為 server:/path |
16 |
ASCII 文字 |
1 |
0 |
SUNW.Sun-Blade-1000、SUNW.Sun-Fire-880、SUNW.i86pc |
獨立啟動檔案路徑或 WAN Boot 檔案路徑。獨立啟動檔案使用以下格式: tftp://inetboot.sun4u WAN Boot 檔案的格式為 http://host.domain/path-to-file 此選項可以用於覆寫 BootFile 與 siaddr 設定,以便擷取獨立啟動檔案。支援的協定:tftp (inetboot)、http (wanboot)。例如,使用以下格式:tftp://inetboot.sun4u |
|
17 |
ASCII 文字 |
1 |
0 |
SUNW.Sun-Blade-1000、SUNW.Sun-Fire-880、SUNW.i86pc |
網路上所使用的代理伺服器 IP 位址與通訊埠編號。僅當透過 WAN 啟動用戶端或者本機網路使用代理伺服器時,才需要此選項。例如,使用以下格式:198.162.10.5:8080 |
|
Solaris 用戶端啟動程序檔目前不使用以下選項。你只有編輯該啟動程序檔才可以使用它們。 備註 – 此處列出的供應商用戶端類別僅為範例。在您想要從網路進行安裝的用戶端中,您應該指定其用戶端類別。SUNW.i86pc 供應商用戶端類別僅對 Solaris 10 3/05 發行版本和相容版本有效。 |
||||||
SswapIP4 |
5 |
IP 位址 |
1 |
0 |
SUNW.Sun-Blade-1000、SUNW.Sun-Fire-880、SUNW.i86pc |
交換伺服器的 IP 位址 |
SswapPTH |
6 |
ASCII 文字 |
1 |
0 |
SUNW.Sun-Blade-1000、SUNW.Sun-Fire-880、SUNW.i86pc |
交換伺服器上用戶端交換檔案的路徑 |
Stz |
8 |
ASCII 文字 |
1 |
0 |
SUNW.Sun-Blade-1000、SUNW.Sun-Fire-880、SUNW.i86pc |
用戶端的時區 |
Sterm |
15 |
ASCII 文字 |
1 |
0 |
SUNW.Sun-Blade-1000、SUNW.Sun-Fire-880、SUNW.i86pc |
終端機類型 |
建立這些選項之後,即可建立包含前述選項的巨集。下表列出了您可以建立以支援用戶端的 Solaris 安裝的巨集範例。
表 6–6 支援網路安裝用戶端的巨集範例
巨集名稱 |
包含以下選項與巨集 |
---|---|
Solaris |
SrootIP4、SrootNM、SinstIP4、SinstNM |
sparc |
SrootPTH、SinstPTH |
sun4u |
Solaris 與 sparc 巨集 |
sun4v |
Solaris 與 sparc 巨集 |
i86pc |
Solaris 巨集、SrootPTH、SinstPTH、SbootFIL |
SUNW.i86pc |
i86pc 巨集 備註 – SUNW.i86pc 供應商用戶端類別僅對 Solaris 10 3/05 發行版本和相容版本有效。 |
SUNW.Sun-Blade-1000 |
sun4u 巨集、SbootFIL |
SUNW.Sun-Fire-880 |
sun4u 巨集、SbootFIL |
PXEClient:Arch:00000:UNDI:002001 |
BootSrvA、BootFile |
xxx.xxx.xxx.xxx 網路位址巨集 |
BootSrvA 選項可以增加到現有網路位址巨集中。BootSrvA 的值應該表示 tftboot 伺服器。 |
01client-MAC-address 用戶端專用巨集 (例如 010007E9044ABF) |
BootSrvA、BootFile |
上表所列出的巨集名稱與用戶端上必須從網路安裝的供應商用戶端類別符合。這些名稱為網路上可能存在的用戶端範例。如需有關決定用戶端之供應商用戶端類別的資訊,請參閱「System Administration Guide: IP Services」中的「Working With DHCP Options (Task Map)」。
您可以使用以下方法建立這些選項與巨集。
在 DHCP 管理程式中建立選項與巨集。如需有關如何在 DHCP 管理程式中建立選項和巨集的說明,請參閱使用 DHCP 管理程式建立安裝選項與巨集。
撰寫一個透過 dhtadm 指令而建立選項與巨集的程序檔。如需有關如何寫入建立這些選項與巨集之程序檔的資訊,請參閱撰寫使用 dhtadm 建立選項與巨集的程序檔。
請注意,提供給特定用戶端的供應商選項大小總數,包括選項代碼和長度資訊在內,不得超過 255 個位元組。這是目前 Solaris DHCP 協定實作的限制。通常,您應傳送盡可能少的所需供應商資訊。應在需要路徑名稱的選項中使用短路徑名稱。若建立指向長路徑的符號連結,便可使用較短的連結名稱。
您可使用 DHCP 管理程式建立列於表 6–5 中的選項,以及列於表 6–6 中的巨集。
請在建立用於安裝的 DHCP 巨集之前,先執行下列作業。
使用 DHCP 增加您要安裝的用戶端,當做網路安裝伺服器的安裝用戶端。如需有關如何在安裝伺服器中增加用戶端的資訊,請參閱第 7 章, 準備從網路安裝 (簡介)。
配置 DHCP 伺服器。如果您尚未配置 DHCP 伺服器,請參閱「System Administration Guide: IP Services」中的第 13 章「Planning for DHCP Service (Tasks)」。
成為 DHCP 伺服器系統上的超級使用者。
啟動 DHCP 管理程式。
# /usr/sadm/admin/bin/dhcpmgr & |
螢幕上會顯示 [DHCP 管理程式] 視窗。
在 [DHCP 管理程式] 中,選取 [選項] 標籤。
從 [編輯] 功能表中選擇 [建立]。
即會開啟 [建立選項] 對話方塊。
首先輸入第一個選項的名稱,然後再輸入適當的選項值。
使用 add_install_client 指令的輸出、表 6–4 和表 6–5 來檢查必須建立之選項的選項名稱和值。請注意,供應商用戶端類別僅為建議值。您應該建立表示實際用戶端類型 (需要該類型從 DHCP 服務中取得 Solaris 安裝參數) 的類別。如需有關如何決定用戶端之供應商用戶端類別的資訊,請參閱「System Administration Guide: IP Services」中的「Working With DHCP Options (Task Map)」。
輸入完所有的值之後,按 [確定]。
在 [選項] 標籤中,選取剛剛建立的選項。
從 [編輯] 功能表中選取 [複製]。
即會開啟 [複製選項] 對話方塊。
輸入另一個選項的名稱,然後相應地修改其他值。
您現在即可建立巨集以將這些選項傳送至網路安裝用戶端,如以下程序中所示。
您無需將這些選項增加到 Solaris 用戶端的 /etc/dhcp/inittab 檔案,因為它們已經包含在該檔案中。
請在建立用於安裝的 DHCP 巨集之前,先執行下列作業。
使用 DHCP 增加您要安裝的用戶端,當做網路安裝伺服器的安裝用戶端。如需有關如何在安裝伺服器中增加用戶端的資訊,請參閱第 7 章, 準備從網路安裝 (簡介)。
配置 DHCP 伺服器。如果您尚未配置 DHCP 伺服器,請參閱「System Administration Guide: IP Services」中的第 13 章「Planning for DHCP Service (Tasks)」。
建立要在巨集中使用的 DHCP 選項。如需有關如何建立 DHCP 選項的說明,請參閱如何建立支援 Solaris 安裝的選項 (DHCP 管理程式)。
在 [DHCP 管理程式] 中,選取 [巨集] 標籤。
從 [編輯] 功能表中選擇 [建立]。
即會開啟 [建立巨集] 對話方塊。
輸入巨集名稱。
如需可能使用的巨集名稱,請參閱表 6–6。
按 [選取] 按鈕。
即會開啟 [選取選項] 對話方塊。
在 [種類] 清單中,選取 [供應商]。
即會列出您建立的供應商選項。
選取一個要增加到巨集的選項,然後按 [確定]。
輸入此選項的值。
若要納入另一個巨集,請鍵入 Include 做為選項名稱,輸入巨集名稱做為選項值。
巨集納入之後,按 [確定]。
如果您計劃在網路安裝中使用 DHCP,您需要設置安裝伺服器並增加該系統做為安裝用戶端。如需更多資訊,請參閱第 7 章, 準備從網路安裝 (簡介)。
如果您計劃在 WAN 啟動安裝中使用 DHCP,便需要執行額外的作業。如需更多資訊,請參閱第 11 章, WAN Boot (簡介)。
如果您計劃在自訂 JumpStart 安裝中使用 DHCP,便需要建立一個設定檔和一個 rules.ok 檔案。如需更多資訊,請參閱「Solaris 10 安裝指南:自訂 JumpStart 及進階安裝」中的第 5 章「自訂 JumpStart (簡介)」。
如需有關 DHCP 的更多資訊,請參閱「System Administration Guide: IP Services」中的第 III部分「DHCP」。
您可以改寫範例 6–13 中的範例,以建立表 6–4 和表 6–5 中所列之所有選項和一些有用的巨集來建立 Korn shell 程序檔。一定要將所有的 IP 位址和引號中的值變更為正確的網路 IP 位址、伺服器名稱以及路徑。您還應該編輯 Vendor= 金鑰以指示您所擁有的用戶端之類別。使用 add_install_client -d 報告的資訊,以取得改寫程序檔所需的資料。
# Load the Solaris vendor specific options. We'll start out supporting # the Sun-Blade-1000, Sun-Fire-880, and i86 platforms. Note that the # SUNW.i86pc option only applies for the Solaris 10 3/05 release. # Changing -A to -M would replace the current values, rather than add them. dhtadm -A -s SrootOpt -d \ 'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,1,ASCII,1,0' dhtadm -A -s SrootIP4 -d \ 'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,2,IP,1,1' dhtadm -A -s SrootNM -d \ 'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,3,ASCII,1,0' dhtadm -A -s SrootPTH -d \ 'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,4,ASCII,1,0' dhtadm -A -s SswapIP4 -d \ 'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,5,IP,1,0' dhtadm -A -s SswapPTH -d \ 'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,6,ASCII,1,0' dhtadm -A -s SbootFIL -d \ 'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,7,ASCII,1,0' dhtadm -A -s Stz -d \ 'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,8,ASCII,1,0' dhtadm -A -s SbootRS -d \ 'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,9,NUMBER,2,1' dhtadm -A -s SinstIP4 -d \ 'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,10,IP,1,1' dhtadm -A -s SinstNM -d \ 'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,11,ASCII,1,0' dhtadm -A -s SinstPTH -d \ 'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,12,ASCII,1,0' dhtadm -A -s SsysidCF -d \ 'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,13,ASCII,1,0' dhtadm -A -s SjumpsCF -d \ 'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,14,ASCII,1,0' dhtadm -A -s Sterm -d \ 'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,15,ASCII,1,0' dhtadm -A -s SbootURI -d \ 'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,16,ASCII,1,0' dhtadm -A -s SHTTPproxy -d \ 'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,17,ASCII,1,0' # Load some useful Macro definitions. # Define all Solaris-generic options under this macro named Solaris. dhtadm -A -m Solaris -d \ ':SrootIP4=10.21.0.2:SrootNM="blue2":SinstIP4=10.21.0.2:SinstNM="red5":' # Define all sparc-platform specific options under this macro named sparc. dhtadm -A -m sparc -d \ ':SrootPTH="/export/sparc/root":SinstPTH="/export/sparc/install":' # Define all sun4u architecture-specific options under this macro named sun4u. # (Includes Solaris and sparc macros.) dhtadm -A -m sun4u -d ':Include=Solaris:Include=sparc:' # Solaris on IA32-platform-specific parameters are under this macro named i86pc. # Note that this macro applies only for the Solaris 10 3/05 release. dhtadm -A -m i86pc -d \ ':Include=Solaris:SrootPTH="/export/i86pc/root":SinstPTH="/export/i86pc/install"\ :SbootFIL="/platform/i86pc/kernel/unix":' # Solaris on IA32 machines are identified by the "SUNW.i86pc" class. All # clients identifying themselves as members of this class will see these # parameters in the macro called SUNW.i86pc, which includes the i86pc macro. # Note that this class only applies for the Solaris 10 3/05 release. dhtadm -A -m SUNW.i86pc -d ':Include=i86pc:' # Sun-Blade-1000 platforms identify themselves as part of the # "SUNW.Sun-Blade-1000" class. # All clients identifying themselves as members of this class # will see these parameters. dhtadm -A -m SUNW.Sun-Blade-1000 -d \ ':SbootFIL="/platform/sun4u/kernel/sparcv9/unix":\ Include=sun4u:' # Sun-Fire-880 platforms identify themselves as part of the "SUNW.Sun-Fire-880" class. # All clients identifying themselves as members of this class will see these parameters. dhtadm -A -m SUNW.Sun-Fire-880 -d \ ':SbootFIL="/platform/sun4u/kernel/sparcv9/unix":Include=sun4u:' # Add our boot server IP to each of the network macros for our topology served by our # DHCP server. Our boot server happens to be the same machine running our DHCP server. dhtadm -M -m 10.20.64.64 -e BootSrvA=10.21.0.2 dhtadm -M -m 10.20.64.0 -e BootSrvA=10.21.0.2 dhtadm -M -m 10.20.64.128 -e BootSrvA=10.21.0.2 dhtadm -M -m 10.21.0.0 -e BootSrvA=10.21.0.2 dhtadm -M -m 10.22.0.0 -e BootSrvA=10.21.0.2 # Make sure we return host names to our clients. dhtadm -M -m DHCP-servername -e Hostname=_NULL_VALUE_ # Create a macro for PXE clients that want to boot from our boot server. # Note that this macro applies for the Solaris 10 3/05 release. dhtadm -A -m PXEClient:Arch:00000:UNDI:002001 -d \ :BootFile=nbp.i86pc:BootSrvA=10.21.0.2: # Create a macro for PXE clients that want to boot from our boot server. # Note that this macro applies for the Solaris 10 2/06 release. dhtadm -A -m PXEClient:Arch:00000:UNDI:002001 -d \ :BootFile=i86pc:BootSrvA=10.21.0.2: # Create a macro for the x86 based client with the Ethernet address 00:07:e9:04:4a:bf # to install from the network by using PXE. dhtadm -A -m 010007E9044ABF -d :BootFile=010007E9044ABF:BootSrvA=10.21.0.2: # The client with this MAC address is a diskless client. Override the root settings # which at the network scope setup for Install with our client's root directory. dhtadm -A -m 0800201AC25E -d \ ':SrootIP4=10.23.128.2:SrootNM="orange-svr-2":SrootPTH="/export/root/10.23.128.12":' |
以超級使用者的身份使用批次模式執行 dhtadm。指定程序檔的名稱,以將選項與巨集增加到您的 dhcptab。例如,如果程序檔的名稱為 netinstalloptions,請鍵入以下指令:
# dhtadm -B netinstalloptions |
具有 Vendor= 字串中所列供應商用戶端類別的用戶端,現在可以使用 DHCP 透過網路進行安裝。
如需有關如何使用 dhtadm 指令的更多資訊,請參閱「dhtadm(1M)」。如需有關 dhcptab 檔案的更多資訊,請參閱「dhcptab(4)」。