When you add clients using the add_install_client -d script on the install server, the script reports DHCP configuration information to standard output. This information can be used when you create the options and macros needed to pass network installation information to clients.
To support clients needing to install from the network, you must create Vendor category options to pass information that is needed to correctly install the Solaris operating environment. The following table shows the options you need to create and the properties needed to create them.
Table 11-11 Values for Creating Vendor Category Options for SUNW Clients
Name |
Code |
Data Type |
Granularity |
Maximum |
Vendor Client Classes * |
Description |
---|---|---|---|---|---|---|
SrootOpt |
1 |
ASCII text |
1 |
0 |
SUNW.Ultra-1, SUNW.Ultra-30, SUNW.i86pc |
NFS mount options for the client's root file system |
SrootIP4 |
2 |
IP address |
1 |
1 |
SUNW.Ultra-1, SUNW.Ultra-30, SUNW.i86pc |
IP address of root server |
SrootNM |
3 |
ASCII text |
1 |
0 |
SUNW.Ultra-1, SUNW.Ultra-30, SUNW.i86pc |
Host name of root server |
SrootPTH |
4 |
ASCII text |
1 |
0 |
SUNW.Ultra-1, SUNW.Ultra-30, SUNW.i86pc |
Path to the client's root directory on the root server |
SswapIP4 |
5 |
IP address |
1 |
0 |
SUNW.Ultra-1, SUNW.Ultra-30, SUNW.i86pc |
IP address of swap server |
SswapPTH |
6 |
ASCII text |
1 |
0 |
SUNW.Ultra-1, SUNW.Ultra-30, SUNW.i86pc |
Path to the client's swap file on the swap server |
SbootFIL |
7 |
ASCII text |
1 |
0 |
SUNW.Ultra-1, SUNW.Ultra-30, SUNW.i86pc |
Path to the client's boot file |
Stz |
8 |
ASCII text |
1 |
0 |
SUNW.Ultra-1, SUNW.Ultra-30, SUNW.i86pc |
Time zone for client |
SbootRS |
9 |
NUMBER |
2 |
1 |
SUNW.Ultra-1, SUNW.Ultra-30, SUNW.i86pc |
NFS read size used by stand-alone boot program when loading kernel |
SinstIP4 |
10 |
IP address |
1 |
1 |
SUNW.Ultra-1, SUNW.Ultra-30, SUNW.i86pc |
IP address of Jumpstart Install server |
SinstNM |
11 |
ASCII text |
1 |
0 |
SUNW.Ultra-1, SUNW.Ultra-30, SUNW.i86pc |
Host name of install server |
SinstPTH |
12 |
ASCII text |
1 |
0 |
SUNW.Ultra-1, SUNW.Ultra-30, SUNW.i86pc |
Path to installation image on install server |
SsysidCF |
13 |
ASCII text |
1 |
0 |
SUNW.Ultra-1, SUNW.Ultra-30, SUNW.i86pc |
Path to sysidcfg file, in the format server:/path |
SjumpsCF |
14 |
ASCII text |
1 |
0 |
SUNW.Ultra-1, SUNW.Ultra-30, SUNW.i86pc |
Path to JumpStart configuration file in the format server:/path |
Sterm |
15 |
ASCII text |
1 |
0 |
SUNW.Ultra-1, SUNW.Ultra-30, SUNW.i86pc |
Terminal type |
* The vendor client classes determine what classes of client can use the option. Vendor client classes listed here are suggestions only. You should specify client classes that indicate the actual clients in your network that will be installing from the network. See Table 11-9 for information about determining a client's vendor client class. |
When you have created the options, you can create macros that include those options. The following table lists suggested macros you can create to support Solaris installation for clients.
Table 11-12 Suggested Macros to Support Network Install Clients
Macro Name |
Contains These Options and Macros |
---|---|
Solaris |
SrootIP4, SrootNM, SinstIP4, SinstNM, Sterm |
sparc |
SrootPTH, SinstPTH |
sun4u |
Solaris and sparc macros |
i86pc |
Solaris macro, SrootPTH, SinstPTH, SbootFIL |
SUNW.i86pc * |
i86pc macro |
SUNW.Ultra-1 * |
sun4u macro, SbootFIL |
SUNW.Ultra-30 * |
sun4u macro, SbootFIL macro |
xxx.xxx.xxx.xxx (network address macros) |
BootSrvA option could be added to existing network address macros. The value of BOOTSrvA should indicate the tftboot server. |
* These macro names match the Vendor client classes of the clients that will install from the network. These names are examples of clients you might have on your network. See Table 11-9 for information about determining a client's vendor client class. |
You can create these options and macros using the dhtadm command or DHCP Manager. If you use dhtadm, it might be easiest to create the options and macros by writing a script that uses the dhtadm command repeatedly. This is the recommended approach.
The following section, "Writing a Script That Uses dhtadm to Create Options and Macros", shows a sample script using the dhtadm command. If you prefer to use DHCP Manager, see "Using DHCP Manager to Create Install Options and Macros".
You can create a Korn shell script by adapting the example below to create all the options listed in Table 11-11 and some useful macros. Be sure to change all IP addresses and values contained in quotes to the correct IP addresses, server names, and paths for your network. You should also edit the Vendor= key to indicate the class of clients you have. Use the information reported by add_install_client -d to obtain the data needed to adapt the script.
# Load the Solaris vendor specific options. We'll start out supporting # the Ultra-1, Ultra-30, and i86 platforms. Changing -A to -M would replace # the current values, rather than add them. dhtadm -A -s SrootOpt -d 'Vendor=SUNW.Ultra-1 SUNW.Ultra-30 SUNW.i86pc,1,ASCII,1,0' dhtadm -A -s SrootIP4 -d 'Vendor=SUNW.Ultra-1 SUNW.Ultra-30 SUNW.i86pc,2,IP,1,1' dhtadm -A -s SrootNM -d 'Vendor=SUNW.Ultra-1 SUNW.Ultra-30 SUNW.i86pc,3,ASCII,1,0' dhtadm -A -s SrootPTH -d 'Vendor=SUNW.Ultra-1 SUNW.Ultra-30 SUNW.i86pc,4,ASCII,1,0' dhtadm -A -s SswapIP4 -d 'Vendor=SUNW.Ultra-1 SUNW.Ultra-30 SUNW.i86pc,5,IP,1,0' dhtadm -A -s SswapPTH -d 'Vendor=SUNW.Ultra-1 SUNW.Ultra-30 SUNW.i86pc,6,ASCII,1,0' dhtadm -A -s SbootFIL -d 'Vendor=SUNW.Ultra-1 SUNW.Ultra-30 SUNW.i86pc,7,ASCII,1,0' dhtadm -A -s Stz -d 'Vendor=SUNW.Ultra-1 SUNW.Ultra-30 SUNW.i86pc,8,ASCII,1,0' dhtadm -A -s SbootRS -d 'Vendor=SUNW.Ultra-1 SUNW.Ultra-30 SUNW.i86pc,9,NUMBER,2,1' dhtadm -A -s SinstIP4 -d 'Vendor=SUNW.Ultra-1 SUNW.Ultra-30 SUNW.i86pc,10,IP,1,1' dhtadm -A -s SinstNM -d 'Vendor=SUNW.Ultra-1 SUNW.Ultra-30 SUNW.i86pc,11,ASCII,1,0' dhtadm -A -s SinstPTH -d 'Vendor=SUNW.Ultra-1 SUNW.Ultra-30 SUNW.i86pc,12,ASCII,1,0' dhtadm -A -s SsysidCF -d 'Vendor=SUNW.Ultra-1 SUNW.Ultra-30 SUNW.i86pc,13,ASCII,1,0' dhtadm -A -s SjumpsCF -d 'Vendor=SUNW.Ultra-1 SUNW.Ultra-30 SUNW.i86pc,14,ASCII,1,0' dhtadm -A -s Sterm -d 'Vendor=SUNW.Ultra-1 SUNW.Ultra-30 SUNW.i86pc,15,ASCII,1,0' # Load some useful Macro definitions # Define all Solaris-generic options under this macro named Solaris. dhtadm -A -m Solaris -d \ ':SrootIP4=172.21.0.2:SrootNM="blue2":SinstIP4=172.21.0.2:SinstNM="red5":Sterm="xterm":' # 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. 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. dhtadm -A -m SUNW.i86pc -d ':Include=i86pc:' # Ultra-1 platforms identify themselves as part of the "SUNW.Ultra-1" class. # By default, we boot these machines in 32bit mode. All clients identifying # themselves as members of this class will see these parameters. dhtadm -A -m SUNW.Ultra-1 -d ':SbootFIL="/platform/sun4u/kernel/unix":Include=sun4u:' # Ultra-30 platforms identify themselves as part of the "SUNW.Ultra-30" class. # By default, we will boot these machines in 64bit mode. All clients # identifying themselves as members of this class will see these parameters. dhtadm -A -m SUNW.Ultra-30 -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 DHCP server. dhtadm -M -m 172.20.64.64 -e BootSrvA=172.21.0.2 dhtadm -M -m 172.20.64.0 -e BootSrvA=172.21.0.2 dhtadm -M -m 172.20.64.128 -e BootSrvA=172.21.0.2 dhtadm -M -m 172.21.0.0 -e BootSrvA=172.21.0.2 dhtadm -M -m 172.22.0.0 -e BootSrvA=172.21.0.2 # Make sure we return hostnames to our clients. dhtadm -M -m DHCP-servername -e Hostname=_NULL_VALUE_ # 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=172.23.128.2:SrootNM="orange-svr-2":SrootPTH="/export/root/172.23.128.12":' |
Execute the script as superuser to add the options and macros to your dhcptab. When you have done this, network client classes that are listed in the Vendor= string can install from the network using DHCP.
You can create the options listed in Table 11-11 and the macros listed in Table 11-12 using DHCP Manager.
See Figure 11-17 and Figure 11-16 for illustrations of the dialog boxes you use to create options and macros.