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 -r1.4 -r1.5 --- openacs-4/packages/acs-core-docs/www/openacs.adp 25 Apr 2018 08:38:28 -0000 1.4 +++ openacs-4/packages/acs-core-docs/www/openacs.adp 3 Sep 2024 15:37:32 -0000 1.5 @@ -1,16 +1,23 @@ -{/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 +

-Install OpenACS 5.9.0

<authorblurb>

by Vinod Kurup -

</authorblurb>
+Install OpenACS 5.9.0
+

by Vinod Kurup +

+OpenACS docs are written by the named authors, and may be edited by +OpenACS documentation staff.

Set up a user account for each site.

AOLserver needs to be started as the root user if you want to @@ -25,37 +32,36 @@ different service. A service name should be a single word, letters and numbers only. If the name of your site is one word, that would be a good choice. For -example "$OPENACS_SERVICE_NAME" might -be the service name for the $OPENACS_SERVICE_NAME.net +example "$OPENACS_SERVICE_NAME" might be +the service name for the $OPENACS_SERVICE_NAME.net community.

We'll leave the password blank, which prevents login by password, for increased security. The only way to log in will be with ssh certificates. The only people who should log in are developers for that specific instance. Add this user, and put it in -the $OPENACS_SERVICE_NAME group -so that it can use database and server commands associated with -that group. (If you don't know how to do this, type -man usermod. You -can type groups to -find out which groups a user is a part of)

-[root root]# useradd $OPENACS_SERVICE_NAME
+the $OPENACS_SERVICE_NAME group so
+that it can use database and server commands associated with that
+group. (If you don't know how to do this, type man usermod. You can type
+groups to find out
+which groups a user is a part of)

+[root root]# useradd $OPENACS_SERVICE_NAME
 
 

You also need to set up a group called web.

 [root root]# groupadd web
 

Then change the user to be a part of this group:

-[root root]# usermod -g web $OPENACS_SERVICE_NAME
+[root root]# usermod -g web $OPENACS_SERVICE_NAME
 
 

FreeBSD creates the user this way:

-[root root]# mkdir -p /home/$OPENACS_SERVICE_NAME
+[root root]# mkdir -p /home/$OPENACS_SERVICE_NAME
 
-[root root]# pw useradd -n $OPENACS_SERVICE_NAME -g web -d /home/$OPENACS_SERVICE_NAME -s /bin/bash
+[root root]# pw useradd -n $OPENACS_SERVICE_NAME -g web -d /home/$OPENACS_SERVICE_NAME -s /bin/bash
 [root root]#
-mkdir -p /home/$OPENACS_SERVICE_NAME
-pw useradd -n $OPENACS_SERVICE_NAME -g web -d /home/$OPENACS_SERVICE_NAME -s /bin/bash
-
+mkdir -p /home/$OPENACS_SERVICE_NAME
+pw useradd -n $OPENACS_SERVICE_NAME -g web -d /home/$OPENACS_SERVICE_NAME -s /bin/bash
+
 

-Set up the file system for one or more OpenACS +Set up the filesystem for one or more OpenACS Sites

For Linux Standard Base compliance and ease of backup, all of the files in each OpenACS site are stored in a subdirectory of /var/lib/aolserver, one @@ -65,9 +71,9 @@ [root root]# chgrp web /var/lib/aolserver [root root]# chmod 770 /var/lib/aolserver [root root]# -mkdir /var/lib/aolserver +mkdir /var/lib/aolserver chgrp web /var/lib/aolserver -chmod 770 /var/lib/aolserver +chmod 770 /var/lib/aolserver

