Index: openacs-4/packages/acs-core-docs/www/openacs.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/openacs.adp,v diff -u -N -r1.4.2.9 -r1.4.2.10 --- openacs-4/packages/acs-core-docs/www/openacs.adp 27 Apr 2022 16:52:20 -0000 1.4.2.9 +++ openacs-4/packages/acs-core-docs/www/openacs.adp 13 Jul 2023 12:43:21 -0000 1.4.2.10 @@ -1,11 +1,11 @@ -{/doc/acs-core-docs {ACS Core Documentation}} {Install OpenACS 5.9.0} +{/doc/acs-core-docs/ {ACS Core Documentation}} {Install OpenACS 5.9.0} Install OpenACS 5.9.0

@@ -63,7 +63,8 @@ /var/lib/aolserver, one subdirectory per site. The first time you install an OpenACS site on a server, you must create the parent directory and set its -permissions:

[root root]# mkdir /var/lib/aolserver
+permissions:

+[root root]# mkdir /var/lib/aolserver
 [root root]# chgrp web /var/lib/aolserver
 [root root]# chmod 770 /var/lib/aolserver
 [root root]#
@@ -84,7 +85,8 @@
 cvs tree, at /etc/install. Use anonymous CVS checkout to get that
 directory in the home directory of the service's dedicated
 user. We put it there so that it is not overwritten when we do the
-main CVS checkout to the target location.

[root root]# su - $OPENACS_SERVICE_NAME
+main CVS checkout to the target location.

