Index: openacs-4/packages/acs-core-docs/www/quick.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/Attic/quick.html,v diff -u -r1.1 -r1.2 --- openacs-4/packages/acs-core-docs/www/quick.html 28 Jun 2003 05:20:44 -0000 1.1 +++ openacs-4/packages/acs-core-docs/www/quick.html 20 Aug 2003 16:20:16 -0000 1.2 @@ -9,6 +9,223 @@ installation in under an hour. It excludes source control, full text search, ssl, managed services (daemontools), DocBook, and qmail. -

For Red Hat 9

  1. Install PostGreSQL 7.3.2 from RPM. Select +

For Red Hat 9

  1. Install PostGreSQL 7.3.2 from RPM. Select Menu > System Settings > Add/Remove - Applications and select Database Server.

  2. On the PostGreSQL page, do the Using the Red Hat RPM bullet point and step 6

  3. On the Aolserver page, do steps 1, 2, and 3

  4. In the section called “Set up the file system for an OpenACS Service” on the OpenACS page, do steps 1, 2, 3, and 4

  5. In the section called “Prepare PostgreSQL for an OpenACS Service”, do steps 1, 2, and 5

  6. In the section called “Configure an AOLserver Service for OpenACS”, do 1

  7. Browse to http://localhost:8000. If you see a page like this, proceed with Using the OpenACS Installer. If not, look at 2 for troubleshooting information.

After completing installation and restarting the server, go to http://localhost:8000 for configuration and customization instructions. You can upgrade a Quick Install with source control, full text search, backup/recovery, and other production features by walking through the Installation documentation and doing the steps marked OPTIONAL.