@@ -82,7 +88,7 @@ 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
@@ -93,7 +99,7 @@
 U install/tcl/user-procs.tcl
 [$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ cd install
 [$OPENACS_SERVICE_NAME install]$ emacs install.tcl
-

Edit the installation configuration file, /home/$OPENACS_SERVICE_NAME/install/install.tcl +

Edit the installation configuration file, /home/$OPENACS_SERVICE_NAME/install/install.tcl and update the site-specific values, such as the new service's IP address and name, which will be written into the new service's config.tcl file. @@ -103,9 +109,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 
-[root root]# sh /home/$OPENACS_SERVICE_NAME/install/install.sh
+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/
 $OPENACS_SERVICE_NAME, server_url=http://0.0.0.0:8000, do_checkout=yes, do_install=yes, 
@@ -127,22 +132,24 @@
 download the OpenACS
 tarball and save it in /var/tmp and proceed:

  1. -

    Unpack the OpenACS tarball and rename it to $OPENACS_SERVICE_NAME. Secure the directory +

    +Unpack the OpenACS tarball and +rename it to $OPENACS_SERVICE_NAME. Secure the directory so that only the owner can access it. Check the permissions by listing the directory.

    FreeBSD note: Change the period in chown -R $OPENACS_SERVICE_NAME.$OPENACS_SERVICE_NAME $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
    -[$OPENACS_SERVICE_NAME aolserver]$ mv openacs-5.9.0 $OPENACS_SERVICE_NAME
    +[$OPENACS_SERVICE_NAME aolserver]$ mv openacs-5.9.0 $OPENACS_SERVICE_NAME
     
    -[$OPENACS_SERVICE_NAME aolserver]$ chmod -R 775 $OPENACS_SERVICE_NAME
    +[$OPENACS_SERVICE_NAME aolserver]$ chmod -R 775 $OPENACS_SERVICE_NAME
     
    -[$OPENACS_SERVICE_NAME aolserver]$ chown -R $OPENACS_SERVICE_NAME.$OPENACS_SERVICE_NAME$OPENACS_SERVICE_NAME
    +[$OPENACS_SERVICE_NAME aolserver]$ chown -R $OPENACS_SERVICE_NAME.$OPENACS_SERVICE_NAME$OPENACS_SERVICE_NAME
     
     [$OPENACS_SERVICE_NAME aolserver]$ ls -al
     total 3
    @@ -152,13 +159,13 @@
     [$OPENACS_SERVICE_NAME aolserver]$ exit
     logout
     [root root]#
    -su - $OPENACS_SERVICE_NAME
    +su - $OPENACS_SERVICE_NAME
     cd /var/lib/aolserver
     tar xzf /var/tmp/openacs-5.9.0.tgz
     mv openacs-5.9.0 $OPENACS_SERVICE_NAME
     chmod -R 755 $OPENACS_SERVICE_NAME
     chown -R $OPENACS_SERVICE_NAME.$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME
    -exit
    +exit
     
  2. Add the Service to CVS @@ -167,32 +174,29 @@

  3. Prepare Oracle for -OpenACS.  If you won't be using Oracle, skip to +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.

      +

      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 -
        +dba web

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

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

        If you get an error about an undefined group, then add that 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.
      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
        +

        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
        @@ -216,7 +220,7 @@
         [$OPENACS_SERVICE_NAME ~]$ su -
         Password: ************
         [root ~]# mkdir -p /ora8/m02/oradata/ora8/
        -[root ~]# chown $OPENACS_SERVICE_NAME:web /ora8/m02/oradata/ora8
        +[root ~]# chown $OPENACS_SERVICE_NAME:web /ora8/m02/oradata/ora8
         [root ~]# chmod 775 /ora8/m02/oradata/ora8
         [root ~]# exit
         [$OPENACS_SERVICE_NAME ~]$
        @@ -227,11 +231,10 @@ 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' 
        +SVRMGR> create tablespace $OPENACS_SERVICE_NAME
        +      datafile '/ora8/m02/oradata/ora8/$OPENACS_SERVICE_NAME01.dbf' 
               size 50M 
               autoextend on 
               next 10M
        @@ -241,25 +244,24 @@
         
      4. Create a database user for this service. Give the user access to -the tablespace and rights to connect. We'll use $OPENACS_SERVICE_NAMEpassword -as our password.

        Write down what you specify as service_name (i.e. $OPENACS_SERVICE_NAME) and +the tablespace and rights to connect. We'll use $OPENACS_SERVICE_NAMEpassword as +our password.

        Write down what you specify as service_name (i.e. $OPENACS_SERVICE_NAME) and database_password (i.e. -$OPENACS_SERVICE_NAMEpassword). +$OPENACS_SERVICE_NAMEpassword). You will need this information for configuring exports and AOLserver.

        -SVRMGR> create user $OPENACS_SERVICE_NAME identified by $OPENACS_SERVICE_NAMEpassword default tablespace $OPENACS_SERVICE_NAME
        -    temporary tablespace temp quota unlimited on $OPENACS_SERVICE_NAME;
        -SVRMGR> grant connect, resource, ctxapp, javasyspriv, query rewrite to $OPENACS_SERVICE_NAME;
        -SVRMGR> revoke unlimited tablespace from $OPENACS_SERVICE_NAME;
        -SVRMGR> alter user $OPENACS_SERVICE_NAME quota unlimited on $OPENACS_SERVICE_NAME;
        +SVRMGR> create user $OPENACS_SERVICE_NAME identified by $OPENACS_SERVICE_NAMEpassword default tablespace $OPENACS_SERVICE_NAME
        +    temporary tablespace temp quota unlimited on $OPENACS_SERVICE_NAME;
        +SVRMGR> grant connect, resource, ctxapp, javasyspriv, query rewrite to $OPENACS_SERVICE_NAME;
        +SVRMGR> revoke unlimited tablespace from $OPENACS_SERVICE_NAME;
        +SVRMGR> alter user $OPENACS_SERVICE_NAME quota unlimited on $OPENACS_SERVICE_NAME;
         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.

      5. -

        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
        @@ -280,77 +282,80 @@
         for an OpenACS Service. 
         

        • -

          PostgreSQL:

          Create a user in the database matching the service name. With +

          +PostgreSQL:

          Create a user in the database matching the service name. With default PostgreSQL authentication, a system user connecting locally automatically authenticates as the postgres user of the same name, 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
          -[postgres pgsql]$ createuser -a -d $OPENACS_SERVICE_NAME
          +[postgres pgsql]$ createuser -a -d $OPENACS_SERVICE_NAME
           
           CREATE USER
           [postgres pgsql]$ exit
           logout
           [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
          +

          +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 $OPENACS_SERVICE_NAME]$ /usr/local/pgsql/bin/createdb -E UNICODE $OPENACS_SERVICE_NAME
          +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ /usr/local/pgsql/bin/createdb -E UNICODE $OPENACS_SERVICE_NAME
           
           CREATE DATABASE
           [$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$
          -su - $OPENACS_SERVICE_NAME
          -/usr/local/pgsql/bin/createdb -E UNICODE $OPENACS_SERVICE_NAME
          -
          +su - $OPENACS_SERVICE_NAME
          +/usr/local/pgsql/bin/createdb -E UNICODE $OPENACS_SERVICE_NAME
          +
           
        • Automate daily database Vacuuming. This is a process which cleans out discarded data from the database. A quick way to 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
          -0 0 * * * /usr/local/pgsql/bin/vacuumdb --full --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 for those crontab items, you can add > /dev/null 2>&1 to the end of each crontab line

        • Add Full Text Search Support -(OPTIONAL)

        • At this point the database should be ready for installing -OpenACS.

        • +(OPTIONAL)

        • + At this point +the database should be ready for installing OpenACS.

    1. Configure an AOLserver Service for OpenACS. 

      1. -

        The AOLserver architecture lets you run an arbitrary number of +

        + +The AOLserver architecture lets you run an arbitrary number of virtual servers. A virtual server is an HTTP service running on a 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
        +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
         
        -[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ cd /var/lib/aolserver/$OPENACS_SERVICE_NAME/etc
        +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ cd /var/lib/aolserver/$OPENACS_SERVICE_NAME/etc
         [$OPENACS_SERVICE_NAME etc]$ emacs config.tcl
         

        You can continue without changing any values in the file. -However, if you don't change address to match the computer's ip +However, if you don't change address to match the computer's IP address, you won't be able to browse to your server from other machines.

        • @@ -372,7 +377,7 @@ keyword that, by convention, identifies the service. It is also used as part of the path for the service root, as the name of the user for running the service, as the name of the database, and in -various dependent places. The Reference Platform uses $OPENACS_SERVICE_NAME.

        • +various dependent places. The Reference Platform uses $OPENACS_SERVICE_NAME.

        • db_name - In almost all cases, this can be kept as a reference to $server. If for some reason, the tablespace you are using is different than your @@ -397,38 +402,43 @@

        • Verify AOLserver startup. 

          1. -

            Kill any current running AOLserver processes and start a new -one. The recommended way to start an AOLserver process is by -running the included script, /var/lib/aolserver/$OPENACS_SERVICE_NAME/etc/daemontools/run. +

            + Kill any +current running AOLserver processes and start a new one. The +recommended way to start an AOLserver process is by running the +included script, /var/lib/aolserver/$OPENACS_SERVICE_NAME/etc/daemontools/run. If you are not using the default file paths and names, you will need to edit run.

            If you want to use port 80, there are complications. AOLserver must be root to use system ports such as 80, but refuses to run as root for security reasons. So, we call the run script as root and specify a non-root user ID and Group ID which AOLserver will switch to after claiming the port. To do so, find the UID and GID of the -$OPENACS_SERVICE_NAME -user via grep $OPENACS_SERVICE_NAME +$OPENACS_SERVICE_NAME user via +grep $OPENACS_SERVICE_NAME /etc/passwd and then put those numbers into the command line -via -u 501 -g 502 -. In AOLserver 4, you -must also send a -b flag. Do -this by editing the run file as +via -u 501 -g +502 +. In AOLserver 4, you must +also send a -b flag. Do this by +editing the run file as 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
             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]$ /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.
          2. -

            Attempt to connect to the service from a web browser. You should -specify a URL like: http://yourserver.test:8000 +

            + +Attempt to connect to the service from a web browser. You should +specify a URL like: http://yourserver.test:8000

            You should see a page that looks like this. If you imported your files into cvs, now that you know it worked you can erase the temp directory with rm -rf /var/lib/aolserver/$OPENACS_SERVICE_NAME.orig.

            If you don't see the login page, view your error log -(/var/lib/aolserver/$OPENACS_SERVICE_NAME/log/$OPENACS_SERVICE_NAME-error.log) +(/var/lib/aolserver/$OPENACS_SERVICE_NAME/log/$OPENACS_SERVICE_NAME-error.log) to make sure the service is starting without any problems. The most common errors here are trying to start a port 80 server while not root, failing to connect because of a firewall, and AOLserver @@ -474,10 +484,9 @@

            You'll see the final Installer page, "OpenACS Installation: Complete." It will tell you that the server is being restarted; note that unless you already set up a way for -AOLserver to restart itself (ie. inittab or +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
             
          3. 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 @@ -513,38 +522,36 @@ information)

          4. Proceed to the tutorial to learn how to develop your own packages.

          5. 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
              +

              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
              -export ORACLE_HOME=$ORACLE_BASE/product/8.1.7
              +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
            • -

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

            -[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ exit
            +

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

        [$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ exit
         logout
        -[root src]# su - $OPENACS_SERVICE_NAME
        +[root src]# su - $OPENACS_SERVICE_NAME
         
         [$OPENACS_SERVICE_NAME ~]$ env
         

        ($‌Id: openacs.xml,v 1.32 2017/08/07 -23:47:55 gustafn Exp $)

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