Solaris 9 9/04 Installationshandbuch

Erzeugen von DHCP-Optionen und -Makros für Solaris-Installationsparameter

Beim Hinzufügen von Clients auf dem Installationsserver mit dem Skript add_install_client -d meldet das Skript DHCP-Konfigurationsinformationen an die Standardausgabe. Diese Informationen sind beim Erzeugen der für die Übergabe von Installationsinformationen an Clients erforderlichen Optionen und Makros hilfreich.

Um DHCP-Clients aus dem Netzwerk zu installieren, müssen Sie Herstellerkategorie-Optionen erzeugen, mit welchen Informationen übergeben werden können, die zum Installieren des Betriebssystems Solaris benötigt werden. Tabelle 7–4 zeigt die Optionen, die Sie erzeugen müssen und die dazu erforderlichen Eigenschaften.

Die Makros in Ihrem DHCP-Dienst lassen sich zur Durchführung verschiedener Installationsarten anpassen:

Die nachfolgenden Verfahrensbeschreibungen enthalten weitere Informationen zur Einrichtung von Clients für eine Netzwerkinstallation.

Die in der folgenden Tabelle aufgeführten Hersteller-Client-Klassen geben an, auf welche Klasse von Clients eine Option anwendbar ist. Bei diesen Hersteller-Client-Klassen handelt es sich nur um Beispiele. Geben Sie bitte die Client-Klassen der tatsächlich über das Netzwerk zu installierenden Clients an. Hinweise zur Ermittlung der Herstellerklasse von Clients finden Sie unter “Working With DHCP Options (Task Map)” in System Administration Guide: IP Services.

Ausführliche Informationen zu DHCP-Optionen entnehmen Sie bitte “DHCP Option Information” in System Administration Guide: IP Services.

Tabelle 7–4 Werte für die Erzeugung von Herstellerkategorie-Optionen für Solaris-Clients

Name 

Code 

Datentyp 

Granularität 

Maximum 

Hersteller-Client-Klasse * 

Beschreibung 

Die folgenden Herstellerkategorie-Optionen sind erforderlich, um die Unterstützung von Solaris-Installations-Clients auf einem DHCP-Server zu aktivieren. Die Optionen werden in den Startskripten der Solaris-Clients verwendet.

SrootIP4

IP-Adresse 

SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc

IP-Adresse des Root-Servers 

SrootNM

ASCII-Text 

SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc

Host-Name des Root-Servers  

SrootPTH

ASCII-Text 

SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc

Pfad zum Root-Verzeichnis des Clients auf dem Root-Server 

SinstIP4

10 

IP-Adresse 

SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc

IP-Adresse des JumpStart-Installationsservers 

SinstNM

11 

ASCII-Text 

SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc

Host-Name des Installationsservers 

SinstPTH

12 

ASCII-Text 

SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc

Pfad zum Installationsabbild auf dem Installationsserver 

Die folgenden Optionen können von den Startskripten der Clients verwendet werden, sind aber nicht erforderlich.

SrootOpt

ASCII-Text 

SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc

NFS-Mount-Optionen für das Root-Dateisystem des Clients 

SbootFIL

ASCII-Text 

SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc

Pfad zur Boot-Datei des Clients 

SbootRS

ZAHL 

SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc

Vom Standalone-Boot-Programm zum Laden des Kernels benötigte NFS-Lesezugriffsgröße 

SsysidCF

13 

ASCII-Text 

SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc

Pfad zur Datei sysidcfg im Format Server:/Pfad

SjumpsCF

14 

ASCII-Text 

SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc

Pfad zur JumpStart-Konfigurationsdatei im Format Server:/Pfad

SbootURI

16 

ASCII-Text 

SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc

Pfad zur Standalone-Boot-Datei oder zur WAN-Boot-Datei. Für die Standalone-Boot-Datei verwenden Sie folgendes Format: 

tftp://inetboot.sun4u

Das Format für die WAN-Boot-Datei lautet:  

http://Host.Domain/Pfad_zur_Datei

Diese Option kann verwendet werden, um die Einstellungen BootFile und siaddr außer Kraft zu setzen und eine Standalone-Boot-Datei abzurufen. Unterstützte Protokolle: tftp (inetboot), http (wanboot). Verwenden Sie beispielsweise dieses Format: tftp://inetboot.sun4u

SHTTPproxy

17 

ASCII-Text 

SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc

IP-Adresse und Port-Nummer des Proxy-Servers in Ihrem Netzwerk. Diese Option ist nur dann erforderlich, wenn ein Client über ein WAN bootet und im lokalen Netzwerk ein Proxy-Server verwendet wird. Verwenden Sie beispielsweise dieses Format: 198.162.10.5:8080

Die folgenden Optionen kommen in den Startskripten von Solaris-Clients derzeit nicht zum Einsatz. Um sie zu verwenden, müssen Sie die Startskripten bearbeiten.

SswapIP4

IP-Adresse 

SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc

IP-Adresse des Swap-Servers 

SswapPTH

ASCII-Text 

SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc

Pfad zur Swap-Datei des Clients auf dem Swap-Server 

Stz

ASCII-Text 

SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc

Zeitzone für den Client 

Sterm

15 

ASCII-Text 

SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc

Terminaltyp  

Nach der Erzeugung der Optionen können Sie Makros erstellen, die diese Optionen enthalten. Die folgende Tabelle zeigt Beispielmakros zur Unterstützung der Solaris-Installation für Clients.

Tabelle 7–5 Beispielmakros zur Unterstützung von Netzwerkinstallations-Clients

Makroname 

Enthält diese Optionen und Makros 

Solaris

SrootIP4, SrootNM, SinstIP4, SinstNM

sparc

SrootPTH, SinstPTH

sun4u

Solaris- und sparc-Makros

i86pc

Solaris-Makro, SrootPTH, SinstPTH, SbootFIL

SUNW.i86pc

i86pc-Makro

SUNW.Sun-Blade-1000

sun4u-Makro, SbootFIL

SUNW.Sun-Fire-880

sun4u-Makro, SbootFIL

xxx.xxx.xxx.xxx, Netzwerkadressenmakros

Vorhandene Netzwerkadressenmakros sind um die Option BootSrvA zu erweitern. Mit dem Wert von BootSrvA ist der tftboot-Server anzugeben.

Die in der vorigen Tabelle aufgeführten Makronamen stimmen mit den Hersteller-Client-Klassen der über das Netzwerk zu installierenden Clients überein. Diese Namen sind Beispiele für Clients, die in einem Netzwerk vorhanden sein könnten. Hinweise zur Ermittlung der Herstellerklasse von Clients finden Sie unter “Working With DHCP Options (Task Map)” in System Administration Guide: IP Services.

Diese Optionen und Makros lassen sich mit folgenden Methoden erzeugen:

Schreiben von Skripten zum Erzeugen von Optionen und Makros anhand von dhtadm

Nach Beispiel 7–13 lässt sich ein Korn-Shell-Skript schreiben, das alle in Tabelle 7–4 enthaltenen Optionen und einige hilfreiche Makros erzeugt. Dabei müssen Sie alle in Anführungszeichen stehenden IP-Adressen und Werte in die für Ihr Netzwerk geltenden IP-Adressen, Servernamen und Pfade abändern. Außerdem müssen Sie mit dem Schlüssel Vendor= die entsprechende Client-Klasse angeben. Aus der Meldung von add_install_client -d ersehen Sie die zur Anpassung des Skripts erforderlichen Informationen.


Beispiel 7–13 Beispielskript zur Unterstützung der Netzwerkinstallation

# Load the Solaris vendor specific options. We'll start out supporting 
# the Sun-Blade-1000, Sun-Fire-880, and i86 platforms. 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.
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:'
# 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_
# 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":'

Führen Sie dhtadm als Superuser im Batch-Modus aus. Geben Sie den Namen des Skripts mit den zu dhcptab hinzuzufügenden Optionen und Makros an. Wenn Ihr Skript beispielsweise netinstalloptions heißt, geben Sie folgenden Befehl ein:


# dhtadm -B netinstalloptions

Clients, die mit einer der in der Zeichenkette Vendor= aufgeführten Client-Klassen bezeichnet sind, können nun per DHCP über das Netzwerk installiert werden.

Weitere Informationen über die Verwendung des Befehls dhtadm finden Sie in dhtadm(1M). Näheres zur Datei dhcptab finden Sie in dhcptab(4).

Erzeugen von Installationsoptionen und -makros mit DHCP-Manager

Die in Tabelle 7–4 aufgeführten Optionen und in Tabelle 7–5 aufgeführten Makros können mit DHCP-Manager erzeugt werden.