($Id$)
View comments on this page at openacs.org
+ Applications and select Database Server.

  • Using the Red Hat RPM.�Red Hat users: If you install PostGreSQL 7.3.2 from the Red Hat 9 RPM, you + can skip a few steps. These shell commands add a link so that the + data directory appears to be in the same place as in a source + install; start the service; create a new group for web service + users, and modify the postgres user's + environment (more + information):

  • Install Pl/pgSQL.�Set up plpgsq and allow your user to have + access. Plpgsql is a PL/SQL-like language. We add it to + template1, which is the template from which all new + databases are created. We can verify that it was created + with the createlang command in list mode.

    [postgres@yourserver pgsql]$ createlang plpgsql template1
    +[postgres@yourserver pgsql]$ createlang -l template1
    +Procedural languages
    +  Name   | Trusted?
    +---------+----------
    + plpgsql | t
    +(1 row)
    +
    +[postgres@yourserver pgsql]$
    +
    createlang plpgsql template1
    +createlang -l template1
  • Unpack the Aolserver tarball.�Download the aolserver tarball to /tmp/aolserver3.3oacs1.tar.gz. As root, untar + aolserver3.3oacs1.tar.gz + into /usr/local/src. +

    [root@yourserver root]# cd /usr/local/src
    +[root@yourserver src]# tar xzf /tmp/aolserver3.3oacs1.tar.gz
    +[root@yourserver src]#
    +
    cd /usr/local/src
    +tar xzf /tmp/aolserver3.3oacs1.tar.gz
  • Compile AOLserver.�Compile and install AOLserver. First, prepare the installation directory and the source code. The message about BUILD-MODULES can be ignored.

    root@yourserver root]# mkdir -p /usr/local/aolserver
    +[root@yourserver root]# cd /usr/local/src/aolserver
    +[root@yourserver aolserver]# ./conf-clean
    +cat: BUILD-MODULES: No such file or directory
    +Done.
    +[root@yourserver aolserver]#
    mkdir -p /usr/local/aolserver
    +cd /usr/local/src/aolserver
    +./conf-clean

    + If you are using Oracle, edit + conf-db and change + postgresql to + oracle, or to the word + both if you want both drivers + installed. In order to get nsoracle to compile, you may + need to su - oracle, and then su (without the -) root to set + the environment variables properly. +

    conf-inst should contain the + location where AOLserver is to be installed. Overwrite the + tarball's default value with our default value, /usr/local/aolserver:

    [root@yourserver aolserver]# echo "/usr/local/aolserver" > conf-inst
    +[root@yourserver aolserver]#

    conf-make should contain the + name of the GNU Make command on your system. It defaults to + gmake.

    Set an environment variable that the nspostgres driver + Makefile needs to compile correctly and run + conf, which compiles + AOLserver, the default modules, and the database driver, and + installs them.

    (Debian Users working with AOLserver 3.3+ad13 and + postgresql from apt-get may need to + make these symlinks: ln -s + /usr/include/postgresql/ /usr/include/pgsql + and ln -s /usr/lib/postgresql /usr/local/pgsql)

    [root@yourserver aolserver]# export POSTGRES=/usr/local/pgsql; ./conf
    +Building in /usr/local/aolserver
    +with the following modules:
    +aolserver
    +nscache
    +nsrewrite
    +nssha1
    +nsxml
    +pgdriver
    +==================================================================
    +Starting Build Sat Mar  8 10:28:26 PST 2003
    +Running gmake in aolserver/; output in log/aolserver.log
    +(several minute delay here)
    +Running gmake in nscache/; output in log/nscache.log
    +Running gmake in nsrewrite/; output in log/nsrewrite.log
    +Running gmake in nssha1/; output in log/nssha1.log
    +Running gmake in nsxml/; output in log/nsxml.log
    +Running gmake in nspostgres/; output in log/nspostgres.log
    +Creating  ...
    +==================================================================
    +Done Building Sat Mar  8 10:31:35 PST 2003
    +[root@yourserver aolserver]# 

    + This takes about 5 minutes. It builds aolserver, several modules, and the database driver. (Upgraders, note that the postgres database driver has changed from postgres.so to nspostgres.so). All of the results are logged to files in /usr/local/src/aolserver/log. If you run into problems running AOLserver, check these files for build errors.

  • Add a database-specific wrapper script.�This script + sets database environment variables before starting + AOLserver; this allows the AOLserver instance can + communicate with the database. There is one script each for + Oracle and PostGreSQL. They don't conflict, so if you plan + to use both databases, install both.

  • The reference install stores all OpenACS services in + /web, with one subdirectory per + service. The first time you install a service, you must create + that directory and set its permissions:

    [root@yourserver root]# mkdir /web
    +[root@yourserver root]# chgrp web /web
    +[root@yourserver root]# chmod 770 /web
    +[root@yourserver root]#
    +
    mkdir /web
    +chgrp web /web
    +chmod 770 /web
  • You should already have downloaded the OpenACS tarball + to the /tmp directory. If + not, download the OpenACS + tarball and save it in + /tmp and proceed:

  • Set up your user account.

    + AOLserver needs to be started as the root user if you want to use + port 80. Once it starts, though, it will drop the root privileges and + run as another user, which you must specify on the command line. It's + important that this user has as few privileges as possible. Why? + Because if an intruder somehow breaks in through AOLserver, you don't + want her to have any ability to do damage to the rest of your + server.

    At the same time, AOLserver needs to have write access to + some files on your system in order for OpenACS to function + properly. So, we'll run AOLserver with a different user account + for each 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 "service0" might be the service name for the + service0.net + community.

    For the 5.0.0d-P and 5.0.0d-O Reference Platform, + we'll use a server named service0 and + a user named service0. We'll leave the password + blank 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 web group so that it + can use database commands associated with that group. +

    [root@yourserver root]# useradd -g web service0 -d /home/service0
    +[root@yourserver root]#

    Set up database environment variables. They are + necessary for working with the database. +

    [root@yourserver root]# su - service0
    +[service0@yourserver service0]$ 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.

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

    [service0@yourserver service0]$ exit
    +logout
    +[root@yourserver src]# su - service0
    +[postgres@yourserver pgsql]$ env | grep PATH
    +

    For PostGreSQL, you should see:

    +LD_LIBRARY_PATH=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

    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
    [service0@yourserver service0]$ exit
    +logout
    +
    +[root@yourserver root]#
  • Unpack the OpenACS tarball and rename it to service0. Secure the directory so that only the owner can access it. Check the permissions by listing the directory.

    [root@yourserver root]# su - service0
    +[service0@yourserver service0]$ cd /web
    +[service0@yourserver web]$ tar xzf /tmp/openacs-5.0.0d.tgz
    +[service0@yourserver web]$ mv openacs-5.0.0d service0
    +[service0@yourserver web]$ chmod -R 700 service0
    +[service0@yourserver web]$ ls -al
    +total 3
    +drwxrwx---    3 root     web          1024 Mar 29 16:41 .
    +drwxr-xr-x   25 root     root         1024 Mar 29 16:24 ..
    +drwx------    7 service0 web          1024 Jan  6 14:36 service0
    +[service0@yourserver web]$ exit
    +logout
    +
    +[root@yourserver root]#
    +
    su - service0
    +cd /web
    +tar xzf /tmp/openacs-5.0.0d.tgz
    +mv openacs-5.0.0d service0
    +chmod -R 700 service0/
    +exit
  • Create a user in the database matching the service name.

    [root@yourserver root]# su - postgres
    +[postgres@yourserver pgsql]$ createuser service0
    +Shall the new user be allowed to create databases? (y/n) y
    +Shall the new user be allowed to create more new users? (y/n) y
    +CREATE USER
    +[postgres@yourserver pgsql]$ exit
    +logout
    +
    +[root@yourserver root]#
  • Create a database with the same name as our service name, service0.

    [root@yourserver root]# su - service0
    +[service0@yourserver service0]$ createdb -E UNICODE service0
    +CREATE DATABASE
    +[service0@yourserver service0]$
    +
    su - service0
    +createdb -E UNICODE service0
  • [service0@yourserver service0]$ exit
    +logout
    +
    +[root@yourserver root]# 
  • + Kill any current running AOLserver processes and start a new + one. If you are using Oracle, rather than PostgreSQL, replace + nsd-postgres with + nsd-oracle).

    If you want to use port 80, there are complications. + First, Aolserver must be root to use system ports such as + 80, but refuses to run as root for security reasons. Thus + you must start 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 + service0 user via + grep service0 + /etc/passwd and then put those numbers into + the command line via -u + 501 -g + 502. Second, 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.

    [service0@yourserver etc]$ killall nsd
    +nsd: no process killed
    +[service0@yourserver service0]$ /usr/local/aolserver/bin/nsd-postgres -t /web/service0/etc/config.tcl
    +[service0@yourserver service0]$ [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.
  • After completing installation and restarting the server, go to http://localhost:8000 for configuration and customization instructions. You can upgrade a Quick Install with source control, full text search, backup/recovery, and other production features by walking through the Installation documentation and doing the steps marked OPTIONAL.

    ($Id$)
    View comments on this page at openacs.org