Installing WebSphere Everyplace Access 4.21 On AIX

Quick Install

This method presumes you are connected to a network drive which has a WebSphere Everyplace Access (WEA) build available. This process describes the use of Setup Manager, which installs WEA. It includes the installation of components "WebSphere Everyplace Access", "WebSphere Everyplace Access Basic Services", "SecureWay Directory Server", and "DB2 Universal Database Server", INS, ESS, DMS, and the portlets.

When using Setup Manager without the use of the keyboard (for accessibility), choosing a radio button involves using the "Tab" key to go to the appropriate field, and pressing the space bar to select that field.  For selecting check boxes, use the tab and arrow keys to move to the appropriate  position, then press the space bar to "check" the box. Also, in the following sections, when instructed to "select" or "click", use the tab key to go to the appropriate field, then press the "Enter" key.

Before you begin installation of the full complement of services, and you are using the normal "NIM" installation Operating System image, you must increase your file sizes and reboot your machine. This can be done automatically using a utility provided in the "tools" directory.

1)  Logon to your AIX machine (i.e. "(yourmachinename)") as "root", but before you attempt to install WEA, you must increase your file sizes. (i.e. change directories to "/WEA/tools/shayden", and execute the script "qp.ksh"). See Increasing File Sizes for details of this script. You will then be instructed to reboot the machine to apply settings (this reboot process is probably not necessary). However, if you wish to do so, it can be done by typing "reboot" .

2)  (After reboot), logon to your AIX machine (i.e. "(yourmachinename)") as "root", and then mount a network drive to your machine. Change to the appropriate directory by executing the command "cd /tools/gdeen", and then execute "mknas" (a shell script to mount the network disk with builds on it). See Example Mount Script for details of this script.

3)  Change directories to the newly mounted drive (i.e. "cd  /nasimgs/cd1"), and at the AIX command prompt type "./".  In a few seconds a new window should appear for performing the installation.

During installation, progress will be displayed on the window you started the install on.

After installation, the "response script" for quick install is located in "/usr/IBMWPO/scripts/wprecord.script".

(common Administrator password for Windows machines is (generic password))

WebSphere Everyplace Access Install

1)  After invoking the install script, the first screen you will see is "View Information" dialog box in the "View Prerequisites" panel. If you wish, view the prerequisites (this will be done via a web browser), then click "Next"

2)  In the "Reading Software License" panel, select "Accept" in the "Program License Agreement" section and click "Next".

3)  In the "Install Selection" panel, select "Quick Install" and click "Next".

4)  In the "Type of Installation Selection" "Common Configuration" panel, for the "LDAP Root Suffix", enter "dc=rushmore", for the "Administrator Username", "Administrator Password", and "Confirm Password", enter "wpsadmin", and  click "Next". (Default values for Hostname was "(yourmachinename)" and WebSphere Install Directory was "/usr/WebSphere").

5)  In the "Type of Installation Selection" "Synchronization Adapter Selection", select "Adapter for Microsoft Exchange", and "Adapter for relational databases using DB2 Everyplace (JDBC compliant), then click "Next".

6)  In the "Type of Installation Selection" "Backend Configuration" panel, for the "Hostname", enter "", and your Username and Password (i.e. "shayden" and "shayden"), then click "Next". Installation will begin.

NOTE:  All databases are created with the "wpsadmin" user id.

Installation Details

After several minths a popup "Configuring for Admin Role on AIX " will appear.  While you are in the process of performing these steps you should also change the WebSphere Portal Ping Initial Timeout value to 1800.  From the WebSphere Administrative Console, scope down to "WebSphere Administrative Domain", "Nodes", (yournodename), "Application Servers", and select "WebSphere Portal".  In the "Advanced" tab for the Portal Server, change "Ping initial timeout" to "1800", click "Apply".

Follow the Configuring for Admin Role on AIX instructions before you continue with the installation of the software. When you are through with the configuring for admin role, be sure to click OK in the Configuring for Admin Role popup. The installation will then continue.

Wait a month, and eventually an "Installation Complete" popup should be displayed stating the response file has been saved, click "OK".  In the Display Summary window, click "Finish".

