Solaris Installation Procedure

From CLONWiki
Revision as of 18:39, 18 September 2007 by Boiarino (talk | contribs)
Jump to navigation Jump to search

IMPORTANT: DVDs for both Sparc and Opteron downloaded in August 2007 are BAD, do not use them !!! Use CD's only !!!

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

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).

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
 search domain: jlab.org, acc.jlab.org (will be written to /etc/resolv.conf)

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 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 /opt/sfw/bin/emacs to edit files):

 /etc/default/login: comment out CONSOLE=/dev/console
 /etc/ssh/sshd_config: PermitRootLogin?: 'no' - change to 'yes'
 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-u3-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
   DONE BY DEFAULT: hosts: files dns ('dns' for clon00 and clon10 only ???)
   netgroup: nis
   automount: files nis

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

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

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

3. 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
   #

4. 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 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
   #
   # clon00/clon10 specific
   /mnt/admin/clonfs2      -rw,bg  clonfs2:/
   /usr/clas/msql_run      -rw,bg  clonfs2:/msql
   #

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 recent patches, SunStudio (without patches !).

Background information

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

To enable X11 forwarding make sure you have uncommented and properly set 2 following lines in /etc/ssh/ssh_config file:

Host *
ForwardX11 yes

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:

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

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