Solaris Installation Procedure

From CLONWiki
Jump to navigation Jump to search

This sections describes Solaris 10 update 6 (10/08) installation procedure for CLON cluster (Sparc-, Xeon- and Opteron-based machines).

IMPORTANT: if reinstalling system, save following directories: /etc, /var, /opt/sfw/etc, /ftfpboot, /root, /opt/realport. Also save image of 'll /' and 'df -kh' to make it easy to restore the same structure.

You will need 5 CDs 'Solaris 10 Software' (or one DVD) and one DVD 'Software Companion'. Download CDs or DVD image from http://www.sun.com. If you do not have DVD-ROM, you can mount iso image of the Companion after system itself is installed (see instructions below).

If you already have Solaris installed, type init 0 as root, and on prompt type boot cdrom. You can change boot sequence changing environment variable boot-device (setting it to cdrom disk will inforce corresponding boot sequence). For new Sun server you may want to minimize power-on tests, to do it on boot prompt type setenv diag-level min (default is usually max).

Boot from CD1. Several questions will be asked, for example for clondaq1:

 hostname: clondaq1
 IP address: 129.57.167.107
 mask: 255.255.255.0 (will be written to /etc/netmasks)
 route: 129.57.167.99 (others: 129.57.68.100, 129.57.69.1, 129.57.160.1, will be written to /etc/defaultrouter)
 services: choose DNS
 domain name: jlab.org
 DNS servers: 129.57.167.5, 129.57.167.14, 129.57.32.100, 129.57.32.101
 search domain: jlab.org, acc.jlab.org (will be written to /etc/resolv.conf)

If setting secondary ports, do not specify default router for them.

On screen Enabling Remote Services choose No, it will enable ssh service only (no ftp, no finger etc).

Choose Initial installation, then Custom installation.

Partition disk: if chouse ZFS, whole disk will be rpool, in that case set swap area to 8192MB and select Put /var on a separate dataset. If chouse UFS, if only one disk exist, set 12GB for 'swap', 40GB for system '/', mount the rest as '/space' (clon05 and others with smaller disks: 4096MB swap, 15GB /). If 2 disks exists and there is no intension to use second one, make it /space and use whole first disk for / and 12G swap. Sun has its own disk name scheme, for example c1t0d0 means ... .

Follow instructions on screen and finish installation.

NOTE: 'format' command shows all disks.

After installation is finished do following (use VI editor, /opt/sfw/bin/emacs is not installed yet, it will come from 'Software Companion' CD; you may install that software now if want 'emacs'):

 mkdir /root (or 'ln' to file server; normally we have it locally); copy .cshrc file from another machine's /root directory, it must looks like following:
   #
   # .cshrc for root on clon cluster solaris machines
   #
   setenv PATH ${PATH}:/opt/SUNWspro/bin
   setenv PATH ${PATH}:/opt/sfw/bin
   setenv PATH ${PATH}:/usr/sfw/bin
   setenv PATH ${PATH}:/usr/ccs/bin
   setenv PATH ${PATH}:/usr/sadm/admin/bin
   setenv PATH ${PATH}:/usr/local/bin
   setenv PATH ${PATH}:/usr/openwin/bin
   #
   setenv LD_LIBRARY_PATH /opt/SUNWspro/lib
   setenv LD_LIBRARY_PATH /opt/sfw/lib:$LD_LIBRARY_PATH
   setenv LD_LIBRARY_PATH /usr/sfw/lib:$LD_LIBRARY_PATH
   setenv LD_LIBRARY_PATH /usr/local/lib:$LD_LIBRARY_PATH
   #
   set prompt="%m:%C> "
   #
   alias ll "ls -al"
   alias xt "xterm -sb -sl 5000 -ls"
   #
   #temporary!!!
   setenv CODA /usr/local/clas/release/current/coda
   #


 in file /etc/passwd: change root home directory from '/' to '/root' and shell from '/sbin/sh' to '/bin/tcsh'
 in file /etc/default/login: comment out CONSOLE=/dev/console
 in file /etc/ssh/sshd_config: PermitRootLogin?: 'no' - change to 'yes'
 run svcadm restart /network/ssh (to show all services, type svcs)

From now on 'ssh root@clonxt2' is possible from remote host.

Install software from CD 'Software Companion'. Use it's README and follow instructions. If you want to mount iso image use loopback file driver lofi, for example:

 lofiadm -a /root/sol-10-u6-companion-ga.iso /dev/lofi/1
 mount -F hsfs -o ro /dev/lofi/1 /mnt

Image will be mounted as /mnt. To unmount do following:

 umount /mnt
 lofiadm -d /dev/lofi/1

To configure NIS do following:

1. Create /etc/defaultdomain with one line containing 'CCCHP'

2. Add to /etc/hosts all hosts to be used in 'ypinit -c' command (see below), normally:

129.57.167.5     clon00     clon00.jlab.org
129.57.167.14    clon10     clon10.jlab.org
129.57.33.22     ccs10      ccs10.jlab.org