Logs resulting from the installation include the "setup*" file, which is the overall install log. Within that file will be references to additional logs "RunCommand* that will be in the directory "/usr/IBMWPO/RunCommand". (note that in the "setup*", and the "RunCommand*", the "*" refers to a "randomly generated" numeric value created during the install process.)

Additional logs are created dependant upon which subsystems you install. This includes:

ESS /usr/SyncPort

Additional logs can be found in "/usr/WebSphere/INS/install", and "/usr/WebSphere/INS/install/RecentAlert" directories.

Post Installation Required Steps

After the installation has completed, manual steps are required which corects a shared memory problem between the Application Server and DB2 on AIX machines and allow users to be added to WEA portal, as well as initializing appropriate environment variables for INS.

1) Logoff and then log back on the AIX session.

2) Stop WAS and all application servers,

3) Change the DB2 instance you installed the Portal Server as (i.e. "wasinst") to support adding users and groups, by performing the following:

          su - wasinst
          export EXTSHM=ON
          db2set DB2ENVLIST=EXTSHM
          db2stop force

4) Add the command "export EXTSHM=ON" to the associated DB ".profile" file.

5)  Restart WAS, all application servers, and any associated INS and ESS servers.

Testing The Installation

At this point WEA and associated software should be installed, and WAS and your applications should have been started. Start the Admin Console, and when queried for authentication, use the value "wpsadmin" for the ID and password. (Note: if you had left the Admin Console running after performing the steps in "Configuring for Admin Role", you still have a snapshot of the configuration of WES/WAS at that point. Refreshing the Admin Console will not show you the remaining applications that were installed after the configuration was performed. To see these applications you must exit the Admin Console and restart it. Logon using ID/Password of "wpsadmin").

To verify the installation and operation of WebSphere Application Server, scope down to "WebSphere Administrative Domain", "Nodes", (yournodename), "Application Servers", select "Default Server", right mouse click and select "Start". Once the Default Server has started you should be able to run the "snoop" servlet by using your favorite browser and browsing the url "http://localhost/servlet/snoop". The userid and password for accessing servlets is "wpsadmin".

To verify the installation of WEA, use the url "http://localhost/wps/portal" (or alternatively your machinename, i.e.. "") to run the "World Clock" portlet. If you are queried for an ID/Password, use "wpsadmin" for both.

To login to the WebSphere Everyplace Access using the "portal" portlet, click on the key icon on the upper right corner of the web page. For the User ID and Password, enter the value "wpsadmin", and click the "Log In".

If the snoop servlet and portal portlet both work your installation was (probably) successful.

Restarting WebSphere Everyplace Access

1)  From the Windows "Services" utility, if necessary, stop the "IBM SecureWay Directory V3.2.2" and the "IBM WS Admin Server".

2)  First start the SecureWay Directory server and then IBM WS Admin Server.

Uninstalling WEA Product

This uninstallation of this product requires that the same server/disks mounted to perform the installation is also mounted for the uninstall.

1)  Change directories to "/usr/IBMWPO/uninstall".

2)  Execute the script ""

3)  In the resulting dialog box, in the "View information" panel, click "Next".

4)  In the "Selecting Components" panel, select all highlighted components for uninstallation (i.e. "Portal Server", "WebSphere Everyplace Access Basic Services", "WebSphere Application Server", "SecureWay Directory Server", "SecureWay Directory Client", and "IBM HTTP Server". (note you could not select "DB2 Universal Database"))

Increasing File Sizes

This script contains the commands to increase your file sizes to accomodate the larger build. Note that it only adds to the current size of your file system without knowing or caring what they currently are!


print "Fixing the /etc/profile -- to resolve stty issue"
cat /etc/profile | sed -e "s/stty erase/#stty erase/g" >/tools/mo.log
mv /tools/mo.log /etc/profile

chfs -a size='+200000' /
chfs -a size='+2400000' /home
chfs -a size='+800000' /tmp
chfs -a size='+1200000' /usr
#usr/sbin/chfs -a size=6553600 /home
usr/sbin/chfs -a size=224000 /home

echo "Filesystem /, /tmp, /usr and /home modified."
echo "Updating /etc/security/limits file"
cp /tools/insv2/shilen/limits /etc/security/limits