+[root root]# su - $OPENACS_SERVICE_NAME
 
 [$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ cvs -d :pserver:anonymous\@cvs.openacs.org:/cvsroot co -d install openacs-4/etc/install
 cvs server: Updating install
@@ -105,7 +107,8 @@
 just want to rebuild it (drop and recreate the database and repeat
 the installation). If you have followed a stock installation, the
 default configuration will work without changes and will install an
-OpenACS site at 127.0.0.1:8000.

Run the install script install.sh as root:

[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ exit 
+OpenACS site at 127.0.0.1:8000.

Run the install script install.sh as root:

+[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ exit 
 [root root]# sh /home/$OPENACS_SERVICE_NAME/install/install.sh
 /home/$OPENACS_SERVICE_NAME/install/install.sh: Starting installation with config_file 
 /home/$OPENACS_SERVICE_NAME/install/install.tcl. Using serverroot=/var/lib/aolserver/
@@ -118,8 +121,9 @@
 admin email   : admin\@yourserver.net
 admin password: xxxx
 ######################################################################
-[root root]#

You can proceed to the section -called “Next Steps”.

+[root root]# +

You can proceed to the section +called “Next Steps”.

Installation Option 2: Install from @@ -137,7 +141,8 @@ $OPENACS_SERVICE_NAME to a colon: chown -R $OPENACS_SERVICE_NAME:$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME -

[root root]# su - $OPENACS_SERVICE_NAME
+

+[root root]# su - $OPENACS_SERVICE_NAME
 
 [$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ cd /var/lib/aolserver
 [$OPENACS_SERVICE_NAME aolserver]$ tar xzf /var/tmp/openacs-5.9.0.tgz
@@ -170,35 +175,44 @@
 
  • Prepare Oracle for -OpenACS. If you won't be using Oracle, skip to -Prepare PostgreSQL for +OpenACS. If you won't be using Oracle, +skip to Prepare PostgreSQL for an OpenACS Service

    You should be sure that your user account (e.g. $OPENACS_SERVICE_NAME) is in the dba group.

    1. -

      Verify membership by typing groups when you login:

      [$OPENACS_SERVICE_NAME ~]$ groups
      -dba web

      If you do not see these groups, take the following action:

      [$OPENACS_SERVICE_NAME ~]$ su -
      +

      Verify membership by typing groups when you login:

      +[$OPENACS_SERVICE_NAME ~]$ groups
      +dba web
      +

      If you do not see these groups, take the following action:

      +[$OPENACS_SERVICE_NAME ~]$ su -
       Password: ************
       [root ~]# adduser $OPENACS_SERVICE_NAME dba
       

      If you get an error about an undefined group, then add that -group manually:

      [root ~]# groupadd dba
      +group manually:

      +[root ~]# groupadd dba
       [root ~]# groupadd web
       

      Make sure to logout as root when you are finished with this step and log back in as your regular user.

    2. -

      Connect to Oracle using svrmgrl and login:

      [$OPENACS_SERVICE_NAME ~]$ svrmgrl
      +

      Connect to Oracle using svrmgrl and login:

      +[$OPENACS_SERVICE_NAME ~]$ svrmgrl
       SVRMGR> connect internal
      -Connected.
      +Connected. +
    3. -

      Determine where the system tablespaces are stored:

      SVRMGR> select file_name from dba_data_files;
      -

      Example results:

      /ora8/m01/app/oracle/oradata/ora8/system01.dbf
      +

      Determine where the system tablespaces are stored:

      +SVRMGR> select file_name from dba_data_files;
      +

      Example results:

      +/ora8/m01/app/oracle/oradata/ora8/system01.dbf
       /ora8/m01/app/oracle/oradata/ora8/tools01.dbf
       /ora8/m01/app/oracle/oradata/ora8/rbs01.dbf
       /ora8/m01/app/oracle/oradata/ora8/temp01.dbf
       /ora8/m01/app/oracle/oradata/ora8/users01.dbf
       /ora8/m01/app/oracle/oradata/ora8/indx01.dbf
      -/ora8/m01/app/oracle/oradata/ora8/drsys01.dbf
      +/ora8/m01/app/oracle/oradata/ora8/drsys01.dbf +
    4. Using the above output, you should determine where to store your tablespace. As a general rule, you'll want to store your tablespace on a mount point under the /ora8 directory that is separate from the @@ -219,15 +233,17 @@ [root ~]# chown $OPENACS_SERVICE_NAME:web /ora8/m02/oradata/ora8 [root ~]# chmod 775 /ora8/m02/oradata/ora8 [root ~]# exit -[$OPENACS_SERVICE_NAME ~]$

  • +[$OPENACS_SERVICE_NAME ~]$ +
  • Create a tablespace for the service. It is important that the tablespace can autoextend. This allows the tablespace's storage capacity to grow as the size of the data grows. We set the pctincrease to be a very low value so that our extents won't grow geometrically. We do not set it to 0 at the tablespace level because this would affect Oracle's -ability to automatically coalesce free space in the tablespace.

    [$OPENACS_SERVICE_NAME ~]$ svrmgrl
    +ability to automatically coalesce free space in the tablespace.

    +[$OPENACS_SERVICE_NAME ~]$ svrmgrl
     SVRMGR> connect internal;
     SVRMGR> create tablespace $OPENACS_SERVICE_NAME
           datafile '/ora8/m02/oradata/ora8/$OPENACS_SERVICE_NAME01.dbf' 
    @@ -254,10 +270,12 @@
     SVRMGR> exit;
     

    Your table space is now ready. In case you are trying to delete a previous OpenACS installation, consult these commands in -the section called “Deleting a -tablespace” below.

    +the section called +“Deleting a tablespace” +below.

  • -

    Make sure that you can login to Oracle using your service_name account:

    [$OPENACS_SERVICE_NAME ~]$ sqlplus $OPENACS_SERVICE_NAME/$OPENACS_SERVICE_NAMEpassword
    +

    Make sure that you can login to Oracle using your service_name account:

    +[$OPENACS_SERVICE_NAME ~]$ sqlplus $OPENACS_SERVICE_NAME/$OPENACS_SERVICE_NAMEpassword
     
     SQL> select sysdate from dual;
     SYSDATE
    @@ -267,8 +285,9 @@
     

    You should see today's date in a format 'YYYY-MM-DD.' If you can't login, try redoing step 1 again. If the date is in the wrong format, make sure you followed -the steps outlined in the section called “Troubleshooting -Oracle Dates” +the steps outlined in the section called +“Troubleshooting Oracle +Dates”

  • @@ -285,20 +304,23 @@ if one exists. We currently use postgres "super-users" for everything, which means that anyone with access to any of the OpenACS system accounts on a machine has full access to all -postgresql databases on that machine.

    [root root]# su - postgres
    +postgresql databases on that machine.

    +[root root]# su - postgres
     [postgres pgsql]$ createuser -a -d $OPENACS_SERVICE_NAME
     
     CREATE USER
     [postgres pgsql]$ exit
     logout
    -[root root]#
    +[root root]# +
  • Create a database with the same name as our service name, $OPENACS_SERVICE_NAME. The full pathname for createdb needs to be used, since the pgsql directory has not been added to the -$OPENACS_SERVICE_NAME bash profile.

    [root root]# su - $OPENACS_SERVICE_NAME
    +$OPENACS_SERVICE_NAME bash profile.

    +[root root]# su - $OPENACS_SERVICE_NAME
     
     [$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ /usr/local/pgsql/bin/createdb -E UNICODE $OPENACS_SERVICE_NAME
     
    @@ -314,14 +336,16 @@
     automate vacuuming is to edit the cron file for the database user.
     Recommended: VACUUM ANALYZE
     every hour and VACUUM FULL
    -ANALYZE every day.

    [$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ export EDITOR=emacs;crontab -e
    +ANALYZE every day.

    +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ export EDITOR=emacs;crontab -e
     

    Add these lines to the file. The vacuum command cleans up -temporary structures within a PostGreSQL database, and can improve +temporary structures within a PostgreSQL database, and can improve performance. We vacuum gently every hour and completely every day. The numbers and stars at the beginning are cron columns that specify when the program should be run - in this case, whenever the minute is 0 and the hour is 1, i.e., 1:00 am every day, and every -(*) day of month, month, and day of week. Type man 5 crontab for more information.

    0 1-23 * * * /usr/local/pgsql/bin/vacuumdb --analyze $OPENACS_SERVICE_NAME
    +(*) day of month, month, and day of week. Type man 5 crontab for more information.

    +0 1-23 * * * /usr/local/pgsql/bin/vacuumdb --analyze $OPENACS_SERVICE_NAME
     0 0 * * * /usr/local/pgsql/bin/vacuumdb --full --analyze $OPENACS_SERVICE_NAME
     

    Depending on your distribution, you may receive email when the crontab items are executed. If you don't want to receive email @@ -346,7 +370,8 @@ specific port, e.g. port 80. In order for OpenACS to work, you need to configure a virtual server. The Reference Platform uses a configuration file included in the OpenACS tarball, /var/lib/aolserver/$OPENACS_SERVICE_NAME/etc/config.tcl. -Open it in an editor to adjust the parameters.

    [root root]# su - $OPENACS_SERVICE_NAME
    +Open it in an editor to adjust the parameters.

    +[root root]# su - $OPENACS_SERVICE_NAME
     
     [$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ cd /var/lib/aolserver/$OPENACS_SERVICE_NAME/etc
     [$OPENACS_SERVICE_NAME etc]$ emacs config.tcl
    @@ -420,11 +445,13 @@
     indicated in the comments.

    If you are root then killall will affect all OpenACS services on the machine, so if there's more than one you'll have to do ps -auxw | grep nsd and -selectively kill by job number.

    [$OPENACS_SERVICE_NAME etc]$ killall nsd
    +selectively kill by job number.

    +[$OPENACS_SERVICE_NAME etc]$ killall nsd
     nsd: no process killed
     [$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ /usr/local/aolserver/bin/nsd-postgres -t /var/lib/aolserver/$OPENACS_SERVICE_NAME/etc/config.tcl
     [$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ [08/Mar/2003:18:13:29][32131.8192][-main-] Notice: nsd.tcl: starting to read config file...
    -[08/Mar/2003:18:13:29][32131.8192][-main-] Notice: nsd.tcl: finished reading config file.
    +[08/Mar/2003:18:13:29][32131.8192][-main-] Notice: nsd.tcl: finished reading config file. +
  • @@ -449,8 +476,8 @@

  • Configure a Service with the OpenACS -Installer.  Now that you've got AOLserver up and -running, let's install OpenACS 5.9.0.

      +Installer.  Now that you've got AOLserver +up and running, let's install OpenACS 5.9.0.

      • You should see a page from the webserver titled OpenACS Installation: Welcome. You will be warned if your version of the database driver is out of date, if AOLserver cannot connect to the database, if any modules are @@ -462,7 +489,8 @@ data model - be prepared to wait a few minutes as it works. You should see a string of output messages from the database as the datamodel is created. You'll see the line:

        -Loading package .info files ... this will take a few minutes

        This will really take a few minutes. Have faith! Finally, +Loading package .info files ... this will take a few minutes +

        This will really take a few minutes. Have faith! Finally, another Next button will appear at the bottom - click it.

      • The following page shows the results of loading the core package @@ -482,7 +510,8 @@ being restarted; note that unless you already set up a way for AOLserver to restart itself (i.e. inittab or daemontools), you'll need to manually restart your -service.

        [$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ /usr/local/aolserver/bin/nsd-postgres -t /var/lib/aolserver/$OPENACS_SERVICE_NAME/config.tcl
        +service.

        +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ /usr/local/aolserver/bin/nsd-postgres -t /var/lib/aolserver/$OPENACS_SERVICE_NAME/config.tcl
         
      • Give the server a few minutes to start up. Then reload the final page above. You should see the front page, with an area to login @@ -515,37 +544,43 @@ backups.

      • If you want traffic reports, set up analog or another log processing program.

      • Follow the instruction on the home page to change the appearance of your service or add more packages. (more -information)

      • Proceed to the tutorial to learn -how to develop your own packages.

      • +information)

      • Proceed to the tutorial +to learn how to develop your own packages.

      • Set up database environment variables for the site user. -Depending on how you installed Oracle or PostGreSQL, these settings +Depending on how you installed Oracle or PostgreSQL, these settings may be necessary for working with the database while logged in as the service user. They do not directly affect the service's run-time connection with the database, because those environmental variables are set by the wrapper scripts nsd-postgres and -nsd-oracle.

        [root root]# su - $OPENACS_SERVICE_NAME
        +nsd-oracle.

        +[root root]# su - $OPENACS_SERVICE_NAME
         
         [$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ emacs .bashrc
         

        Put in the appropriate lines for the database you are running. If you will use both databases, put in both sets of lines.

        • -

          PostgreSQL:

          export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/pgsql/lib
          -export PATH=$PATH:/usr/local/pgsql/bin
          +

          PostgreSQL:

          +export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/pgsql/lib
          +export PATH=$PATH:/usr/local/pgsql/bin
          +
        • Oracle. These environment variables are specific for a local Oracle installation communicating via IPC. If you are connecting to a remote Oracle installation, you'll need to adjust these appropriately. Also, make sure that the '8.1.7' matches -your Oracle version.

          export ORACLE_BASE=/ora8/m01/app/oracle
          +your Oracle version.

          +export ORACLE_BASE=/ora8/m01/app/oracle
           export ORACLE_HOME=$ORACLE_BASE/product/8.1.7
           export PATH=$PATH:$ORACLE_HOME/bin
           export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
           export ORACLE_SID=ora8
           export ORACLE_TERM=vt100
          -export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
          +export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data +

        Test this by logging out and back in as $OPENACS_SERVICE_NAME and -checking the paths.

        [$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ exit
        +checking the paths.

        +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ exit
         logout
         [root src]# su - $OPENACS_SERVICE_NAME
         
        @@ -555,23 +590,27 @@
         

        For PostgreSQL, you should see:

         LD_LIBRARY_PATH=:/usr/local/pgsql/lib
         PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/usr/bin/X11:/usr/X11R6/bin:\
        -  /root/bin:/usr/local/pgsql/bin:/usr/local/pgsql/bin
        + /root/bin:/usr/local/pgsql/bin:/usr/local/pgsql/bin +
      • -

        For Oracle:

        ORACLE_BASE=/ora8/m01/app/oracle
        +

        For Oracle:

        +ORACLE_BASE=/ora8/m01/app/oracle
         ORACLE_HOME=/ora8/m01/app/oracle/product/8.1.7
         PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/usr/bin/X11:/usr/X11R6/bin:\
           /root/bin:/ora8/m01/app/oracle/product/8.1.7/bin
         LD_LIBRARY_PATH=/ora8/m01/app/oracle/product/8.1.7/lib:/lib:/usr/lib
         ORACLE_SID=ora8
         ORACLE_TERM=vt100
        -ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
        +ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data +
      -
    • Test your backup and recovery -procedure.

    • Set up the section called “External uptime -validation”.

    • -
    ($‌Id: openacs.xml,v 1.33.2.2 2021/09/02 -16:56:02 gustafn Exp $)
    +
  • Test your backup and +recovery procedure.

  • Set up the section called +“External uptime +validation”.

  • +
    ($‌Id: openacs.xml,v 1.33.2.3 2021/10/05 +07:01:20 gustafn Exp $)