3. Execute command domainname CCCHP (or reboot, but not necessary)

4. Execute following:

ypinit -c
next host to add: clon00
clon10
ccs10 (for EEL building put it on first place)
svcadm enable /network/nis/client
ypwhich - shows NIS server (must show first one in the list above)
ypcat passwd | grep <username> - shows id/gid etc information

Edit '/etc/nsswitch.conf':

   passwd: compat
   group: files nis
   hosts: files dns (done by default if 'dns' was clicked during installation)
   netgroup: nis
   automount: files nis

Fix accounts (can be used to add new account !):

1. /etc/passwd: add clasrun (for clon00/clon10 add also clasboot, clascron, clasmail), add last 3 lines

2. /etc/shadow: add clasrun, etc, add last line

3. Add new groups (onliners etc): /etc/group contails group name, group id and list of group members, while /etc/passwd contains <group id ??? NO !!!>

Set mounts if it was not done during installation. Example of /etc/vfstab file lines:

   /dev/dsk/c1t1d0s6   /dev/rdsk/c1t1d0s6   /work      ufs   2   yes   -
   /dev/dsk/c1t2d0s2   /dev/rdsk/c1t2d0s2   /scratch   ufs   2   yes   -

Set automounts:

1. /etc/auto_master contents:

   /-      /etc/auto_direct
   /-      auto_direct.ep
   /u      auto.u.ep
   /w      auto.w.ep

2. /etc/auto_direct contents:

   # auto_direct (Solaris, clon10-specific)
   /home                           -rw,bg  clonfs2:/vol/vol0/home
   /apps                           -rw,bg  clonfs2:/vol/vol0/apps/SunOS_sun4u
   /usr/local/clas         -rw,bg  clonfs2:/vol/vol0/local/clas
   /usr/local/downloads    -rw,bg  clonfs2:/vol/vol0/local/downloads
   /usr/local/bin          -rw,bg  clonfs2:/vol/vol0/local/SunOS_sun4u/bin
   /usr/local/etc          -rw,bg  clonfs2:/vol/vol0/local/SunOS_sun4u/etc
   /usr/local/include      -rw,bg  clonfs2:/vol/vol0/local/SunOS_sun4u/include
   /usr/local/lib          -rw,bg  clonfs2:/vol/vol0/local/SunOS_sun4u/lib
   /usr/local/man          -rw,bg  clonfs2:/vol/vol0/local/SunOS_sun4u/man
   /usr/local/sbin         -rw,bg  clonfs2:/vol/vol0/local/SunOS_sun4u/sbin
   /usr/local/share        -rw,bg  clonfs2:/vol/vol0/local/SunOS_sun4u/share
   /usr/local/src          -rw,bg  clonfs2:/vol/vol0/local/SunOS_sun4u/src
   #
   # for openssl untill installation from source will works
   /usr/local/ssl          -rw,bg  clonfs2:/vol/vol0/local/SunOS_sun4u/ssl
   #
   # for diman (see $CLON_PARMS/discr/archive /pretrigger/archive etc)
   /usr/clas/archives      -rw,bg  clonfs2:/archives
   #
   # work/scratch disks from clon00
   ##/work                   -rw,bg  clon00:/work
   ##/scratch                -rw,bg  clon00:/scratch
   /data                   -rw,bg  clon10:/data
   /raidold                -rw,bg  clon10:/raidold
   #
   # clon00/clon10 specific
   /mnt/admin/clonfs2      -rw,bg  clonfs2:/
   #

3. Restart automount service:

 svcadm restart /system/filesystem/autofs

Reboot machine:

 reboot, or 'shutdown -g0 -i6 -y', or 'init 6' (to power down use 'init 5')
 reboot -- -r (after new hardware installation: '-r' force reconfigure, '-s' force single user mode; 'exit' from single user will continue to multiuser mode)

Install SunStudio: goto /usr/local/src/SunStudio12 directory and run installer. If directory does not exist, create it, copy tar file from /usr/local/downloads into it and untar.

Enable X11 forwarding: uncommented and properly set 2 following lines in /etc/ssh/ssh_config file:

Host *
ForwardX11 yes

Configure SSH so it will create .Xauthority file in /tmp directory instead of $HOME directory.


