Du kan skapa ett Korn-skalskript genom att anpassa exemplet i Exempel 6–13 om du vill skapa alla alternativ som beskrivs i Tabell 6–4 och Tabell 6–5 och några användbara makron. Du måste ändra alla IP-adresser och värden inom citationstecken till de rätta IP-adresserna, servernamnen och sökvägarna i nätverket. Du bör också redigera nyckeln Vendor= och ange vilken typ av klienter du har. Använd informationen som du får från add_install_client -d för att anpassa skriptet.
# Läs in Solaris-leverantörsspecifika alternativ. Vi börjar med stöd till # Sun-Blade-1000, Sun-Fire-880 och i86-plattformar. Observera att # alternativet SUNW.i86pc bara gäller för Solaris 10 version 3/05. # Om -A ändras till -M ersätts aktuella värden, i stället för att läggas till. 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' # Läs in några användbara makrodefinitioner. # Definiera alla Solaris-alternativ under det här makrot med namnet Solaris. dhtadm -A -m Solaris -d \ ':SrootIP4=10.21.0.2:SrootNM="blue2":SinstIP4=10.21.0.2:SinstNM="red5":' # Definiera alla sparc-plattformsspecifika alternativ under det här makrot med namnet sparc. dhtadm -A -m sparc -d \ ':SrootPTH="/export/sparc/root":SinstPTH="/export/sparc/install":' # Definiera alla sun4u-arkitekturspecifika alternativ under det här makrot med namnet sun4u. # (Omfattar Solaris- och sparc-makron.) dhtadm -A -m sun4u -d ':Include=Solaris:Include=sparc:' # Solaris på IA32-plattformsspecifika parametrar finns under det här makrot med namnet i86pc. # Observera att makrot bara gäller för Solaris 10 version 3/05. dhtadm -A -m i86pc -d \ ':Include=Solaris:SrootPTH="/export/i86pc/root":SinstPTH="/export/i86pc/install"\ :SbootFIL="/platform/i86pc/kernel/unix":' # Solaris på IA32-datorer identifieras med klassen "SUNW.i86pc". Alla # klienter som identifierar sig själva som medlemmar i den här klassen har dessa # parametrar i makrot SUNW.i86pc, som omfattar makrot i86pc. # Observera att den här klassen bara gäller för Solaris 10 version 3/05. dhtadm -A -m SUNW.i86pc -d ':Include=i86pc:' # Sun-Blade-1000-plattformar identifierar sig själva som en del av # klassen "SUNW.Sun-Blade-1000". # Alla klienter som identierar sig själva som medlemmar i den här klassen # har dessa parametrar. dhtadm -A -m SUNW.Sun-Blade-1000 -d \ ':SbootFIL="/platform/sun4u/kernel/sparcv9/unix":\ Include=sun4u:' # Sun-Fire-880-plattformar identifierar sig själva som en del av klassen "SUNW.Sun-Fire-880". # Alla klienter som identierar sig själva som medlemmar i den här klassen har dessa parametrar. dhtadm -A -m SUNW.Sun-Fire-880 -d \ ':SbootFIL="/platform/sun4u/kernel/sparcv9/unix":Include=sun4u:' # Lägg till vårt startserver-ip för alla nätverksmakron för topologin som betjänas av # DHCP-servern. Vår startserver är samma dator som kör DHCP-servern. 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 # Se till att vi returnerar värdnamn till klienterna. dhtadm -M -m DHCP-servername -e Hostname=_NULL_VALUE_ # Skapa ett makro för PXE-klienter som vill starta från vår startserver. # Det här makrot gäller för Solaris 10 version 3/05. dhtadm -A -m PXEClient:Arch:00000:UNDI:002001 -d \ :BootFile=nbp.i86pc:BootSrvA=10.21.0.2: # Skapa ett makro för PXE-klienter som vill starta från vår startserver. # Det här makrot gäller för Solaris 10 version 2/06. dhtadm -A -m PXEClient:Arch:00000:UNDI:002001 -d \ :BootFile=i86pc:BootSrvA=10.21.0.2: # Skapa ett makro för en x86-baserad klienter med ethernet-adressen 00:07:e9:04:4a:bf # som installerar från nätverket med PXE. dhtadm -A -m 010007E9044ABF -d :BootFile=010007E9044ABF:BootSrvA=10.21.0.2: # Klienten med den här MAC-adressen är en disklös klient. Ignorera rotinställningarna # som finns i nätverkets definitionsområde för installation med klientens rotkatalog. dhtadm -A -m 0800201AC25E -d \ ':SrootIP4=10.23.128.2:SrootNM="orange-svr-2":SrootPTH="/export/root/10.23.128.12":' |
Logga in som superanvändaren och kör dhtadm satsvist. Ange namnet på det skript som lägger till alternativen och makrona i dhcptab. Om skriptet t.ex. heter netinstalloptions anger du följande kommando.
# dhtadm -B netinstalloptions |
Klienter som har leverantörsklientklasser som ingår i strängen Vendor= kan då använda DHCP och installera via nätverket.
Mer information om hur du använder kommandot dhtadm finns i dhtadm(1M). Mer information om filen dhcptab finns i dhcptab(4).