Here are my instructions for using Solaris dhcp server to store the PXE values and I have a dhcp server enabled wireless router is all using files for nameservice. This example recreated the dhcp entries if reran is all. # cat dhcp_ex.sh #!/bin/sh -x # ./dhcp_ex.sh INSTALL_BASE=/zfs1/install HOSTNAME=`hostname` SERVER=192.168.1.8 CLIENT=192.168.1.25 NETWORK=192.168.1.0 HOSTNAME=server25 MAC=08:00:27:4D:39:CB export MAC PXEMAC=010800274D39CB # CR shell returns Bad String for echo "${MAC}" | sed -e "s/://g" | tr "[:lower:]" under SOlaris works ok under OpenSolaris "[:upper:]" statement. #PXEMAC=01`echo ${MAC} | sed -e 's/://g' | tr "[:lower:]" "[:upper:]"` #OS=Solaris_10 OS=Solaris_11 REL=snv_b108 #REL=10u6 #1.Mount dvd iso run the Solaris_1X/Tools/setup_install_server $INSTALL_BASE/$REL #2. create the jumpstart profile directory in my case ${INSTALL_BASE}/jumpstart
# cat rules any - - any_machine_xp_zfs post_install # cat any_machine_xp_zfs install_type initial_install locale en_US.UTF-8 geo N_America cluster SUNWCXall system_type standalone fdisk rootdisk 0x07 delete fdisk rootdisk solaris delete fdisk rootdisk solaris maxfree #pool rpool 64g 8g 8g mirror any any pool rpool 128g 8g 8g any bootenv installbe bename 10u6 #partitioning explicit #filesys rootdisk.s0 8000 / filesys rootdisk.s1 8000 filesys rootdisk.s3 8000 filesys rootdisk.s4 8000 filesys rootdisk.s6 500 filesys rootdisk.s7 500 filesys rootdisk.s5 free #patch patch_order nfs://192.168.1.8/zones/install/patches retry 5 noreboot # cat sysidcfg system_locale=en_US.UTF-8 timezone=US/Eastern timeserver=localhost security_policy=none network_interface=primary {protocol_ipv6=no} name_service=DNS {domain_name=rochester.rr.com name_server=192.168.1.1 search=rochester.rr.com} security_policy=NONE nfs4_domain=dynamic root_password=e11Nyle9XTUOw service_profile=open terminal=vt100 # cat post_install #!/bin/sh -x bootadm update-archive -R /a mkdir /a/export/home mkdir /a/export/home/jabrewer echo "* 127.0.0.1:/export/home/&" gt gt /a/etc/auto_home echo "share -F nfs -o rw -d \"home dirs\" /export/home" gt gt /a/etc/dfs/dfstab echo "jabrewer:x:100:1::/home/jbrewer:/bin/sh" gt gt /a/etc/passwd echo "jabrewer:xxxxxxxxxxxxx:14167::::::" gt gt /a/etc/shadow chown 100:1 /a/export/home/jabrewer echo "set ip:dohwcksum = 0" gt gt /a/etc/system echo "rge \"pci10ec,8168\"" gt gt /a/etc/driver_aliases echo "* reboot so the deadman timer will be enabled." gt gt /a/etc/system echo "set snooping=1" gt gt/a/etc/system cp /var/log/Xorg.0.log /a dmesg gt /a/dmesg.txt bootadm update-archive -R /a #3. run and check sharetab entry if not already added by setup_install_server #share -F nfs -d "home dirs" /tftpboot #share -F nfs -o anon=0,sec=sys,ro -d "Jumpstart dirs" /zfs1/install #4. add or modify drivers for support for Ethernet card Jumpstart x86.miniroot for snv_b104 for use of RTL8111/8168B CR 6686415 Ethernet vendor 0x10ec device 0x8168, other wise snv_b103 or higher is not needed. #5. Add mac address to /etc/ethers file. #6. Run add_install_client for a snv_b104 client out_file=/tftpboot/menu.lst.${PXEMAC} export INSTALL_BASE SERVER HOSTNAME CLIENT MAC PXEMAX OS REL ${INSTALL_BASE}/${REL}/${OS}/Tools/add_install_client \ -d -e $MAC \ -s $SERVER:${INSTALL_BASE}/${REL} \ -c $SERVER:${INSTALL_BASE}/jumpstart \ -p $SERVER:${INSTALL_BASE}/jumpstart \ -t ${INSTALL_BASE}/${REL}/boot i86pc #7. setup DHCP server dhcpconfig -S -d # DHCP server disabled. # DHCP server shutdown. dhcpconfig -U -f -x -h # DHCP server not running. # Deleted the server macro from dhcptab. # Deleted table for network 192.168.1.0. # Deleted the dhcptab. # Deleted the DHCP configuration file. dhcpconfig -D -r SUNWfiles -p /var/dhcp -h files #Created DHCP configuration file. #Created dhcptab. #Added "Locale" macro to dhcptab. #Added server macro to dhcptab - ${HOSTNAME}. #DHCP server started. dhcpconfig -N 192.168.1.0 -m 255.255.255.0 -t 192.168.1.1 -g # Added network macro to dhcptab - 192.168.1.0. # Created network table. dhcpconfig -S -r #DHCP server shutdown. #DHCP server started. dhtadm -A -s SrootIP4 -d Vendor=SUNW.i86pc,2,IP,1,1 dhtadm -A -s SrootNM -d Vendor=SUNW.i86pc,3,ASCII,1,0 dhtadm -A -s SrootPTH -d Vendor=SUNW.i86pc,4,ASCII,1,0 dhtadm -A -s SinstIP4 -d Vendor=SUNW.i86pc,10,IP,1,1 dhtadm -A -s SinstNM -d Vendor=SUNW.i86pc,11,ASCII,1,0 dhtadm -A -s SinstPTH -d Vendor=SUNW.i86pc,12,ASCII,1,0 dhtadm -A -s SsysidCF -d Vendor=SUNW.i86pc,13,ASCII,1,0 dhtadm -A -s SjumpsCF -d Vendor=SUNW.i86pc,14,ASCII,1,0 dhtadm -A -s SbootURI -d Vendor=SUNW.i86pc,16,ASCII,1,0 #dhtadm -A -s BootFile -d Vendor=SUNW.i86pc,16,ASCII,1,0 #dhtadm -A -s BootSrvA -d Vendor=SUNW.i86pc,16,ASCII,1,0 dhtadm -A -m PXEClient:Arch:00000:UNDI:002001 -d ":BootFile=SUNW.i86pc:BootSrvA=${SERVER}:" dhtadm -A -m ${PXEMAC} -d:SinstNM=${HOSTNAME}: dhtadm -M -m ${PXEMAC} -eSinstIP4=${CLIENT} dhtadm -M -m ${PXEMAC} -eSinstPTH=${INSTALL_BASE}/${REL} dhtadm -M -m ${PXEMAC} -eSrootNM=${HOSTNAME} dhtadm -M -m ${PXEMAC} -eSrootPTH=${INSTALL_BASE}/${REL}/boot dhtadm -M -m ${PXEMAC} -eBootFile=nbp.${PXEMAC} dhtadm -M -m ${PXEMAC} -eSbootURI=tftp://${CLIENT}/${PXEMAC} dhtadm -M -m ${PXEMAC} -eSjumpsCF=${CLIENT}:${INSTALL_BASE}/jumpstart dhtadm -M -m ${PXEMAC} -eSsysidCF=${CLIENT}:${INSTALL_BASE}/jumpstart pntadm -A ${CLIENT} -c ${HOSTNAME} -f PERMANENT -i ${PXEMAC} -m ${PXEMAC} ${NETWORK} #8. This rewrites menu.lst from the Jumpstart #add_install_client boot options for unix to activate i.e like sparc process of boot -- net install i86pc grub menu.lst unix options of: -m install with in the /tftpboot grub menu also add to unix options -v for verbose # cp ${out_file} ${out_file}.tmp #sed 's/unix/unix -rv -m verbose install/g' ${out_file}.tmp gt ${out_file} sed 's/unix/unix -rv -m verbose console=text/g' ${out_file}.tmp gt ${out_file} cat ${out_file} #DHCP server started. dhcpconfig -S -r dhtadm -P pntadm -P 192.168.1.0 #10. Open a new Terminal window and run snoop -v from the server. # end of dhcp_ex.sh # -- This message posted from opensolaris.org