Solaris Jumpstart Cheat Sheet

This document is a quick revision sheet, please refer to the sun documation regarding on how to install, configure
and implement Solaris Jumpstart

Create the directory structure mkdir -p /export/jumpstart/Solaris_8
mkdir /export/jumpstart/Solaris_10
mkdir /export/jumpstart/config
mkdir /export/jumpstart/boot
Share out directories # edit the /etc/dfs/dfstab file
share -F nfs -o ro,anon=0 /export/jumpstart/
Create Install server # Obtain the Solaris 8 CD's
setup-install-server /export/jumpstart/Solaris_8

# Obtain the Solaris 10 CD's or DVD
setup-install-server /export/jumpstart/Solaris_10
Add additional software

# Solaris normally comes on multiple CD's
add-to-install-server /export/jumpstart/Solaris_8

# Solaris normally comes on multiple CD's
add-to-install-server /export/jumpstart/Solaris_10

Copy the configuration and example scripts The samples can be find in and should be copied to /export/jumpstart/config

<your configured path>/Misc/jumpstart_sample
Create boot Servers

# If additonal boot servers are required
setup-install-server -b /export/jumpstart/boot

Setup automatic system config

create the sysidcfg information in the /export/jumpstart/config directory (can use sysidconfig from other servers)

Example sysidcfg file
---------------------------------------------------------------------------------------
timezone=GB
timeserver=localhost
network_interface=primary {netmask=255.255.240.0 protocol_ipv6=no}
terminal=vt100
security_policy=NONE
name_service=NONE

Create profiles

# There are various examples on the CD's (directory)

# profile keywords profile values
# ----------------- -----------------
  install_type initial_install
  system_type standalone
  partitioning default
  filesys c0t0d0s0 4000 /
  filesys c0t0d0s1 1000 swap
  filesys c0t0d0s3 1000 /var
  cluster SUNWcuser
  cluster SUNWCacc
  package SUNWman delete

see link for more profile exmaples, you have used the SUNWcall cluster package for everything

Create Begin & Finish scripts The scripts can be shell, perl, etc
Create rules file

The rules are based on keywords with values, begin script, profile, finish script

hostname vclus1   -   cluster_profile  -

Check rules file

# Run the check script within the config directory, a file will be created called "rules.ok"

check

Setup clients

# add_install_client is in Solaris_10/Tools directory

./add_install_client
-e 8:0:20:7a:22:7e 

-i 192.168.0.1
-t jump1:/export/jumpstart/Solaris_10/Tools/Boot
-p jump1:/export/jumpstart/config
-c jump1:/export/jumpstart/config
-s jump1:/export/jumpstart/Solaris_10
newserver1
sun4u

-e client ethernet address
-i IP address of client
-t install boot image path
-p Profile Server:<path to sysidcfg file >
-c Configuration Server:<custom jumpstart directory >
-s Install Server:<OS Location>

you could have obmitted the -e and -i options if you add them to /etc/ethers and /etc/hosts files

Other useful options
---------------------------------------------------------------------
-d specify as a DHCP client


check boot server

## to make sure that a boot server is on the network, yo can use the command

rpcinfo -b bootparam 1

Jumpstart Process

Jumpstart Server/Client Process
  • Client sends a RARP for its IP address 
  • The Boot Server responds via RARPD (in.rarpd) with the IP address in /etc/ethers or the ethers NIS/NIS+ map depending on the ethers setting in /etc/nsswitch.conf
  • The client sends a tftp request for a bootimage
  • The server starts in.tftp from inetd and sends the small net kernel image
  • The client then starts bootparams client and requests boot info
  • The server responds with the clients entry from /etc/bootparams
  • The client NFS mount it’s root partition from the install server
  • The client then mounts the configuration server (/jumpstart) and runs “sysidtool”. 
  • It then mounts the install image and runs Suninstall to begin the install process.

Daemons used

Daemons Used

mountd
nfsd
rpc.bootparamd
in.rarpd
in.tftpd
rpld (x86)

Files Used

Files Used /tftpboot
/rplboot
/etc/inetd.conf
/etc/ethers
/etc/hosts
/etc/bootparams