echo "Remember to reboot to apply settings"

Example Mount Script

The following are the contents of a schell script which can be used as is or modified for mounting the build you wish. The important things to consider is the last section, which specifies the machine ("cinta03"), as well as the directory path the build is on ("drive1/421old/install/cd(blahblahbla)").

(by Gary Deen)

# [$1] = Build  I.E. 10220330  - October 22, at 3:30am
# if unspecified, then get the most Current Build
if [[ "$REQBUILD" = "-?" ]]; then
 print "Format: $0 [OptionalBuildDate]"
 print ""
 print "When OptionalBuildDate is blank, the current build is used."
 print "When an OptionBuildDate is specified, that build is used."
 print "The build is then linked to from \"/nasimgs\"."
 print "Change directories into \"/nasimgs/cd1\" to start a build."
 print "Available builds:"
 ls /tools/WEA_R421
 exit 3
PROGDIR=$(/usr/bin/dirname $0)
# run nfsc to connect to cinta03, until the builds no longer
# need the cinta03 images.

function rmlinks
# Clean up any previous nasimgs directory, and set to empty
#print /usr/bin/mkdir -p $MYDIR
/usr/bin/mkdir -p $MYDIR 2> /dev/null
MDIRLIST=$(/usr/bin/ls $MYDIR)
# print /usr/sbin/unlink $MYDIR/$MDIR
 /usr/sbin/unlink $MYDIR/$MDIR

function mountnas
# Mount the Network Attached Share with the builds at /nas
if [[ -d "/nas" ]]; then
 print "No /nas"
#cd /nas 2>/dev/null
#CIWD2=`cd /nas 2>/dev/null && /usr/bin/pwd`
#cd - 2> /dev/null
#print $CIWD2

#if [[ "$CIWD2" != "/nas" ]]; then
 print usr/bin/mkdir /nas
 /usr/bin/mkdir /nas 2>/dev/null