Run updatemanager, subscribe and install patches (service plan # NK20211311). If machine does not have direct access to the web (for example clon20 on subnet 86), configure proxy from Update Manager's login page (proxy server: jprox.jlab.org, port:8080). More information about jlab proxy can be found at https://wiki.jlab.org/cc/external/wiki/index.php/Proxy_For_Special_Networks.

BUGs found

File /usr/include/sys/regset.h seems have a bug, see fix in http://clonweb/wiki/clondocs/Docs/regset.h (search for 'sergey').

Background information

If need to change IP address and keep the same machine name, edit files /etc/hosts, /etc/defaultrouter, /etc/netmasks, /etc/inet/ipnodes and maybe other files in /etc/inet directory. Files in /etc/net/*/hosts may need to be changed but we are not using them. If want to change machine name, change also files /etc/hostname.* and /etc/nodename. Run "ypinit -c" and set appropriate servers if new IP name is on different subnet and different set of NIS servers must be used. Reboot the machine.

Multiple ethernet ports setting: clon machines can be connected to the several subnets; for example clonxt2:

129.57.167.108 - clonxt2 (iprb0) - goto /etc/hosts
129.57.68.23 - clonxt2-daq1 (e1000g0) - goto /etc/hosts
129.57.69.201 - clonxt2-daq2 (e1000g1) - goto /etc/hosts

To configure do following:

1. Add all interfaces to the /etc/hosts file

2. Create /etc/hostname.e1000g0 file containing clonxt2-daq1, etc for every extra port

3. Edit file /etc/netmasks adding new line for every new port, for example:

 129.57.68.0    255.255.255.0

4. Reboot machine, or run commands:

 ifconfig e1000g1 plumb
 ifconfig e1000g1 129.57.68.23 netmask 255.255.255.0 up


To enable/disable services running under svcs just use svcadm enable/disable command. For legacy services rename corresponding script, for example to disable snmp service rename it's startup script:

 cd /etc/rc3.d
 mv S82initsma hide.S82initsma


If you ansvered "No" on screen Enabling Remote Services, the number of services will not be enabled. One of them is required if machine will be used as host to download VxWorks to ROCs. To start it type command:

svcadm enable network/shell:default

To configure Xserver for multiple displays do following commands

mkdir /etc/dt
mkdir /etc/dt/config
cd /etc/dt/config
cp /usr/dt/config/Xservers .

and replace one line in the end of Xservers file with approptiate, for example on clon03:

###   :0        Local local_uid@console root /usr/X11/bin/Xserver :0 -nobanner
  :0   Local local_uid@console root /usr/X11/bin/Xserver :0 -nobanner -dev /dev/fb0 bottom -dev /dev/fb2 top -dev /dev/fb3 left

see X server for more datails.

Useful diagnostic commands:

prtdiag -v

Proceed to Solaris Customization on CLON Cluster.


Installation from network

Create Install Server

Normally Install Server is created on clon00. Login into clon00 as root.

Create a directory to contain iso image:

mkdir -p /scratch/iso

Copy/download Solaris 10 and Software Companion dvd iso images to the /scratch disk and mount them:

lofiadm -a /scratch/sol-10-u6-ga1-sparc-dvd.iso /dev/lofi/1
mount -F hsfs -o ro /dev/lofi/1 /mnt

Copy the dvd image:

cd /mnt/Solaris_10/Tools
./setup_install_server /scratch/iso



umount /mnt
lofiadm -d /dev/lofi/1
lofiadm -a /scratch/sol-10-u6-companion-ga.iso /dev/lofi/1
mount -F hsfs -o ro /dev/lofi/1 /mnt
umount /mnt
lofiadm -d /dev/lofi/1



An Install Server must be created by copying the Solaris 8 CD images to its hard drive.

Insert the CD labeled Solaris 8 software 1 of 2 into the CDRom drive

Volume manager automatically mounts the cdrom. Otherwise mount manually.

Make a directory where the Solaris images will be stored. Be sure that there is enough space to allocate to the CD images

  1. mkdir /var/Solaris8

Change directories to the Tools directory

  1. cd /cdrom/sol_8_sparc/s0/Solaris_8/Tools

Copy the image from the CD to the install directory

  1. ./setup_install_server /var/Solaris8

Eject the CD. Insert CD labeled Solaris 8 Software 2 of 2 into the cdrom drive

Volume manager automatically mounts the cdrom

Change directories to the Tools directory

  1. CD /cdrom/sol_8_sparc_2/Solaris_8/Tools

Copy the image from the CD to the install directory.

  1. ./add_to_install_server /var/Solaris8


Configure System to be Installed over Network

Be sure to collect the following information on the new system:

Host name IP address Ethernet address Platform Group Create entry in /etc/ethers. If /etc/ethers does not exist, then create it with the following entry. You must remove the leading zeros in the ethernet address

8:0:20:c2:36:68 sun-001

Update /etc/hosts file with the ip address for the new server

10.10.1.114 sun-001

Verify that /etc/nsswitch.conf is using the /etc/bootparams file

bootparams: files

Change directory to the Tools directory on the Install Server

  1. CD /var/Solaris8/Solaris_8/Tools

Add the new server using the add_install_client utility. Note that sun-001 is the server name and sun4u is the appropriate platform group for the Netra T1.

  1. ./add_install_client sun-001 sun4u

Output:

saving original /etc/dfs/dfstab in /etc/dfs/dfstab.orig Adding "share -F nfs -o ro,anon=0 /var/Solaris8" to /etc/dfs/dfstab making /tftpboot enabling tftp in /etc/inetd.conf starting rarpd starting bootparamd starting nfsd's starting nfs mountd updating /etc/bootparams copying inetboot to /tftpboot

Install Solaris 8 on New System

At the system OK prompt:

boot net