ISMOUNT=$(/usr/sbin/mount | /usr/bin/grep "nas" | /usr/bin/awk 'BEGIN{}
/nas300/ {print $3 };
if [[ $ISMOUNT = "" ]]; then
 print /usr/sbin/mount -o ro nas300:/staging /nas
 /usr/sbin/mount -o ro nas300:/staging /nas

function stripdotdot
#print $string1$string2
while [[ "`print $string2 | /usr/bin/head -c 3`" = "../" ]]; do
        # remove "../" from front of string 2
        WC=`print $string2|/usr/bin/wc -c`
        ((WC2 = WC - 3))
        MYLINK2=`print $string2|/usr/bin/tail -c $WC2`
        # remove last "/directory" from string1

        junkstring1=`echo $string1 | /usr/bin/awk 'BEGIN { RS="/"; OSTR="";LAST="";LAST2=""}
                OSTR=OSTR LAST2
        END{ print OSTR }'`
        print $string1$string2

function linkdir
 # $1 "Directory which contains links"
 # $2 "directory in which to copy these links."
 # This routine will copy all of the links in a directory into another
 # directory. If the original directory contains links that are "../..",
 # then the links will be correctly repaired to not contain them.

 # for all images in NAS, make a link file to them
 BUILDDIR="$1" # usually /nas/WEA_R421/CurrentBuild/cdlinks
 DESTDIR="$2" # usually /nasimgs

 cd $BUILDDIR 1>&2 2>/dev/null
 if [[ "$CWD" != "$BUILDDIR" ]]; then
  print "cd $BUILDDIR has failed. Check mounts."
  exit 3

 FILES=`/usr/bin/ls .`
 cd - 1>&2 2> /dev/null
 print "Linking Build directories " $FILES

 for MDIR in $FILES ;
  #MDIR == cd1
  MYLINK=`/usr/bin/ls -la $BUILDDIR/$MDIR | /usr/bin/awk 'BEGIN{}
   {print $11}
  #MYLINK == "../../10230303/cdimg/cd1" or "/nas/WEA_R421/10230202/cdimg/cd1"
  if [[ `echo $MYLINK | /usr/bin/head -c 1` = '/' ]]; then
   /usr/bin/ln -s $MYLINK $DESTDIR/$MDIR
   echo 1 /usr/bin/ln -s $MYLINK $DESTDIR/$MDIR
   MYLINK2=`stripdotdot "$BUILDDIR" "$MYLINK"`
   /usr/bin/ln -s $MYLINK2 $DESTDIR/$MDIR
   echo 2 /usr/bin/ln -s $MYLINK2 $DESTDIR/$MDIR

function getrelease
cd $MYDIR 1>&2 2>/dev/null
if [[ "$(pwd)" != "$MYDIR" ]]; then
        print "MOUNT failed."
        exit 3
RELEASE=`/usr/bin/ls | /usr/bin/grep [0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]`
#cd - 1>&2 2> /dev/null
print $RELEASE

function fixupmissing
 # for all directories in Jims Mounted last good build, get a link
 # this is because not all CDs are rebuilt at each build.

 cd /WEA/new 1>&2 2>/dev/null
 MFILES=`/usr/bin/ls .`
 cd - 1>&2 2> /dev/null

 for MDIR in $MFILES ;
  if [[ -h "$NEWDIR/$MDIR" ]]; then
   print "Linking OLD build directories " $MDIR
   /usr/bin/ln -s /WEA/new/$MDIR $NEWDIR/$MDIR
   echo 3 /usr/bin/ln -s /WEA/new/$MDIR $NEWDIR/$MDIR

if [[ "$REQBUILD" = "" ]]; then
 rmlinks /nasimgs
 linkdir "/nas/WEA_R421/CurrentBuild/cdlinks" "/nasimgs"

# fixupmissing "/nasimgs"

 RELEASE=`getrelease /nasimgs/cd1`
 cd - 1>&2 2> /dev/null
 if [[ -d "/tools/WEA_R421/$RELEASE" ]]; then
  rmlinks "/tools/WEA_R421/$RELEASE"
  linkdir "/nas/WEA_R421/CurrentBuild/cdlinks" "/tools/WEA_R421/$RELEASE"
#  fixupmissing "/tools/WEA_R421/$RELEASE"
 # User typed in a build date for an argument.
 # Try and find this build date from a list of valid builds saved in /tools/gdeen/builds/WEA_R421
 if [[ -d "/tools/WEA_R421/$REQBUILD" ]]; then
  rmlinks /nasimgs
  linkdir "/tools/WEA_R421/$REQBUILD" "/nasimgs"
  print "Build Requested is not in /tools/WEA_R421"
  exit 3
RELEASE=`getrelease /nasimgs/cd1`
print ""
print "CD /nasimgs/cd1 for the latest $RELEASE build"

(OR)  $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$


print  Fixing AIX/Linux Issue....
nfso -o nfs_use_reserved_ports=1

function mymount
echo Mounting $1 as $2
mkdir -p $2
/usr/sbin/mknfsmnt -f $2 -d $1 -h -n -B -A -t ro -w bg -r 10 -Y -Z -X -H -j -q -g
echo  Mounting "cinta03 drive1/421"....

mymount /drive1/421/install/cd1 /WEA/new/cd1
mymount /drive1/421/install/cd2-1 /WEA/new/cd2-1
mymount /drive1/421/install/cd2-2 /WEA/new/cd2-2
mymount /drive1/421/install/cd2-3 /WEA/new/cd2-3
mymount /drive1/421/install/cd2-4 /WEA/new/cd2-4
mymount /drive1/421/install/cd2-5 /WEA/new/cd2-5
mymount /drive1/421/install/cd2-6 /WEA/new/cd2-6
mymount /drive1/421/install/cd2-7 /WEA/new/cd2-7
mymount /drive1/421/install/cd3 /WEA/new/cd3
mymount /drive1/421/install/cd4 /WEA/new/cd4
mymount /drive1/421/install/cd5 /WEA/new/cd5
mymount /drive1/421/install/cd6 /WEA/new/cd6
mymount /drive1/421/install/cd7 /WEA/new/cd7
mymount /drive1/421/install/cd8 /WEA/new/cd8
mymount /drive1/421/install/cd9 /WEA/new/cd9